this post was submitted on 31 Jan 2026
208 points (98.6% liked)

Linux

11701 readers
772 users here now

A community for everything relating to the GNU/Linux operating system (except the memes!)

Also, check out:

Original icon base courtesy of lewing@isc.tamu.edu and The GIMP

founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[โ€“] Oinks@lemmy.blahaj.zone 7 points 2 days ago* (last edited 2 days ago) (1 children)

It does, that's the home.file escape hatch I mentioned. But then you end up paying 10-30 seconds eval for a "config" that looks like this:

{
  home.file.".bashrc".source = ./bashrc;
  home.file.".bash_profile".source = ./bash_profile;
  xdg.configFile.nvim.source = ./nvim;
  xdg.configFile.sway.source = ./sway;
  # ...
}

I suppose there are fringe use cases where Nix attrset merging behaviour is useful, but in the general case I just don't see much value here.

[โ€“] balsoft@lemmy.ml 2 points 14 hours ago* (last edited 12 hours ago)

You don't have to waste 30 seconds on a full eval when just iterating, I use these one-liners when trying to get some config file working: https://github.com/balsoft/nixos-config/blob/master/flake.nix#L140 ; they only evaluate one specific file and then link it into the right location "imperatively"

Then when I get it working I do the nixos-rebuild switch, which is a no-op in terms of home-manager stuff because the link points to the same location, it just makes it so that it stays the same after a reboot (I use impermanence).