Do some quick fixes to make sure everything builds
diff --git a/modules/filesystems.nix b/modules/filesystems.nix
index bb2b28a..eaadfde 100644
--- a/modules/filesystems.nix
+++ b/modules/filesystems.nix
@@ -1,4 +1,4 @@
-{impermanence}: {
+{impermanence, ...}: {
   imports = [
     impermanence.nixosModules.impermanence
   ];
diff --git a/modules/home-manager.nix b/modules/home-manager.nix
new file mode 100644
index 0000000..1c1466e
--- /dev/null
+++ b/modules/home-manager.nix
@@ -0,0 +1,4 @@
+{home-manager, ...}: {
+  imports = [home-manager.nixosModules.home-manager];
+  config.home-manager.useGlobalPkgs = true;
+}
diff --git a/modules/neovim.nix b/modules/neovim.nix
index e3d753c..949fbd4 100644
--- a/modules/neovim.nix
+++ b/modules/neovim.nix
@@ -1,13 +1,13 @@
 {pkgs, ...}: {
   config = {
     environment.variables = {
-      EDITOR = "${pkgs.nvim}/bin/nvim";
+      EDITOR = "${pkgs.neovim}/bin/nvim";
     };
     environment.defaultPackages = [
       pkgs.perl
       pkgs.rsync
       pkgs.strace
-      pkgs.nvim # I'm installing vim here even though it isn't normally a default package, as I've removed nano
+      pkgs.neovim # I'm installing vim here even though it isn't normally a default package, as I've removed nano
     ]; # The basic default packages, although without nano
   };
 }
diff --git a/modules/secrets.nix b/modules/secrets.nix
index cb55e20..3435962 100644
--- a/modules/secrets.nix
+++ b/modules/secrets.nix
@@ -1,4 +1,12 @@
-{pkgs, ...}: {
+{
+  pkgs,
+  sops-nix,
+  ...
+}: {
+  imports = [
+    sops-nix.nixosModules.sops
+  ];
+
   config = {
     environment.systemPackages = with pkgs; [
       sops
diff --git a/modules/ssh.nix b/modules/ssh.nix
index 862310a..2e5c3a4 100644
--- a/modules/ssh.nix
+++ b/modules/ssh.nix
@@ -5,19 +5,19 @@
     environment.persistence."/nix/persist".files = [
       {
         file = "/etc/ssh_host_rsa_key";
-        parentDirectory = {mode = 755;};
+        parentDirectory = {mode = "755";};
       }
       {
         file = "/etc/ssh_host_rsa_key.pub";
-        parentDirectory = {mode = 755;};
+        parentDirectory = {mode = "755";};
       }
       {
         file = "/etc/ssh_host_ed25519_key";
-        parentDirectory = {mode = 755;};
+        parentDirectory = {mode = "755";};
       }
       {
         file = "/etc/ssh_host_ed25519_key.pub";
-        parentDirectory = {mode = 755;};
+        parentDirectory = {mode = "755";};
       }
     ];
   };
diff --git a/modules/users.nix b/modules/users.nix
index 15f1e4f..11b2137 100644
--- a/modules/users.nix
+++ b/modules/users.nix
@@ -1,13 +1,25 @@
-{pkgs, ...}: {
-  users.mutableUsers = false;
+{
+  pkgs,
+  config,
+  username,
+  ...
+}: {
+  config = {
+    users.mutableUsers = false;
 
-  users.users.minion = {
-    isNormalUser = true;
-    extraGroups = ["wheel" "kvm" "docker" "containerd" "dialout" "libvirtd" "video" config.users.groups.keys.name];
-    shell = pkgs.zsh;
+    users.users.${username} = {
+      isNormalUser = true;
+      extraGroups = ["wheel" "kvm" "docker" "containerd" "dialout" "libvirtd" "video" config.users.groups.keys.name];
+      shell = pkgs.zsh;
+    };
+
+    users.users.root.initialPassword = "hunter2";
+    # TODO: Change this as soon as we know the system boots properly and we make
+    # user passwords persist
   };
 
-  users.users.root.initialPassword = "hunter2";
-  # TODO: Change this as soon as we know the system boots properly and we make
-  # user passwords persist
+  home.home = {
+    inherit username;
+    homeDirectory = "/home/${username}";
+  };
 }