I’m building a btrfs+impermanence setup, and I’m having trouble integrating home-manager into the process.
I have this impermanence setup in my configuration.nix
and it works pretty well:
environment.persistence = {
"/persist" = {
directories = [
"/etc/nixos"
"/etc/NetworkManager/system-connections"
"/var/lib/systemd"
"/var/lib/nixos"
"/var/log"
"/srv"
];
};
};
And this in my home-manager setup:
home.persistence = {
"/persist/home/${config.home.username}" = {
directories = [
"Documents"
"Downloads"
"Pictures"
"Videos"
];
allowOther = true;
};
};
But after a reboot my home manager environment is not activated. I need to do the following every time:
nix shell home-manager
mkdir -p ~/.local/state/nix/profiles # required or home-manager will throw an error. why?
home-manager switch --flake /etc/nixos
I mean, I guess it kinda makes sense, since the entire root directory including the home is cleared every time.
I looked through a few dotfiles with impermanence, but I just can’t figure out the “correct” way to handle this. It’s as if that this problem isn’t supposed to exist at all. Any tips?