Refactor persistence structure
Signed-off-by: Nikolaos Karaolidis <nick@karaolidis.com>
This commit is contained in:
@@ -20,8 +20,8 @@
|
||||
};
|
||||
|
||||
environment.persistence = {
|
||||
"/persist"."${home}/.config/chromium" = { };
|
||||
"/cache"."${home}/.cache/chromium" = { };
|
||||
"/persist/state"."${home}/.config/chromium" = { };
|
||||
"/persist/cache"."${home}/.cache/chromium" = { };
|
||||
};
|
||||
|
||||
home-manager.users.${user} = {
|
||||
|
@@ -12,7 +12,7 @@ let
|
||||
hmConfig = config.home-manager.users.${user};
|
||||
in
|
||||
{
|
||||
environment.persistence."/cache"."${home}/.cache/cliphist" = { };
|
||||
environment.persistence."/persist/cache"."${home}/.cache/cliphist" = { };
|
||||
|
||||
home-manager.users.${user} = {
|
||||
home.packages = with pkgs; [ cliphist ];
|
||||
@@ -24,7 +24,7 @@ in
|
||||
BindsTo = [ "graphical-session.target" ];
|
||||
After = [
|
||||
"graphical-session.target"
|
||||
config.environment.persistence."/cache"."${home}/.cache/cliphist".mount
|
||||
config.environment.persistence."/persist/cache"."${home}/.cache/cliphist".mount
|
||||
];
|
||||
};
|
||||
|
||||
@@ -48,7 +48,7 @@ in
|
||||
BindsTo = [ "graphical-session.target" ];
|
||||
After = [
|
||||
"graphical-session.target"
|
||||
config.environment.persistence."/cache"."${home}/.cache/cliphist".mount
|
||||
config.environment.persistence."/persist/cache"."${home}/.cache/cliphist".mount
|
||||
];
|
||||
};
|
||||
|
||||
|
@@ -23,11 +23,11 @@ in
|
||||
];
|
||||
|
||||
environment.persistence = {
|
||||
"/persist" = {
|
||||
"/persist/state" = {
|
||||
"${home}/.config/darktable/data.db" = { };
|
||||
"${home}/.config/darktable/library.db" = { };
|
||||
};
|
||||
"/cache"."${home}/.cache/darktable" = { };
|
||||
"/persist/cache"."${home}/.cache/darktable" = { };
|
||||
};
|
||||
|
||||
home-manager.users.${user} = {
|
||||
|
@@ -4,7 +4,7 @@
|
||||
}:
|
||||
{ lib, pkgs, ... }:
|
||||
{
|
||||
environment.persistence."/persist"."${home}/.config/vesktop" = { };
|
||||
environment.persistence."/persist/state"."${home}/.config/vesktop" = { };
|
||||
|
||||
home-manager.users.${user} = {
|
||||
home.packages = with pkgs; [ vesktop ];
|
||||
|
@@ -13,8 +13,8 @@ let
|
||||
in
|
||||
{
|
||||
environment.persistence = {
|
||||
"/persist"."${home}/.mozilla" = { };
|
||||
"/cache"."${home}/.cache/mozilla" = { };
|
||||
"/persist/state"."${home}/.mozilla" = { };
|
||||
"/persist/cache"."${home}/.cache/mozilla" = { };
|
||||
};
|
||||
|
||||
home-manager.users.${user} = {
|
||||
|
@@ -12,7 +12,7 @@ let
|
||||
hmConfig = config.home-manager.users.${user};
|
||||
in
|
||||
{
|
||||
environment.persistence."/cache"."${home}/.cache/kitty" = { };
|
||||
environment.persistence."/persist/cache"."${home}/.cache/kitty" = { };
|
||||
|
||||
home-manager.users.${user} = {
|
||||
programs.kitty = {
|
||||
|
@@ -10,8 +10,8 @@
|
||||
}:
|
||||
{
|
||||
environment.persistence = {
|
||||
"/persist"."${home}/.config/libreoffice/4/user" = { };
|
||||
"/cache"."${home}/.config/libreoffice/4/cache" = { };
|
||||
"/persist/state"."${home}/.config/libreoffice/4/user" = { };
|
||||
"/persist/cache"."${home}/.config/libreoffice/4/cache" = { };
|
||||
};
|
||||
|
||||
home-manager.users.${user} = {
|
||||
|
@@ -13,7 +13,7 @@
|
||||
};
|
||||
|
||||
environment.persistence = {
|
||||
"/persist"."${home}/.config/obs-studio" = { };
|
||||
"/persist/state"."${home}/.config/obs-studio" = { };
|
||||
};
|
||||
|
||||
home-manager.users.${user}.programs.obs-studio.enable = true;
|
||||
|
@@ -15,7 +15,7 @@ let
|
||||
hmConfig = config.home-manager.users.${user};
|
||||
in
|
||||
{
|
||||
environment.persistence."/cache"."${home}/.config/obsidian" = { };
|
||||
environment.persistence."/persist/cache"."${home}/.config/obsidian" = { };
|
||||
|
||||
home-manager.users.${user} = {
|
||||
programs.obsidian = {
|
||||
@@ -605,9 +605,9 @@ in
|
||||
|
||||
theme.template = lib.attrsets.mapAttrs' (
|
||||
_: vault:
|
||||
lib.attrsets.nameValuePair
|
||||
"${vault.target}/.obsidian/plugins/obsidian-style-settings/data.json"
|
||||
{ source = ./theme.json; }
|
||||
lib.attrsets.nameValuePair "${vault.target}/.obsidian/plugins/obsidian-style-settings/data.json" {
|
||||
source = ./theme.json;
|
||||
}
|
||||
) hmConfig.programs.obsidian.vaults;
|
||||
|
||||
sops.secrets."google/geocoding".sopsFile = ../../../../../../secrets/personal/secrets.yaml;
|
||||
|
@@ -9,7 +9,7 @@
|
||||
...
|
||||
}:
|
||||
{
|
||||
environment.persistence."/cache"."${home}/.config/qalculate/qalculate-gtk.history" = { };
|
||||
environment.persistence."/persist/cache"."${home}/.config/qalculate/qalculate-gtk.history" = { };
|
||||
|
||||
home-manager.users.${user} = {
|
||||
home.packages = with pkgs; [ qalculate-gtk ];
|
||||
|
@@ -12,7 +12,7 @@ let
|
||||
hmConfig = config.home-manager.users.${user};
|
||||
in
|
||||
{
|
||||
environment.persistence."/cache"."${home}/.cache/rofi" = { };
|
||||
environment.persistence."/persist/cache"."${home}/.cache/rofi" = { };
|
||||
|
||||
home-manager.users.${user} = {
|
||||
programs.rofi = {
|
||||
|
@@ -28,8 +28,8 @@ in
|
||||
};
|
||||
|
||||
environment.persistence = {
|
||||
"/persist"."${home}/.config/spotify" = { };
|
||||
"/cache"."${home}/.cache/spotify" = { };
|
||||
"/persist/state"."${home}/.config/spotify" = { };
|
||||
"/persist/cache"."${home}/.cache/spotify" = { };
|
||||
};
|
||||
|
||||
home-manager.users.${user} = {
|
||||
|
@@ -9,7 +9,7 @@
|
||||
...
|
||||
}:
|
||||
{
|
||||
environment.persistence."/persist" = {
|
||||
environment.persistence."/persist/state" = {
|
||||
"${home}/.steam" = { };
|
||||
"${home}/.local/share/Steam" = { };
|
||||
};
|
||||
@@ -49,8 +49,8 @@
|
||||
Unit = {
|
||||
Description = "Sync Steam games with Games directory";
|
||||
After = [
|
||||
config.environment.persistence."/persist"."${home}/.local/share/Steam".mount
|
||||
config.environment.persistence."/persist"."${home}/Games".mount
|
||||
config.environment.persistence."/persist/state"."${home}/.local/share/Steam".mount
|
||||
config.environment.persistence."/persist/user"."${home}/Games".mount
|
||||
];
|
||||
DefaultDependencies = false;
|
||||
};
|
||||
@@ -67,8 +67,8 @@
|
||||
Unit = {
|
||||
Description = "Monitor Steam games directory for changes";
|
||||
After = [
|
||||
config.environment.persistence."/persist"."${home}/.local/share/Steam".mount
|
||||
config.environment.persistence."/persist"."${home}/Games".mount
|
||||
config.environment.persistence."/persist/state"."${home}/.local/share/Steam".mount
|
||||
config.environment.persistence."/persist/user"."${home}/Games".mount
|
||||
];
|
||||
};
|
||||
|
||||
|
@@ -26,7 +26,7 @@ let
|
||||
);
|
||||
in
|
||||
{
|
||||
environment.persistence."/cache"."${home}/.cache/swww" = { };
|
||||
environment.persistence."/persist/cache"."${home}/.cache/swww" = { };
|
||||
|
||||
home-manager.users.${user} = {
|
||||
home.packages = with pkgs; [ swww ];
|
||||
@@ -37,7 +37,7 @@ in
|
||||
BindsTo = [ "graphical-session.target" ];
|
||||
After = [
|
||||
"graphical-session.target"
|
||||
config.environment.persistence."/cache"."${home}/.cache/swww".mount
|
||||
config.environment.persistence."/persist/cache"."${home}/.cache/swww".mount
|
||||
];
|
||||
};
|
||||
|
||||
|
@@ -14,7 +14,7 @@ let
|
||||
themeBin = lib.meta.getExe hmConfig.theme.pkg;
|
||||
in
|
||||
{
|
||||
environment.persistence."/persist"."${home}/.config/theme" = { };
|
||||
environment.persistence."/persist/state"."${home}/.config/theme" = { };
|
||||
|
||||
home-manager.users.${user} = {
|
||||
imports = [ (import ./options.nix { inherit user home; }) ];
|
||||
|
@@ -12,9 +12,9 @@ let
|
||||
hmConfig = config.home-manager.users.${user};
|
||||
in
|
||||
{
|
||||
# Bastard: https://github.com/microsoft/vscode/issues/3884
|
||||
# FIXME: https://github.com/microsoft/vscode/issues/3884
|
||||
# Also for Discord, but those guys are even bigger bastards.
|
||||
environment.persistence."/persist"."${home}/.config/Code" = { };
|
||||
environment.persistence."/persist/state"."${home}/.config/Code" = { };
|
||||
|
||||
home-manager.users.${user} = {
|
||||
imports = [ ./options.nix ];
|
||||
|
Reference in New Issue
Block a user