Brainstorm for RFC: Assimilate home-manager into Nixpkgs monorepo

Hi,

Sorry for the delay in responding. I have nothing against this if you (or somebody else) is willing to work on the integration. I can certainly help out with getting the preparatory changes into the Home Manager repository, for example, by switching over to the RFC code format style. Unfortunately I can’t help much with the actual integration into Nixpkgs since I haven’t kept up very well with recent changes in Nixpkgs. One concern would be to maintain support for all three deployment methods, standalone, NixOS, and nix-darwin (btw. will nix-darwin also be merged into Nixpkgs?).

My personal concern is that Nixpkgs is very large and cumbersome to work with, e.g., making it impossible to use conveniences such as Magit Forge. This is a pretty insignificant complaint, though, I’m guessing most others have a more reasonable workflow that are not so sensitive to the GitHub project size :slightly_smiling_face:

On a more bureaucratic note, Home Manager has some rudimentary i18n support and the translation is managed in a Weblate project. Should this project also be moved over to an overall NixOS project?

Similarly, some time ago I registered the domain home-manager.dev, and host a basic site at https://home-manager.dev/. Should this domain be moved to the NixOS Foundation? Perhaps discontinued entirely?

15 Likes

Given the recent intervention of Rycee, I think I will defend a hybrid approach.

No problem.

Well, I think we can work around this.
The idea is to employ a hybrid approach, in which we migrate things bit by bit, instead of grafting the whole pristine Home-Manager tree.

Given that you are the current maintainer, you can help a lot as a consultant about the code.

Indeed the large size of Nixpkgs imposes huge challenges for any porcelain:

Maybe we can talk with the developers of Emacs Magit about this?

Yes, most certainly! This can and should be expanded to the whole Nixpkgs repo too.

What about aliasing it to, say, https://home-manager.nixos.org/?

5 Likes

Sure, I’ll help out in any way I can within my time constraints.

No worries, this is not a blocker and I’ll adjust my flow as needed.

That said, the bigger picture about Nixpkgs size is that it is downloaded an enormous number of times per day and I suspect the intent behind most downloads is simply to access a few packages. With Home Manager included it would make these downloads larger without adding any benefit. To get an idea of the size of HM: Downloading the repository as a ZIP file produces a file about 1.5MiB in size. This is small compared to Nixpkgs’ 65MiB but not nothing…

That sounds good. Overall the i18n situation is pretty bad in the overall Nix ecosystem so I think and movement here would be good.

That is fine for me.

6 Likes