You can manage symlinks pretty easy with home-manager. I’d personally setup symlinks for these app configuration directories if I don’t want them storing files directly on the disk I use for $HOME. It’s also done in a delcarative way that can persist across multiple computers.
I’m not sure I understand. So you create a symlink from $HOME/.program.ini to something in the nix store? If so, how does that solve the problem of clutter in $HOME ?
You’re right, it doesn’t. That does give me an idea though.
You could use overlayfs with an opaque upper directory to hide the files littering your $HOME and still access them by bind-mounting them into the appropriate xdg dirs.
Is there an easy way to learn this for just the package manager? Most of the tutorials I find are tailored to NixOS, which I’m not using and don’t plan on using.
For what it’s worth, I don’t understand the nix language or all the package manager functions in their entirety. I generally use what I need and that’s it. Most information I’ve required that is nixpkgs-specific I was able to find in the manual. home-manager has one as well and it’s been the best reference for me.
Nix and Home Manager have been my go-to for managing dotfiles and symlinks in my home dir
If a program just uses
$HOME
or someone starts writing a new application, how is that supposed to help?You can manage symlinks pretty easy with home-manager. I’d personally setup symlinks for these app configuration directories if I don’t want them storing files directly on the disk I use for
$HOME
. It’s also done in a delcarative way that can persist across multiple computers.I’m not sure I understand. So you create a symlink from
$HOME/.program.ini
to something in the nix store? If so, how does that solve the problem of clutter in$HOME
?You’re right, it doesn’t. That does give me an idea though.
You could use overlayfs with an opaque upper directory to hide the files littering your $HOME and still access them by bind-mounting them into the appropriate xdg dirs.
Way more effort than it’s worth, of course.
Is there an easy way to learn this for just the package manager? Most of the tutorials I find are tailored to NixOS, which I’m not using and don’t plan on using.
For what it’s worth, I don’t understand the nix language or all the package manager functions in their entirety. I generally use what I need and that’s it. Most information I’ve required that is
nixpkgs
-specific I was able to find in the manual. home-manager has one as well and it’s been the best reference for me.