Recently I’m trying to create a common home-manager configuration in my personal flake that can be deployed on multiple dev environment. Since the $USER and $HOME of these env is not controlled by myself, they have to be passed externally. The only reasonable way I’ve found so far is pass --impure
and use builtins.getEnv
to fetch these info, which is not ideal to me.
I already know that --arg
and --argstr
cannot be used in company with flakes, but now I really feel the pain. What’s the reason behind this design choice? Is there a saner way to EXPLICITLY pass external inputs in the above case?