Live data from Hacker News

Nix Home Manager Option Search

mipmip.github.io

21–30 of 33 posts

Re: Nix Home Manager Option Search

#21

Earlier quoted context omitted.

Declarative home environments are pretty great. Being able to reproduce your entire user setup is fantastic when you manage multiple machines or want to make future migrations. I run NixOS and use Home-Manager as well. This lets me define my entire system in addition to my user home contents declaratively. So with this configuration I can apply NixOS & Home-Manager to get the same results anywhere. Here is an example…

Where the "home config" in this case can be much more than just text files and, for example, can include the actual apps installed locally. So when you define your `.git/config` file, you can include `diff.external = ${pkgs.difft}` to refer to a locally installed version of app `difft` and home-manager does the right thing. You can also manage your user services through systemd or launchd.

The stuff Nix lets you declare really are very arbitrary. I even specify my Firefox extensions in my home-manager config.

Re: Nix Home Manager Option Search

#22

I "love" these projects that won't even describe what they do on their front page or even in their manual. Of course everybody has 30 minutes to spare to try to understand what it is.

Home-Manager is a project that brings declarative user home directory management to Nix. You can have it set up dotfiles, user systemd services, etc. All the things to do with stuff in your home directory. The documentation for Home-Manager that is generated is an extremely large html file with every option listed. It is not easy to read or discover options in. The linked tool provides a search field to query the ava…

Can this be used without using Nix at system level?

Re: Nix Home Manager Option Search

#23

Earlier quoted context omitted.

Home-Manager is a project that brings declarative user home directory management to Nix. You can have it set up dotfiles, user systemd services, etc. All the things to do with stuff in your home directory. The documentation for Home-Manager that is generated is an extremely large html file with every option listed. It is not easy to read or discover options in. The linked tool provides a search field to query the ava…

Can this be used without using Nix at system level?

It can be used on non-NixOS Linux distributions and Mac OS.

https://nix-community.github.io/home-manager/index.xhtml#sec...

Re: Nix Home Manager Option Search

#24
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.

Re: Nix Home Manager Option Search

#25
post #24

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 syst…

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.

Re: Nix Home Manager Option Search

#26
post #25
post #24

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 syst…

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 sy…

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.

Re: Nix Home Manager Option Search

#27
post #24

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 syst…

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.

Re: Nix Home Manager Option Search

#28
post #24

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 syst…

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.

Re: Nix Home Manager Option Search

#29

Is there a good way of getting this sort of thing for nix projects in general? I often find myself cloning the repo for it just so I can grep for `mkOption` and I often wonder if there's a smarter way.

Don't projects using Nix modules typically list all the available options in their documentation? For example,

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

I find it good practice to actually read the modules though. So personally, I think grepping is fine.

Re: Nix Home Manager Option Search

#30
post #24

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 syst…

Home Manager is not Nix.
Post reply on HN