diff --git a/flake.nix b/flake.nix
index 5500287..ed9c9af 100644
--- a/flake.nix
+++ b/flake.nix
@@ -61,6 +61,12 @@
           namespace = "clicks";
         };
       }).snowfall.internal.system-lib;
+
+      nixosModuleDependencies = {
+        agenix = inputs.agenix.nixosModules.default;
+        agenix-rekey = inputs.agenix-rekey.nixosModules.default;
+        impermanence = inputs.impermanence.nixosModules.impermanence;
+      };
     in
     lib.mkFlake {
       overlays = [
@@ -68,15 +74,12 @@
       ];
 
       systems.modules.nixos = [
-        inputs.agenix.nixosModules.default
-        inputs.agenix-rekey.nixosModules.default
-        inputs.impermanence.nixosModules.impermanence
         {
           config.clicks.defaults.enable = true;
           # set defaults that are clicks-specific, such as our backups module
           # being enabled...
         }
-      ];
+      ] ++ (lib.attrsets.attrValues nixosModuleDependencies);
 
       deploy = lib.clicks.deploy.mkDeploy {
         inherit (inputs) self;
@@ -93,6 +96,21 @@
         nodes = inputs.self.nixosConfigurations;
       };
 
+      # We need to re-export dependencies, as this is *invalid* unless
+      # environment.persistence is defined, so importing all our modules will
+      # otherwise break evaluation
+      #
+      # config = lib.mkIf false {
+      #   environment.persistence = {
+      #     ...
+      #   };
+      # };
+      #
+      modules.nixos = lib.attrsets.mapAttrs' (name: value: {
+        name = "dependency/${name}";
+        inherit value;
+      }) nixosModuleDependencies;
+
       outputs-builder = channels: {
         specs = let
           nixFiles = lib.snowfall.fs.get-nix-files-recursive ./.;
