4 ms·
Anecdotal experience deploying in the lab with NixOS and/or Nix: 1. At the time, I was maintaining several heterogenous RPM-based systems, so that was the comp
by undoware 13y ago
Anecdotal experience deploying in the lab with NixOS and/or Nix:
1. At the time, I was maintaining several heterogenous RPM-based systems, so that was the comparison. I can say with some limited authority that it's easier to make NixOS packages than RPMs, but harder than (say) tweaking /usr/ports in a BSD or Gentoo.
2. Being able to send closures between machines -- i.e. a reproducible recipe for the user's current environment, including all installed and user-acccessible packages, libs and binaries -- is eerie, like alien technology. Think of 'nvm' or 'virtualenv', but granular, and for everything. Once you get used to it, you will never be happy with any other package manager.
3. Nix' independence from NixOS is both a blessing and curse . On every OS except NixOS, Nix is necessarily a third-party add-on, and it necessarily uses slightly different versions of everything. Thanks to some insanely clever environment management, this never causes things to go plink, but it does mean that I often had a choice between a fresh Fedora RPM -- on a Fedora machine -- and a slightly stale Nix package. Guess which worked better. Guess which I chose most of the time. (But if you guessed that I was a bit OCD about package freshness, you'd be right.)
4. Final drawback, and the reason NixOS hasn't yet made it into production at our company: NixOS itself obviously has to use the same slightly stale packages that Nix does.
That said, how upset can you really get? These guys don't have the dev-hours that Canonical or Red Hat do -- or even Debian, for that matter. What they have achieved with the resources at hand is mindblowing. What this project needs to really be useful to me is about two dozen new FOSS contributors and like maybe half a million dollars of investment. Any more than that, though, and I'd worry they'd lose their game ;D -- so much of it is based on doing immense amounts with almost nothing, using cleverness as the amplifier. Isn't that what it's all about?
5. Oh, and also, the devs are responsive. Hi guys! ;D
- zimbatm 13y ago4 is going to be solved when enough users contribute to the nixpkgs isn't it ?
- undoware 13y agoYes, precisely why I said it hadn't made it to production 'yet'. I haven't had time to contribute like I want to, but believe me, it's up there on the list. My advice? Get involved with this project now. It's going places. The only problems it has will be solved by 'confidence-convergence' -- i.e., as the project continues to be awesome, more people will contribute, making the project more awesome. NixOS just needs more package maintainers. That's it, really.
- hamburglar 13y ago2 is intriguing. Would this sort of functionality make a reasonable replacement for vagrant?
- undoware 13y agoWell, in some contexts, yes, although to be honest I don't use Vagrant myself, so it's hard for me to compare use-cases. I see Nix as much-needed conceptual competition in the ongoing package-manager vs devops-deployment dogfight, to both package managers (rpm, yum, zypper, dpkg, apt-get...) and devops tools like Chef, Ansible, Salt, and Puppet. Nix is both, and does cool things like try to resolve a binary that will work on your architecture on the fly at runtime, and compiling one if it can't find one in the repo. It's just... better. Go try it.
- sausagefeet 13y agonixops is the Nix version of vagrant, it uses this closure-sending mechanism to create the machines.