nixdots/home/impermanence/default.nix
2024-07-27 01:07:07 +02:00

48 lines
1 KiB
Nix

{
lib,
osConfig,
inputs,
...
}: let
inherit (lib) mkIf;
cfg = osConfig.myOptions.system.impermanence.home;
in {
imports = [inputs.impermanence.nixosModules.home-manager.impermanence];
config = mkIf cfg.enable {
home.persistence."${cfg.persistentMountPoint}" = {
directories =
[
".cache/nix"
".cache/nix-index"
]
++ cfg.extraDirectories;
files =
[
]
++ cfg.extraFiles;
# Allow other users (such as root), to access files through the bind
# mounted directories listed in `directories`. Useful for `sudo` operations,
# Docker, etc. Requires NixOS configuration programs.fuse.userAllowOther = true;
allowOther = true;
};
home.persistence."${cfg.persistentDataMountPoint}" = {
directories =
[
]
++ cfg.extraDataDirectories;
files =
[
]
++ cfg.extraDataFiles;
# See comment for this above
allowOther = true;
};
};
}