Auto-create persist directories.

This commit is contained in:
Tom Alexander
2025-03-30 17:26:05 -04:00
parent 33f45c56bf
commit c173ea87cf
9 changed files with 116 additions and 157 deletions

View File

@@ -2,7 +2,6 @@
config,
lib,
pkgs,
home-manager,
...
}:
@@ -48,63 +47,18 @@ in
source = ./files/GCPadNew.ini;
};
home.persistence."/home/deck/.persist" = {
directories = [
{
# The system memory
directory = ".local/share/dolphin-emu/Wii";
method = "symlink";
}
{
# Memory card(s)
directory = ".local/share/dolphin-emu/Load";
method = "symlink";
}
{
# Gamecube
directory = ".local/share/dolphin-emu/GC";
method = "symlink";
}
{
# Screenshots
directory = ".local/share/dolphin-emu/ScreenShots";
method = "symlink";
}
{
# GameBoy Advanced
directory = ".local/share/dolphin-emu/GBA/Saves";
method = "symlink";
}
];
};
home.persistence."/home/deck/.state" = {
directories = [
{
directory = ".cache/dolphin-emu";
method = "symlink";
}
{
directory = ".local/share/dolphin-emu/Shaders";
method = "symlink";
}
{
directory = ".local/share/dolphin-emu/StateSaves";
method = "symlink";
}
];
};
home.activation = {
createDolphinDirectories = home-manager.lib.hm.dag.entryAfter [ "writeBoundary" ] ''
for dir in '.local/share/dolphin-emu/Wii' '.cache/dolphin-emu' '.local/share/dolphin-emu/Load' '.local/share/dolphin-emu/GC' '.local/share/dolphin-emu/ScreenShots' '.local/share/dolphin-emu/GBA/Saves' '.local/share/dolphin-emu/Shaders' '.local/share/dolphin-emu/StateSaves' ; do
echo "checking $dir"
if [[ ! -d "$HOME/.persist/$dir" ]]; then
$DRY_RUN_CMD mkdir $VERBOSE_ARG -p "$HOME/.persist/$dir"
fi
done
'';
};
me.persist.directories = [
".local/share/dolphin-emu/Wii" # The system memory
".local/share/dolphin-emu/Load" # Memory card(s)
".local/share/dolphin-emu/GC" # Gamecube
".local/share/dolphin-emu/ScreenShots" # Screenshots
".local/share/dolphin-emu/GBA/Saves" # GameBoy Advanced
];
me.state.directories = [
".cache/dolphin-emu"
".local/share/dolphin-emu/Shaders"
".local/share/dolphin-emu/StateSaves"
];
nixpkgs.overlays = [
(