diff --git a/flake.lock b/flake.lock
index b9629ec..c0bca6c 100644
--- a/flake.lock
+++ b/flake.lock
@@ -31,10 +31,27 @@
         "type": "github"
       }
     },
+    "registry": {
+      "flake": false,
+      "locked": {
+        "lastModified": 1657791189,
+        "narHash": "sha256-Z2ckMWqybpJjIdGIPuHcYzTL7DPTbFKpBZJJgGfFUog=",
+        "owner": "nixos",
+        "repo": "flake-registry",
+        "rev": "7a481cef7e86d6ceb4aec244d9bb085619360ba1",
+        "type": "github"
+      },
+      "original": {
+        "owner": "nixos",
+        "repo": "flake-registry",
+        "type": "github"
+      }
+    },
     "root": {
       "inputs": {
         "flake-utils": "flake-utils",
-        "nixpkgs": "nixpkgs"
+        "nixpkgs": "nixpkgs",
+        "registry": "registry"
       }
     }
   },
diff --git a/flake.nix b/flake.nix
index c4a49dc..d2dc6af 100644
--- a/flake.nix
+++ b/flake.nix
@@ -2,15 +2,41 @@
   description = "Minion's NixOS configuration (since 2022-08-19)";
   inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
   inputs.flake-utils.url = "github:numtide/flake-utils";
+  inputs.registry = {
+    url = "github:nixos/flake-registry";
+    flake = false;
+  };
 
-  outputs = {
-    self,
-    nixpkgs,
-    flake-utils,
-  }:
+  outputs = inputs: let
+    inherit (inputs) self nixpkgs flake-utils;
+  in
     flake-utils.lib.eachDefaultSystem (system: let
       pkgs = nixpkgs.legacyPackages.${system};
+
+      utils = import ./utils/utils.nix pkgs.lib;
+
+      username = "minion";
     in {
+      nixosConfigurations = {
+        default = pkgs.lib.nixosSystem {
+          inherit system;
+
+          home-manager.useGlobalPkgs = true;
+
+          modules = pkgs.lib.pipe ./modules [
+            utils.nixFilesIn
+            utils.importAll
+            (utils.interpretNonstandardModule (args:
+              args
+              // {
+                home =
+                  args.config.home-manager."${username}";
+              }))
+          ];
+
+          specialArgs = inputs // {inherit username;};
+        };
+      };
       devShell = pkgs.mkShell {
         nativeBuildInputs = with pkgs; [nodePackages.prettier alejandra];
         buildInputs = [];
diff --git a/modules/nix.nix b/modules/nix.nix
new file mode 100644
index 0000000..999068c
--- /dev/null
+++ b/modules/nix.nix
@@ -0,0 +1,20 @@
+{
+  pkgs,
+  registry,
+  ...
+}: {
+  config = {
+    nix = {
+      settings = {
+        experimental-features = ["nix-command" "flakes"];
+        auto-optimise-store = true;
+        keep-outputs = true;
+        flake-registry = "${registry}/flake-registry.json";
+      };
+      gc = {
+        automatic = true;
+        options = "--delete-older-than 7d";
+      };
+    };
+  };
+}
diff --git a/modules/secrets.nix b/modules/secrets.nix
index f891de7..cb55e20 100644
--- a/modules/secrets.nix
+++ b/modules/secrets.nix
@@ -1,8 +1,8 @@
-{ pkgs, ... }: {
-    config = {
-        environment.systemPackages = with pkgs; [
-            sops
-        ];
-        sops.defaultSopsFile = ../secrets/secrets.json;
-    };
+{pkgs, ...}: {
+  config = {
+    environment.systemPackages = with pkgs; [
+      sops
+    ];
+    sops.defaultSopsFile = ../secrets/secrets.json;
+  };
 }
diff --git a/utils/importAll.nix b/utils/importAll.nix
new file mode 100644
index 0000000..b6130fb
--- /dev/null
+++ b/utils/importAll.nix
@@ -0,0 +1,3 @@
+# Pretty basic function to import all files in a list, because it looks nicer to
+# do utils.importAll than this map operation
+nixFiles: map import nixFiles
diff --git a/utils/interpretNonstandardModule.nix b/utils/interpretNonstandardModule.nix
index 533cf6c..edb4231 100644
--- a/utils/interpretNonstandardModule.nix
+++ b/utils/interpretNonstandardModule.nix
@@ -3,7 +3,7 @@
 # This function takes a list of modules, as well as arguments to import them
 # with, and returns a list of modules, each with the standard NixOS module
 # properties as well as with custom properties as described in /README.md
-modules: args: let
+transformArgs: modules: args: let
   resolver = module: let
     importedModule =
       if builtins.typeOf module == "path"
@@ -13,14 +13,14 @@
       if builtins.typeOf importedModule == "lambda"
       then
         resolvedModule
-        args
+        (transformArgs args)
       else resolvedModule;
   in {
     home = module.home or {};
     module = {
-        module.config or {};
-        module.imports or {};
-        module.options or {};
+      config = module.config or {};
+      imports = module.imports or {};
+      options = module.options or {};
     };
   };
 in (
diff --git a/utils/nixFilesIn.nix b/utils/nixFilesIn.nix
new file mode 100644
index 0000000..b5340bd
--- /dev/null
+++ b/utils/nixFilesIn.nix
@@ -0,0 +1,2 @@
+# Modified from http://chriswarbo.net/projects/nixos/useful_hacks.html
+lib: dir: map (name: dir + "/${name}") (lib.attrNames (lib.filterAttrs (name: _: lib.hasSuffix ".nix" name) (builtins.readDir dir)))
diff --git a/utils/utils.nix b/utils/utils.nix
new file mode 100644
index 0000000..8b1b731
--- /dev/null
+++ b/utils/utils.nix
@@ -0,0 +1,8 @@
+lib:
+builtins.listToAttrs builtins.map (path: {
+  name = nixpkgs.lib.pipe path [
+    (nixpkgs.lib.removeSuffix ".nix")
+    (nixpkgs.lib.removePrefix ./.)
+  ];
+  value = import path;
+}) ((import ./nixFilesIn.nix) ./.)
