diff --git a/flake.lock b/flake.lock index f20c028..4d61306 100644 --- a/flake.lock +++ b/flake.lock @@ -35,6 +35,29 @@ "type": "github" } }, + "impermanence": { + "inputs": { + "home-manager": [ + "home-manager" + ], + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1759327258, + "narHash": "sha256-aCEKGoPLZccGQBkjAjFFPfdyF9yWlM+4XSBRZZSvShY=", + "owner": "misterio77", + "repo": "impermanence", + "rev": "c69232cd3962b6b1b67ad4e38a3916ad67f20d76", + "type": "github" + }, + "original": { + "owner": "misterio77", + "repo": "impermanence", + "type": "github" + } + }, "nixpkgs": { "locked": { "lastModified": 1766902085, @@ -71,6 +94,7 @@ "inputs": { "hardware": "hardware", "home-manager": "home-manager", + "impermanence": "impermanence", "nixpkgs": "nixpkgs", "nixpkgs-stable": "nixpkgs-stable", "sops-nix": "sops-nix", diff --git a/flake.nix b/flake.nix index 5b7a91d..3e1835f 100644 --- a/flake.nix +++ b/flake.nix @@ -12,6 +12,11 @@ url = "github:nix-community/home-manager"; inputs.nixpkgs.follows = "nixpkgs"; }; + impermanence = { + url = "github:misterio77/impermanence"; + inputs.nixpkgs.follows = "nixpkgs"; + inputs.home-manager.follows = "home-manager"; + }; sops-nix = { url = "github:mic92/sops-nix"; diff --git a/home/dwessels/global/default.nix b/home/dwessels/global/default.nix index ec9978c..ffe0491 100644 --- a/home/dwessels/global/default.nix +++ b/home/dwessels/global/default.nix @@ -6,5 +6,46 @@ outputs, ... }: { + imports =[ + inputs.impermanence.homeManagerModules.impermanence + ] ++ (builtins.attrValues outputs.homeManagerModules); + + nix = { + package = lib.mkDefault pkgs.nix; + settings = { + experiment-features = [ + "nix-command" + "flakes" + "ca-derivations" + ]; + warn-dirty = false; + }; + }; + + programs = { + home-manager.enable = true; + git.enable = true; + }; + + home = { + username = lib.mkDefault "dwessels"; + homeDirectory = lib.mkDefault "/home/${config.home.username}"; + stateVersion = lib.mkDefault "22.11"; + sessionPath = ["$HOME/.local/bin"]; + sessionVariables = { + NH_FLAKE= "$HOME/Documents/NixConfig"; + }; + + persistence = { + "/persist".direcotoryies = [ + "Documents" + "Downloads" + "Pictures" + "Videos" + ".local/bin" + ".local/share/nix" + ]; + }; + }; } diff --git a/hosts/common/global/default.nix b/hosts/common/global/default.nix index 8660510..884bdfa 100644 --- a/hosts/common/global/default.nix +++ b/hosts/common/global/default.nix @@ -3,5 +3,8 @@ outputs, ... }: { - + home-manager.useGlobalpkgs = true; + home-manager.extraSpecialArgs = { + inherit inputs outputs; + }; }