My story is pretty similar to yours. I first ran across Nix maybe... a year ago, or thereabouts. I don't remember exactly how, but up until recently my Linux installs tended to self-destruct once or twice a year, so I was always looking for alternative (and ideally less breakable) distributions.
Nix seemed like obviously the right thing. That was my first impression; that this way of doing it should be less prone to breakage or, at least, be much quicker to reinstall. I've always wanted my installations to be declarative, but it hasn't been very practical before. Then I tried it, and found that almost nothing worked (I was trying it on desktop, which seems like hard-mode), and went back to Ubuntu. Fast-forward six months, and I had my otherwise-stable *server* fall apart on me. Okay, that was a disk failure, but I took the opportunity to try installing NixOS. And, after a few annoying moments, fell in love on second sight. Then I started poking at nixpkgs, because not everything was perfect, and eventually I realised that it should be relatively straightforward to implement a cross-cutting service like monitoring on top of this. Which is what led me to this. In between, I eventually replaced every other Linux install I've got with NixOS. You could say I like it. Yup. --- As to what's making me stick with NixOS? There are a lot of little things, but if you put a banana to my head and force me to list the most important ones... - Declarative installs. This is a big, big, *big* advantage. It's the feature that keeps on giving, everything from quick reinstalls (if necessary), to putting configurations in git, to sharing configurations between systems. There are other systems that do this (Chef, Docker), but none do so as comprehensively, nor are they as usable. - Nixpkgs. Unlike Debian et. al, adding your own code to NixOS is a straight-forward and transparent process. I'm grateful to the maintainers for bearing with and reviewing my continuing mistakes here. There were enough things that didn't work that, if there had been any more friction, I'd likely have thrown up my hands and gone back to Ubuntu. - Native support for ZFS. :D There are a few bugs, still. Maybe I'll take another crack at those eventually, but for now I'll be focusing on monitoring. (The primary annoyance is the interaction of nixos-generate-config with automounted snapshots, so it's nothing really important.) - Not exactly a NixOS feature, but the Nix build system has been very useful for my own, personal projects; e.g. I made a server-builder <https://github.com/erisia/builder> for my excessively-modded minecraft server. nix-build is obviously the right thing, even if it doesn't like gradle caches very much. /nix/store and its explicit dependencies actually haven't been a big draw for me yet. I understand the advantages intellectually, and I've certainly taken advantage of it, but I suspect this is the sort of thing that's difficult to really appreciate without first banging your head into the alternative. Which, ok, may be a large part of the reason why my previous Linux installations always self-destruct in the end, so I'm certainly not objecting. On Wed, Apr 20, 2016 at 9:09 AM Gleb Peregud <[email protected]> wrote: > On Wed, Apr 20, 2016 at 10:02 AM, Gleb Peregud <[email protected]> wrote: > > -lists > > > > Hey Svein > > > > Your glossary gives away you are an SRE at Google :) > > And I just realized that we actually have interacted in context of > Haskell before. > > I am wondering. What's your story with Nix? I am currently slowly > moving more and more of my infrastructure at home to Nix/NixOS as it > feels like it is "the right solution" to package management and > operation system management. Basically the same way Haskell is for > programming languages. (In both cases of course I am referring to a > default choice for usual needs, projects and environment). >
_______________________________________________ nix-dev mailing list [email protected] http://lists.science.uu.nl/mailman/listinfo/nix-dev
