mkIf impermanence

Signed-off-by: Hadi <hadi@example.fr>
This commit is contained in:
Hadi
2026-08-17 14:57:11 +02:00
parent 9a3fa6f4a9
commit 5076c244db
13 changed files with 58 additions and 23 deletions
+11 -4
View File
@@ -1,4 +1,9 @@
{pkgs, ...}: { {
pkgs,
config,
lib,
...
}: {
home.packages = import ./cybersecurity-packages.nix { home.packages = import ./cybersecurity-packages.nix {
inherit pkgs; inherit pkgs;
}; };
@@ -38,7 +43,9 @@
}; };
}; };
home.persistence."/persist".directories = [ home.persistence."/persist" = lib.mkIf (config.var.impermanenceEnabled or false) {
"Cyber" directories = [
]; "Cyber"
];
};
} }
+3 -1
View File
@@ -1,6 +1,8 @@
{ {
pkgs, pkgs,
pkgs-unstable, pkgs-unstable,
config,
lib,
... ...
}: { }: {
home = { home = {
@@ -19,7 +21,7 @@
rsync rsync
]); ]);
persistence."/persist" = { persistence."/persist" = lib.mkIf (config.var.impermanenceEnabled or false) {
directories = [ directories = [
".claude" ".claude"
]; ];
+5 -3
View File
@@ -137,7 +137,9 @@ in {
mimeType = ["text/html" "text/xml" "application/xhtml+xml"]; mimeType = ["text/html" "text/xml" "application/xhtml+xml"];
}; };
home.persistence."/persist".directories = [ home.persistence."/persist" = lib.mkIf (config.var.impermanenceEnabled or false) {
".config/net.imput.helium" directories = [
]; ".config/net.imput.helium"
];
};
} }
+13 -6
View File
@@ -1,4 +1,9 @@
{pkgs, ...}: { {
pkgs,
config,
lib,
...
}: {
home.packages = with pkgs; [ home.packages = with pkgs; [
vlc # Video player vlc # Video player
obsidian # Note taking app obsidian # Note taking app
@@ -13,9 +18,11 @@
gnome-text-editor gnome-text-editor
]; ];
home.persistence."/persist".directories = [ home.persistence."/persist" = lib.mkIf (config.var.impermanenceEnabled or false) {
".config/ticktick" directories = [
".config/Signal" ".config/ticktick"
".config/obsidian" ".config/Signal"
]; ".config/obsidian"
];
};
} }
+7 -4
View File
@@ -1,6 +1,7 @@
{ {
pkgs, pkgs,
config, config,
lib,
... ...
}: { }: {
home.packages = with pkgs; [ home.packages = with pkgs; [
@@ -28,8 +29,10 @@
}; };
}; };
home.persistence."/persist".directories = [ home.persistence."/persist" = lib.mkIf (config.var.impermanenceEnabled or false) {
".config/protonvpn" directories = [
".config/Proton Pass" ".config/protonvpn"
]; ".config/Proton Pass"
];
};
} }
+5 -1
View File
@@ -1,6 +1,8 @@
{ {
pkgs, pkgs,
pkgs-unstable, pkgs-unstable,
config,
lib,
... ...
}: { }: {
home.packages = with pkgs; [ home.packages = with pkgs; [
@@ -38,5 +40,7 @@
smassh # typing test, 10fastfinger like smassh # typing test, 10fastfinger like
]; ];
home.persistence."/persist".directories = [".config/gh" ".config/gh-dash"]; home.persistence."/persist" = lib.mkIf (config.var.impermanenceEnabled or false) {
directories = [".config/gh" ".config/gh-dash"];
};
} }
+3 -1
View File
@@ -15,7 +15,9 @@
COLORTERM = "truecolor"; COLORTERM = "truecolor";
MANPAGER = "bat -l man -p"; MANPAGER = "bat -l man -p";
}; };
persistence."/persist".files = [".zsh_history"]; persistence."/persist" = lib.mkIf (config.var.impermanenceEnabled or false) {
files = [".zsh_history"];
};
}; };
programs.zsh = { programs.zsh = {
+4 -1
View File
@@ -2,6 +2,7 @@
{ {
config, config,
pkgs, pkgs,
lib,
... ...
}: let }: let
c = config.lib.stylix.colors; c = config.lib.stylix.colors;
@@ -11,7 +12,9 @@ in {
spotatui spotatui
]; ];
home.persistence."/persist".directories = [".config/spotatui" ".config/spotify"]; home.persistence."/persist" = lib.mkIf (config.var.impermanenceEnabled or false) {
directories = [".config/spotatui" ".config/spotify"];
};
home.file.".config/spotatui/config.yml".text = '' home.file.".config/spotatui/config.yml".text = ''
keybindings: keybindings:
+2 -1
View File
@@ -1,6 +1,7 @@
{ {
config, config,
inputs, inputs,
lib,
... ...
}: { }: {
imports = [ imports = [
@@ -49,7 +50,7 @@
inherit (config.var) username; inherit (config.var) username;
homeDirectory = "/home/" + config.var.username; homeDirectory = "/home/" + config.var.username;
persistence."/persist" = { persistence."/persist" = lib.mkIf (config.var.impermanenceEnabled or false) {
directories = [ directories = [
".config/nixos" # this repo itself (nixy manages it here) ".config/nixos" # this repo itself (nixy manages it here)
".local/share" ".local/share"
+1
View File
@@ -26,6 +26,7 @@
autoUpgrade = false; autoUpgrade = false;
autoGarbageCollector = true; autoGarbageCollector = true;
impermanenceEnabled = true;
}; };
# DON'T TOUCH THIS # DON'T TOUCH THIS
+1
View File
@@ -13,6 +13,7 @@ nixpkgs.lib.nixosSystem {
inputs.nixarr.nixosModules.default inputs.nixarr.nixosModules.default
inputs.nix-index-database.nixosModules.default inputs.nix-index-database.nixosModules.default
inputs.default-creds.nixosModules.default inputs.default-creds.nixosModules.default
inputs.impermanence.nixosModules.impermanence
./configuration.nix ./configuration.nix
]; ];
} }
+2 -1
View File
@@ -1,6 +1,7 @@
{ {
config, config,
inputs, inputs,
lib,
... ...
}: { }: {
imports = [ imports = [
@@ -48,7 +49,7 @@
inherit (config.var) username; inherit (config.var) username;
homeDirectory = "/home/" + config.var.username; homeDirectory = "/home/" + config.var.username;
persistence."/persist" = { persistence."/persist" = lib.mkIf (config.var.impermanenceEnabled or false) {
directories = [ directories = [
".config/nixos" # this repo itself (nixy manages it here) ".config/nixos" # this repo itself (nixy manages it here)
".local/share" ".local/share"
+1
View File
@@ -26,6 +26,7 @@
autoUpgrade = false; autoUpgrade = false;
autoGarbageCollector = true; autoGarbageCollector = true;
impermanenceEnabled = true;
}; };
# DON'T TOUCH THIS # DON'T TOUCH THIS