nixos-config/modules/home/settings/impermanence/default.nix

25 lines
788 B
Nix

{ config, lib, impermanence, ... }:
{
imports = [ impermanence.homeManagerModules.default ];
home.persistence."${config.xdg.userDirs.extraConfig.XDG_PERSIST_DIR}" = {
enable = true;
allowOther = false;
removePrefixDirectory = true;
directories = let
home = config.home.homeDirectory;
strip = path: lib.removePrefix "${home}/" path;
in with config.xdg.userDirs; [
"dirs/${strip extraConfig.XDG_KEEPERS_DIR}"
"dirs/${strip extraConfig.XDG_PROJECTS_DIR}"
"secure/.ssh"
] ++ (if config.home.desktop.enable then [
"dirs/${strip documents}"
"dirs/${strip extraConfig.XDG_GAMES_DIR}"
"dirs/${strip pictures}"
"dirs/${strip videos}"
"state/${strip config.xdg.stateHome}/wireplumber"
] else []);
};
}