diff --git a/lass/source.nix b/lass/source.nix
index 26c668241..52b0d99f2 100644
--- a/lass/source.nix
+++ b/lass/source.nix
@@ -1,24 +1,27 @@
 with import <stockholm/lib>;
-host@{ name, secure ? false }: let
+host@{ name, secure ? false, override ? {} }: let
   builder = if getEnv "dummy_secrets" == "true"
               then "buildbot"
               else "lass";
   _file = <stockholm> + "/lass/1systems/${name}/source.nix";
 in
-  evalSource (toString _file) {
-    nixos-config.symlink = "stockholm/lass/1systems/${name}/config.nix";
-    secrets.file = getAttr builder {
-      buildbot = toString <stockholm/lass/2configs/tests/dummy-secrets>;
-      lass = "/home/lass/secrets/${name}";
-    };
-    stockholm.file = toString <stockholm>;
-    nixpkgs.git = {
-      url = http://cgit.lassul.us/nixpkgs;
-      # nixos-17.03
-      # + copytoram:
-      #   87a4615 & 334ac4f
-      # + acme permissions for groups
-      #   fd7a8f1
-      ref = "fe46ffc";
-    };
-  }
+  evalSource (toString _file) [
+    {
+      nixos-config.symlink = "stockholm/lass/1systems/${name}/config.nix";
+      nixpkgs.git = {
+        url = http://cgit.lassul.us/nixpkgs;
+        # nixos-17.03
+        # + copytoram:
+        #   87a4615 & 334ac4f
+        # + acme permissions for groups
+        #   fd7a8f1
+        ref = "fe46ffc";
+      };
+      secrets.file = getAttr builder {
+        buildbot = toString <stockholm/lass/2configs/tests/dummy-secrets>;
+        lass = "/home/lass/secrets/${name}";
+      };
+      stockholm.file = toString <stockholm>;
+    }
+    override
+  ]