Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I've considered using NixOS for production environments at work, but the thing that keeps holding me back is the configuration language. It's neat that it is Turing complete, but it's unique to NixOS, and requires a non-trivial amount of time to learn in order to configure a system (and maintain it..)


I recommend you keep holding back. I've been running NixOS on a personal vps and my laptop for close to two years now and it was a mistake.

The official documentation for the configuration language is as far as I can tell like 20 pages long. Then you are directed to some old blog posts... I realized that I don't want to investing the time to learn some undocumented obscure single use language.

Guix looks way more interesting to me. Compare the Guix manual to the NixOS & Nix manuals combined and they are about the same length. Then look at the Guile manual and it is about 3x longer than either of those. Of course, I have an issue with the whole Guix libre distribution so I'm not going to be installing it. I like working wifi too much.

Nix and Guix are really interesting ideas but they have both made choices that I think are going to keep them very niche.

The laptop is back on Debian, eventually when the burden of maintaining the server becomes too great that will be back to Debian as well.


I agree for your personal computer. I've been using it on my PC for several months, and it was definitely a mistake. Most things work fine, but there are enough problems that it is extremely noticeable. Whether it's the mess that is steam-run and that whole hack, or having to build your own derivations for literally anything that's not widely used or that you need the latest versions of, it's just an endless time sink. And the documentation is non-existent, as you say. You need to go into the git repo to see what actual options are available, despite how comprehensive the options search on the NixOS page looks, it's not.

For a server, where you're typically doing that kind of work anyway (and want to have the specificity and control), I'd say it's pretty good (Guix works too).

I'm actually going back to Mint today.


I've used Ansible and Salt and I've found them much easier than dealing with nix. With nix I always end up digging through the source code to figure out how to anything.

Previous to NixOS I was actually using a simple configuration management system I wrote myself in mawk. Basically a glorified templating dsl that would deploy itself by concatenating all my awk code and a base64 encoded tar.gz of config file templates then ssh itself to the server and bootstrap and run. I don't know what madness possessed me to do that but I would rather go back to that than nix right now.

When I go back to Debian I'm looking at maybe trying out https://propellor.branchable.com/

My Haskell isn't great but I would prefer learning a language I might actually use elsewhere.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: