4 ms·
The Guix way moves more contribution upstream (it's very easy to get your PR accepted) and less people having their own untested "PPAs" everywhere. People have
by medstrom 5y ago
The Guix way moves more contribution upstream (it's very easy to get your PR accepted) and less people having their own untested "PPAs" everywhere. People have this image that having a private channel is simpler/faster somehow as it skips hoops but in Guix it's just not true (what hoops?). You can submit PR after PR after PR for something only you would ever care about.
The main reason not to is when you want to keep your codebase secret, right? Composible modules are certainly another solution. I don't know what's ultimately best but I think we could perhaps make it easier to pin a specific Guix revision. Perhaps require it. It already runs different versions of itself so often, it's part of the way it should work.
- mrslave 5y ago> less people having their own untested "PPAs" everywhere This is not my experience with Nix. 1. My system configuration pulls in a couple of programs in from unstable for my convenience and it was incredibly easy. 2. I don't do any serious 3rd-party packages or package configuration at the system level. Instead, any package configuration (e.g. overrides, Docker images) and 3rd-party packages absent from Nixpkgs - usually pretty easy to write, if not trivial - are defined in the repository where they are required. They are used - and tested - and reproducable to the pinned Nixpkgs in that repository. It has been incredibly easier than PPAs and Gentoo overlays. Presumably safer too (though this is an incomplete thought). To be fair the learning curve was medium, and I didn't invest any serious effort. Instead I made progress until frustrated and asked colleagues to help a few times until I grokked it. From the perspective of a simple user, the single system configuration file is a killer feature even if you don't venture any further.
- the_duke 5y agoA system like Guix will have at least a magnitude more private manifests. Form personal shell scripts and environment configs, over team development environments to custom software. Non of that can be upstreamed. Plus the proprietary software, which also can't be upstreamed. I concur that not having a stable format is a potentially problematic design decision, not a benefit.
- medstrom 5y agoCan you explain again why it'd have more private manifests? I'm not that familiar with Nix, but don't you use scripts, configs and environments all the same?