I want to add custom commands to my PATH
but am unable to get it working. So far I've installed home-manager
and added the code below to my nix configuration.
imports = [
./hardware-configuration.nix
];
Then later on to add the item to PATH
home-manager.users.curtismchale = { pkgs, ... }: {
home.stateVersion = "23.05";
home.sessionPath = [
"$HOME/Workspace/proudcity/proudcity-kubernetes/bin"
];
};
I have also tried $HOME/Workspace/proudcity/producity-kubernetes/bin/pc-kube
but that doesn't change the issue.
I can see the commands installed at ~/Workspace/proudcity/proudcity-kubernetes/bin/pc-kube
but when I type the expected command pc kube $command
it says there is nothing installed in path and offers to install some programs that match pc
for me.
Not sure what the issue is, but I hope this helps:
home.sessionPath
ends up in$HOME/.nix-profile/etc/profile.d/hm-session-vars.sh
, which (in my system, at least) is referenced from~/.profile
.~/.profile
is only executed by login shells (ie. you have to logout and back in for it to be re-evaluated, or of course you can justsource
it)~/.profile
if there is a~/.bash_profile
or~/.bash_login
(IIRC)