Hacker News new | ask | show | jobs
by Bnichs 875 days ago
This is a good example of how nix is both a) far to complicated a tool chain and b) completely underdocumented for how complicated it is.

I swear until I ripped nix off my systems, every time I had to do anything, even a simple home manager update, something would break in an unexplainable way and id have to dig for hours to figure it out, sometimes to no avail like with their libc libraries that end up breaking system compatability with no workaround.

Given that, this could be good for Home manager because the more they can improve documentation and disassociate their good product with the rats mess of an ecosystem it lives on, the better.

3 comments

That's.... so strangely diametrically opposite to my experience with Nix. The language itself leaves some things to be desired, and of course no argument on the documentation, but as a build and packaging system I have never in my life experienced fewer headaches. Everything Just Works, every time. Granted, this is on a NixOS system -- I imagine trying to jam a standalone Home Manager install on top of a non-Nixos system is a rather different situation.
I think that's part of the problem. It seems like the only way to have a good nix experience is to go all in with NixOS. The problem is that is a huge sell for someone who already has an OS they like and the fact that testing out nix standalone is such a pain means you end up with very little confidence in the prospect of migrating everything over. Plus, at least when I considered NixOS a few years ago, the setup instructions seemed not well ironed out and made me really hesitant that it wouldn't brick my system.

All in all I think nix falls into the category of great idea in theory, but the implementation is so lacking in ergonomics and ease of use that I don't see how it could be anything other than a niche build system without major UX updates.

In my experience this isn't true. I use NixOS because it is my preferred OS due to ease of setup and ergonomics. When I have no choice but to use a different OS the tooling is still there for me to use and it works fine. It's the other package managers that I worry about.
A good example of what exactly? Because regarding (a), this is just a quick reference for options. Nothing more, nothing less. As for (b), you're literally looking at detailed documentation. It's almost as if you made up your mind before opening the link.
If nix/home-manager documentation wasnt awful this site wouldn't be needed. And the level of detail should be way better than a one line sentence with no examples.
There's nothing in this site that's not in the official Home Manager documentation. See here:

https://nix-community.github.io/home-manager/options.xhtml

Or alternatively:

    man home-configuration.nix
The official documentation does have examples.
Home Manager is not Nix.