Update home impermanence to be in the style of GNU Stow

This commit is contained in:
Bun 2025-05-14 00:12:33 -04:00
parent 968ae4631c
commit 66502988ef
22 changed files with 72 additions and 64 deletions

View file

@ -1,14 +1,10 @@
{ config, lib, ... }:
{
config = lib.mkIf config.home.desktop.enable {
dconf.settings = {
"org/gnome/desktop/interface/color-scheme".color-scheme = "prefer-dark";
"org/virt-manager/virt-manager/connections" = {
autoconnect = [ "qemu:///system" ];
uris = [ "qemu:///system" ];
};
dconf.settings = lib.mkIf config.home.desktop.enable {
"org/gnome/desktop/interface/color-scheme".color-scheme = "prefer-dark";
"org/virt-manager/virt-manager/connections" = {
autoconnect = [ "qemu:///system" ];
uris = [ "qemu:///system" ];
};
home.persistence."/persist${config.home.homeDirectory}".directories = [ ".config/dconf" ];
};
}

View file

@ -2,23 +2,24 @@
{
imports = [ impermanence.homeManagerModules.default ];
home.persistence."/persist${config.home.homeDirectory}" = {
home.persistence."${config.xdg.userDirs.extraConfig.XDG_PERSIST_DIR}" = {
enable = !config.targets.genericLinux.enable;
directories = [
"Keepers"
"Projects"
".gnupg"
".local/state/nix/profiles"
".ssh"
] ++ (if config.home.desktop.enable then [
"Documents"
"Photos"
"Videos"
"Games"
".local/state/wireplumber"
] else []);
allowOther = false;
removePrefixDirectory = true;
directories = [
"home/Keepers"
"home/Projects"
"nix/.local/state/nix/profiles"
"secure/.ssh"
] ++ (if config.home.desktop.enable then [
"home/Documents"
"home/Games"
"home/Photos"
"home/Videos"
"secure/.pki"
"state/.local/state/wireplumber"
] else []);
};
}

View file

@ -10,6 +10,9 @@
publicShare = null;
templates = null;
extraConfig.XDG_SCREENSHOTS_DIR = "${config.xdg.userDirs.pictures}/Screenshots";
extraConfig = {
XDG_SCREENSHOTS_DIR = "${config.xdg.userDirs.pictures}/Screenshots";
XDG_PERSIST_DIR = "/persist${config.home.homeDirectory}";
};
};
}