3 ms·
I think the Nix/NixOS debate gets confused by two separate goals: * A workstation machine where you do everything from development to watching netflix * A ser
by rkangel 7y ago
I think the Nix/NixOS debate gets confused by two separate goals:
* A workstation machine where you do everything from development to watching netflix
* A server (whether VM, Metal, Container)
The former wants convenience and flexibility. I agree with you - I also use Fedora because (particularly with Lenovo hardware), you install it and you're done. Everything works. I don't want to have to go and write nix expressions because I want to run a not-very-obscure thing that isn't packaged. It's ok for me that my workstation is a 'pet' and I blow it away every 6 months to a year.
The latter case is more interesting and has some specific requirements on it. We all know about configuration drift. The idea of getting completely deterministic setups, and unifying how you do that across VMs, native and containers is great.
- k2enemy 7y agoI agree. Or at least I used to! I set up a server a few years ago running NixOS and it required a steep learning curve, but it seemed worthwhile at the time. Fast forward to today and I want to add a new service on the server and I've completely forgotten everything I learned about Nix and I'm considering switching back to debian.
- VLM 7y ago"The former wants convenience and flexibility." Thanks but no thanks, if those were my priorities I'd just use my chromebook. Or a mac if I had to run locally hosted stuff old school style. This NixOS stuff is very interesting, feels like living in the future. Turning it into Windows10 is exactly what would repel me from enjoying it. To some extent my chromebook is completely deterministic in that there is no setup other than my wifi credentials and google login. Its weird and fun to compare.
- rkangel 7y agoFedora Silverblue is something I'm keeping my eye on, as a way of getting some of the benefits of NixOS without any of the pain.
- abathur 7y agoI think there are more nuanced value conflicts around the workstation case. There's nothing wrong with the values you're working from, but they've slipped down my list over the past few years. Nix can certainly be limiting in some ways. But everything can--we just habituate. It's possible to find interesting tools that aren't at all cross-platform, or that require hours of DIY spelunking to get compiling, or that are only in some other repository. It's possible to find something you want to use that either isn't packaged for or is broken in every package manager. I use Nix (on macOS and NixOS) for roughly the same reasons: convenience and flexibility. But from a different angle, I guess. It is freeing to know that everything I need to make forward progress on all of my personal and professional projects is specified. I have the flexibility to resume work on the projects I care about with almost no friction beyond securing new hardware.
- rkangel 7y agoI am finding that the Nix package manager on top of Fedora works nicely as a middle ground: You can use it to set up a per-project nix-shell that gives you an experience a little like docker (in terms of speed), but more convenient because your normal machine is available on the PATH (or not, if you run --pure). I can then use that same Nix config in my CI - just use the base Nix docker image and then apply the nix-env as a pre-script.