Hi, Forum. This question is about symlinkJoin
and the way nix-env
manages user-profiles.
The task I’d like to solve is how to make one big derivation for all the packages I need (approx. 30 packages, including my custom scripts, custom Xfce components, but also Openoffice, chromium, etc.). The idea is to install them atomically with just one nix-env -i
command.
I tried to do it with symlinkJoin
but soon I found seriosus disadvantages: 1) it failed to deal with share/applications
section, so no icons, no .*desktop
s. 2) It doesn’t honor nix’s propagate-user-env-packages
, it doesn’t add Qt5 when needed 3) It doesn’t provide any systematic way to resolve conflicts. Actually, symlinkJoin
is built on top of lndir
which is very dumb.
So I have to turn my attention to the nix-env
itself that solves very same task when managing user-profiles. Do we have the functionality of nix-env
at the nixpkgs
level, e.g. as a better-than-symlinkJoin library function?