diff --git a/.history/flake_20220304102113.nix b/.history/flake_20220304102113.nix
new file mode 100644
index 0000000..94f2327
--- /dev/null
+++ b/.history/flake_20220304102113.nix
@@ -0,0 +1,11 @@
+{
+  description = "A very basic flake";
+
+  outputs = { self, nixpkgs }: {
+
+    packages.x86_64-linux.hello = nixpkgs.legacyPackages.x86_64-linux.hello;
+
+    defaultPackage.x86_64-linux = self.packages.x86_64-linux.hello;
+
+  };
+}
diff --git a/.history/flake_20220304102211.nix b/.history/flake_20220304102211.nix
new file mode 100644
index 0000000..88ef73d
--- /dev/null
+++ b/.history/flake_20220304102211.nix
@@ -0,0 +1,11 @@
+{
+  description = "Minion3665's N";
+
+  outputs = { self, nixpkgs }: {
+
+    packages.x86_64-linux.hello = nixpkgs.legacyPackages.x86_64-linux.hello;
+
+    defaultPackage.x86_64-linux = self.packages.x86_64-linux.hello;
+
+  };
+}
diff --git a/.history/flake_20220304102216.nix b/.history/flake_20220304102216.nix
new file mode 100644
index 0000000..1096585
--- /dev/null
+++ b/.history/flake_20220304102216.nix
@@ -0,0 +1,11 @@
+{
+  description = "Minion3665's NixFiles ";
+
+  outputs = { self, nixpkgs }: {
+
+    packages.x86_64-linux.hello = nixpkgs.legacyPackages.x86_64-linux.hello;
+
+    defaultPackage.x86_64-linux = self.packages.x86_64-linux.hello;
+
+  };
+}
diff --git a/.history/flake_20220304102224.nix b/.history/flake_20220304102224.nix
new file mode 100644
index 0000000..5d1109a
--- /dev/null
+++ b/.history/flake_20220304102224.nix
@@ -0,0 +1,11 @@
+{
+  description = "Minion3665's NixFiles (since 2022-03-24)";
+
+  outputs = { self, nixpkgs }: {
+
+    packages.x86_64-linux.hello = nixpkgs.legacyPackages.x86_64-linux.hello;
+
+    defaultPackage.x86_64-linux = self.packages.x86_64-linux.hello;
+
+  };
+}
diff --git a/.history/flake_20220304102232.nix b/.history/flake_20220304102232.nix
new file mode 100644
index 0000000..a86a3c3
--- /dev/null
+++ b/.history/flake_20220304102232.nix
@@ -0,0 +1,9 @@
+{
+  description = "Minion3665's NixFiles (since 2022-03-24)";
+
+  outputs = { self, nixpkgs }: {
+
+    
+
+  };
+}
diff --git a/.history/flake_20220304102239.nix b/.history/flake_20220304102239.nix
new file mode 100644
index 0000000..ed6c188
--- /dev/null
+++ b/.history/flake_20220304102239.nix
@@ -0,0 +1,9 @@
+{
+  description = "Minion3665's NixFiles (since 2022-03-24)";
+
+  outputs = { self, nixpkgs, home-manager }: {
+
+    
+
+  };
+}
diff --git a/.history/flake_20220304102251.nix b/.history/flake_20220304102251.nix
new file mode 100644
index 0000000..be044e3
--- /dev/null
+++ b/.history/flake_20220304102251.nix
@@ -0,0 +1,13 @@
+{
+  description = "Minion3665's NixFiles (since 2022-03-24)";
+
+  inputs = {
+    nixpkgs.url = "nixpkgs"
+  }
+
+  outputs = { self, nixpkgs, home-manager }: {
+
+    
+
+  };
+}
diff --git a/.history/flake_20220304102257.nix b/.history/flake_20220304102257.nix
new file mode 100644
index 0000000..e821ca5
--- /dev/null
+++ b/.history/flake_20220304102257.nix
@@ -0,0 +1,14 @@
+{
+  description = "Minion3665's NixFiles (since 2022-03-24)";
+
+  inputs = {
+    nixpkgs.url = "nixpkgs/nixos-21.11";
+    
+  }
+
+  outputs = { self, nixpkgs, home-manager }: {
+
+    
+
+  };
+}
diff --git a/.history/flake_20220304102300.nix b/.history/flake_20220304102300.nix
new file mode 100644
index 0000000..ecaaadf
--- /dev/null
+++ b/.history/flake_20220304102300.nix
@@ -0,0 +1,14 @@
+  {
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+      nixpkgs.url = "nixpkgs/nixos-21.11";
+      
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+
+      
+
+    };
+  }
diff --git a/.history/flake_20220304102301.nix b/.history/flake_20220304102301.nix
new file mode 100644
index 0000000..e821ca5
--- /dev/null
+++ b/.history/flake_20220304102301.nix
@@ -0,0 +1,14 @@
+{
+  description = "Minion3665's NixFiles (since 2022-03-24)";
+
+  inputs = {
+    nixpkgs.url = "nixpkgs/nixos-21.11";
+    
+  }
+
+  outputs = { self, nixpkgs, home-manager }: {
+
+    
+
+  };
+}
diff --git a/.history/flake_20220304102348.nix b/.history/flake_20220304102348.nix
new file mode 100644
index 0000000..00ea0cc
--- /dev/null
+++ b/.history/flake_20220304102348.nix
@@ -0,0 +1,14 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+      nixpkgs.url = "nixpkgs/nixos-21.11";
+      
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+
+      
+
+    };
+}
diff --git a/.history/flake_20220304102350.nix b/.history/flake_20220304102350.nix
new file mode 100644
index 0000000..51ce2b6
--- /dev/null
+++ b/.history/flake_20220304102350.nix
@@ -0,0 +1,14 @@
+{
+description = "Minion3665's NixFiles (since 2022-03-24)";
+
+inputs = {
+  nixpkgs.url = "nixpkgs/nixos-21.11";
+  
+}
+
+outputs = { self, nixpkgs, home-manager }: {
+
+  
+
+};
+}
diff --git a/.history/flake_20220304102359.nix b/.history/flake_20220304102359.nix
new file mode 100644
index 0000000..00ea0cc
--- /dev/null
+++ b/.history/flake_20220304102359.nix
@@ -0,0 +1,14 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+      nixpkgs.url = "nixpkgs/nixos-21.11";
+      
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+
+      
+
+    };
+}
diff --git a/.history/flake_20220304102405.nix b/.history/flake_20220304102405.nix
new file mode 100644
index 0000000..e4e6895
--- /dev/null
+++ b/.history/flake_20220304102405.nix
@@ -0,0 +1,14 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "nixpkgs/nixos-21.11";
+      
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+
+      
+
+    };
+}
diff --git a/.history/flake_20220304102435.nix b/.history/flake_20220304102435.nix
new file mode 100644
index 0000000..3eabaa2
--- /dev/null
+++ b/.history/flake_20220304102435.nix
@@ -0,0 +1,14 @@
+{
+description = "Minion3665's NixFiles (since 2022-03-24)";
+
+inputs = {
+    nixpkgs.url = "nixpkgs/nixos-21.11";
+  
+}
+
+outputs = { self, nixpkgs, home-manager }: {
+
+  
+
+};
+}
diff --git a/.history/flake_20220304102437.nix b/.history/flake_20220304102437.nix
new file mode 100644
index 0000000..2364845
--- /dev/null
+++ b/.history/flake_20220304102437.nix
@@ -0,0 +1,14 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+inputs = {
+    nixpkgs.url = "nixpkgs/nixos-21.11";
+  
+}
+
+outputs = { self, nixpkgs, home-manager }: {
+
+  
+
+};
+}
diff --git a/.history/flake_20220304102439.nix b/.history/flake_20220304102439.nix
new file mode 100644
index 0000000..a0ba3bb
--- /dev/null
+++ b/.history/flake_20220304102439.nix
@@ -0,0 +1,13 @@
+description = "Minion3665's NixFiles (since 2022-03-24)";
+
+inputs = {
+    nixpkgs.url = "nixpkgs/nixos-21.11";
+  
+}
+
+outputs = { self, nixpkgs, home-manager }: {
+
+  
+
+};
+}
diff --git a/.history/flake_20220304102440.nix b/.history/flake_20220304102440.nix
new file mode 100644
index 0000000..4a92449
--- /dev/null
+++ b/.history/flake_20220304102440.nix
@@ -0,0 +1,14 @@
+{
+  description = "Minion3665's NixFiles (since 2022-03-24)";
+
+inputs = {
+    nixpkgs.url = "nixpkgs/nixos-21.11";
+  
+}
+
+outputs = { self, nixpkgs, home-manager }: {
+
+  
+
+};
+}
diff --git a/.history/flake_20220304102633.nix b/.history/flake_20220304102633.nix
new file mode 100644
index 0000000..4c77139
--- /dev/null
+++ b/.history/flake_20220304102633.nix
@@ -0,0 +1,14 @@
+    {
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+    nixpkgs.url = "nixpkgs/nixos-21.11";
+
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+
+
+
+    };
+    }
diff --git a/.history/flake_20220304102635.nix b/.history/flake_20220304102635.nix
new file mode 100644
index 0000000..be5a19c
--- /dev/null
+++ b/.history/flake_20220304102635.nix
@@ -0,0 +1,14 @@
+{
+description = "Minion3665's NixFiles (since 2022-03-24)";
+
+inputs = {
+nixpkgs.url = "nixpkgs/nixos-21.11";
+
+}
+
+outputs = { self, nixpkgs, home-manager }: {
+
+
+
+};
+}
diff --git a/.history/flake_20220304102637.nix b/.history/flake_20220304102637.nix
new file mode 100644
index 0000000..1c28e57
--- /dev/null
+++ b/.history/flake_20220304102637.nix
@@ -0,0 +1,14 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+    nixpkgs.url = "nixpkgs/nixos-21.11";
+
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+
+
+
+    };
+}
diff --git a/.history/flake_20220304102643.nix b/.history/flake_20220304102643.nix
new file mode 100644
index 0000000..cfabc94
--- /dev/null
+++ b/.history/flake_20220304102643.nix
@@ -0,0 +1,14 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "nixpkgs/nixos-21.11";
+
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+
+
+
+    };
+}
diff --git a/.history/flake_20220304102646.nix b/.history/flake_20220304102646.nix
new file mode 100644
index 0000000..c41ccaa
--- /dev/null
+++ b/.history/flake_20220304102646.nix
@@ -0,0 +1,14 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "nixpkgs/nixos-21.11";
+        
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+
+
+
+    };
+}
diff --git a/.history/flake_20220304102650.nix b/.history/flake_20220304102650.nix
new file mode 100644
index 0000000..8377a9c
--- /dev/null
+++ b/.history/flake_20220304102650.nix
@@ -0,0 +1,14 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixpkgs/nixos-21.11";
+
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+
+
+
+    };
+}
diff --git a/.history/flake_20220304102652.nix b/.history/flake_20220304102652.nix
new file mode 100644
index 0000000..4f3177e
--- /dev/null
+++ b/.history/flake_20220304102652.nix
@@ -0,0 +1,14 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:Ninixpkgs/nixos-21.11";
+
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+
+
+
+    };
+}
diff --git a/.history/flake_20220304102654.nix b/.history/flake_20220304102654.nix
new file mode 100644
index 0000000..8377a9c
--- /dev/null
+++ b/.history/flake_20220304102654.nix
@@ -0,0 +1,14 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixpkgs/nixos-21.11";
+
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+
+
+
+    };
+}
diff --git a/.history/flake_20220304102658.nix b/.history/flake_20220304102658.nix
new file mode 100644
index 0000000..b8b7cb3
--- /dev/null
+++ b/.history/flake_20220304102658.nix
@@ -0,0 +1,14 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+
+
+
+    };
+}
diff --git a/.history/flake_20220304102701.nix b/.history/flake_20220304102701.nix
new file mode 100644
index 0000000..71c47c1
--- /dev/null
+++ b/.history/flake_20220304102701.nix
@@ -0,0 +1,14 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+
+
+
+    };
+}
diff --git a/.history/flake_20220304102722.nix b/.history/flake_20220304102722.nix
new file mode 100644
index 0000000..b15d29f
--- /dev/null
+++ b/.history/flake_20220304102722.nix
@@ -0,0 +1,14 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11"
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+
+
+
+    };
+}
diff --git a/.history/flake_20220304103312.nix b/.history/flake_20220304103312.nix
new file mode 100644
index 0000000..438e5f7
--- /dev/null
+++ b/.history/flake_20220304103312.nix
@@ -0,0 +1,12 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11"
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+    };
+}
diff --git a/.history/flake_20220304103318.nix b/.history/flake_20220304103318.nix
new file mode 100644
index 0000000..e390338
--- /dev/null
+++ b/.history/flake_20220304103318.nix
@@ -0,0 +1,13 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11"
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = 
+    };
+}
diff --git a/.history/flake_20220304103321.nix b/.history/flake_20220304103321.nix
new file mode 100644
index 0000000..10a6d81
--- /dev/null
+++ b/.history/flake_20220304103321.nix
@@ -0,0 +1,13 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11"
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "";
+    };
+}
diff --git a/.history/flake_20220304112027.nix b/.history/flake_20220304112027.nix
new file mode 100644
index 0000000..1d295ca
--- /dev/null
+++ b/.history/flake_20220304112027.nix
@@ -0,0 +1,13 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11"
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";
+    };
+}
diff --git a/.history/flake_20220304112031.nix b/.history/flake_20220304112031.nix
new file mode 100644
index 0000000..9ec9de9
--- /dev/null
+++ b/.history/flake_20220304112031.nix
@@ -0,0 +1,13 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11"
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: 
+    };
+}
diff --git a/.history/flake_20220304112033.nix b/.history/flake_20220304112033.nix
new file mode 100644
index 0000000..b734a2f
--- /dev/null
+++ b/.history/flake_20220304112033.nix
@@ -0,0 +1,13 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11"
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add 
+    };
+}
diff --git a/.history/flake_20220304112038.nix b/.history/flake_20220304112038.nix
new file mode 100644
index 0000000..10f8d55
--- /dev/null
+++ b/.history/flake_20220304112038.nix
@@ -0,0 +1,14 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11"
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+            
+    };
+}
diff --git a/.history/flake_20220304112044.nix b/.history/flake_20220304112044.nix
new file mode 100644
index 0000000..c93a056
--- /dev/null
+++ b/.history/flake_20220304112044.nix
@@ -0,0 +1,15 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11"
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            
+    };
+}
diff --git a/.history/flake_20220304112049.nix b/.history/flake_20220304112049.nix
new file mode 100644
index 0000000..5b9d9ad
--- /dev/null
+++ b/.history/flake_20220304112049.nix
@@ -0,0 +1,15 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11"
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs 
+    };
+}
diff --git a/.history/flake_20220304112050.nix b/.history/flake_20220304112050.nix
new file mode 100644
index 0000000..84fea12
--- /dev/null
+++ b/.history/flake_20220304112050.nix
@@ -0,0 +1,15 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11"
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs =
+    };
+}
diff --git a/.history/flake_20220304112058.nix b/.history/flake_20220304112058.nix
new file mode 100644
index 0000000..398e5c1
--- /dev/null
+++ b/.history/flake_20220304112058.nix
@@ -0,0 +1,15 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11"
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpk
+    };
+}
diff --git a/.history/flake_20220304112108.nix b/.history/flake_20220304112108.nix
new file mode 100644
index 0000000..402329f
--- /dev/null
+++ b/.history/flake_20220304112108.nix
@@ -0,0 +1,19 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11"
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = 
+            }
+    };
+}
diff --git a/.history/flake_20220304112110.nix b/.history/flake_20220304112110.nix
new file mode 100644
index 0000000..e9c4e73
--- /dev/null
+++ b/.history/flake_20220304112110.nix
@@ -0,0 +1,19 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11"
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = ()
+            }
+    };
+}
diff --git a/.history/flake_20220304112114.nix b/.history/flake_20220304112114.nix
new file mode 100644
index 0000000..b7730b5
--- /dev/null
+++ b/.history/flake_20220304112114.nix
@@ -0,0 +1,19 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11"
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = {  }
+            }
+    };
+}
diff --git a/.history/flake_20220304112118.nix b/.history/flake_20220304112118.nix
new file mode 100644
index 0000000..99a27ea
--- /dev/null
+++ b/.history/flake_20220304112118.nix
@@ -0,0 +1,19 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11"
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; }
+            }
+    };
+}
diff --git a/.history/flake_20220304112120.nix b/.history/flake_20220304112120.nix
new file mode 100644
index 0000000..b4408d0
--- /dev/null
+++ b/.history/flake_20220304112120.nix
@@ -0,0 +1,19 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11"
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            }
+    };
+}
diff --git a/.history/flake_20220304112123.nix b/.history/flake_20220304112123.nix
new file mode 100644
index 0000000..6a74ee8
--- /dev/null
+++ b/.history/flake_20220304112123.nix
@@ -0,0 +1,19 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11"
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+    };
+}
diff --git a/.history/flake_20220304112137.nix b/.history/flake_20220304112137.nix
new file mode 100644
index 0000000..0eb7eb2
--- /dev/null
+++ b/.history/flake_20220304112137.nix
@@ -0,0 +1,20 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11"
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in
+    };
+}
diff --git a/.history/flake_20220304112139.nix b/.history/flake_20220304112139.nix
new file mode 100644
index 0000000..bf23796
--- /dev/null
+++ b/.history/flake_20220304112139.nix
@@ -0,0 +1,21 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11"
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in
+        
+    };
+}
diff --git a/.history/flake_20220304112143.nix b/.history/flake_20220304112143.nix
new file mode 100644
index 0000000..0eb7eb2
--- /dev/null
+++ b/.history/flake_20220304112143.nix
@@ -0,0 +1,20 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11"
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in
+    };
+}
diff --git a/.history/flake_20220304112147.nix b/.history/flake_20220304112147.nix
new file mode 100644
index 0000000..54dffef
--- /dev/null
+++ b/.history/flake_20220304112147.nix
@@ -0,0 +1,22 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11"
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nix
+        }
+    };
+}
diff --git a/.history/flake_20220304112150.nix b/.history/flake_20220304112150.nix
new file mode 100644
index 0000000..31b62c2
--- /dev/null
+++ b/.history/flake_20220304112150.nix
@@ -0,0 +1,22 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11"
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixos
+        }
+    };
+}
diff --git a/.history/flake_20220304112154.nix b/.history/flake_20220304112154.nix
new file mode 100644
index 0000000..76b1812
--- /dev/null
+++ b/.history/flake_20220304112154.nix
@@ -0,0 +1,22 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11"
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = 
+        }
+    };
+}
diff --git a/.history/flake_20220304112156.nix b/.history/flake_20220304112156.nix
new file mode 100644
index 0000000..7b8896f
--- /dev/null
+++ b/.history/flake_20220304112156.nix
@@ -0,0 +1,24 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11"
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                
+            }
+        }
+    };
+}
diff --git a/.history/flake_20220304112205.nix b/.history/flake_20220304112205.nix
new file mode 100644
index 0000000..5965162
--- /dev/null
+++ b/.history/flake_20220304112205.nix
@@ -0,0 +1,24 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11"
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+
+            }
+        }
+    };
+}
diff --git a/.history/flake_20220304112207.nix b/.history/flake_20220304112207.nix
new file mode 100644
index 0000000..7b8896f
--- /dev/null
+++ b/.history/flake_20220304112207.nix
@@ -0,0 +1,24 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11"
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                
+            }
+        }
+    };
+}
diff --git a/.history/flake_20220304112209.nix b/.history/flake_20220304112209.nix
new file mode 100644
index 0000000..3b8e8ba
--- /dev/null
+++ b/.history/flake_20220304112209.nix
@@ -0,0 +1,24 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11"
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304112212.nix b/.history/flake_20220304112212.nix
new file mode 100644
index 0000000..6c7a4d3
--- /dev/null
+++ b/.history/flake_20220304112212.nix
@@ -0,0 +1,24 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11"
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+
+            };
+        };
+    };
+}
diff --git a/.history/flake_20220304112214.nix b/.history/flake_20220304112214.nix
new file mode 100644
index 0000000..9da0643
--- /dev/null
+++ b/.history/flake_20220304112214.nix
@@ -0,0 +1,24 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11"
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                
+            };
+        };
+    };
+}
diff --git a/.history/flake_20220304112219.nix b/.history/flake_20220304112219.nix
new file mode 100644
index 0000000..e8dc4fa
--- /dev/null
+++ b/.history/flake_20220304112219.nix
@@ -0,0 +1,24 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11"
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            }
+        in {
+            nixosConfigurations = {
+
+            };
+        };
+    };
+}
diff --git a/.history/flake_20220304112232.nix b/.history/flake_20220304112232.nix
new file mode 100644
index 0000000..6c7a4d3
--- /dev/null
+++ b/.history/flake_20220304112232.nix
@@ -0,0 +1,24 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11"
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+
+            };
+        };
+    };
+}
diff --git a/.history/flake_20220304112243.nix b/.history/flake_20220304112243.nix
new file mode 100644
index 0000000..22113a4
--- /dev/null
+++ b/.history/flake_20220304112243.nix
@@ -0,0 +1,24 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    }
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+
+            };
+        };
+    };
+}
diff --git a/.history/flake_20220304112245.nix b/.history/flake_20220304112245.nix
new file mode 100644
index 0000000..0f37ce7
--- /dev/null
+++ b/.history/flake_20220304112245.nix
@@ -0,0 +1,24 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+
+            };
+        };
+    };
+}
diff --git a/.history/flake_20220304112252.nix b/.history/flake_20220304112252.nix
new file mode 100644
index 0000000..5f52873
--- /dev/null
+++ b/.history/flake_20220304112252.nix
@@ -0,0 +1,24 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+
+            };
+        };
+    }
+}
diff --git a/.history/flake_20220304112301.nix b/.history/flake_20220304112301.nix
new file mode 100644
index 0000000..0f37ce7
--- /dev/null
+++ b/.history/flake_20220304112301.nix
@@ -0,0 +1,24 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+
+            };
+        };
+    };
+}
diff --git a/.history/flake_20220304112314.nix b/.history/flake_20220304112314.nix
new file mode 100644
index 0000000..ed81893
--- /dev/null
+++ b/.history/flake_20220304112314.nix
@@ -0,0 +1,24 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = import nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+
+            };
+        };
+    };
+}
diff --git a/.history/flake_20220304112316.nix b/.history/flake_20220304112316.nix
new file mode 100644
index 0000000..0f37ce7
--- /dev/null
+++ b/.history/flake_20220304112316.nix
@@ -0,0 +1,24 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+
+            };
+        };
+    };
+}
diff --git a/.history/flake_20220304112328.nix b/.history/flake_20220304112328.nix
new file mode 100644
index 0000000..30b94bb
--- /dev/null
+++ b/.history/flake_20220304112328.nix
@@ -0,0 +1,24 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                
+            };
+        };
+    };
+}
diff --git a/.history/flake_20220304112331.nix b/.history/flake_20220304112331.nix
new file mode 100644
index 0000000..cd46949
--- /dev/null
+++ b/.history/flake_20220304112331.nix
@@ -0,0 +1,24 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default 
+            };
+        };
+    };
+}
diff --git a/.history/flake_20220304112335.nix b/.history/flake_20220304112335.nix
new file mode 100644
index 0000000..e2ec11d
--- /dev/null
+++ b/.history/flake_20220304112335.nix
@@ -0,0 +1,24 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pk
+            };
+        };
+    };
+}
diff --git a/.history/flake_20220304112353.nix b/.history/flake_20220304112353.nix
new file mode 100644
index 0000000..7e3e44a
--- /dev/null
+++ b/.history/flake_20220304112353.nix
@@ -0,0 +1,30 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        
+                    ];
+                }
+            };
+        };
+    };
+}
diff --git a/.history/flake_20220304112412.nix b/.history/flake_20220304112412.nix
new file mode 100644
index 0000000..22e898a
--- /dev/null
+++ b/.history/flake_20220304112412.nix
@@ -0,0 +1,30 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src
+                    ];
+                }
+            };
+        };
+    };
+}
diff --git a/.history/flake_20220304112417.nix b/.history/flake_20220304112417.nix
new file mode 100644
index 0000000..a6c5539
--- /dev/null
+++ b/.history/flake_20220304112417.nix
@@ -0,0 +1,30 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/systee
+                    ];
+                }
+            };
+        };
+    };
+}
diff --git a/.history/flake_20220304112421.nix b/.history/flake_20220304112421.nix
new file mode 100644
index 0000000..499fd4e
--- /dev/null
+++ b/.history/flake_20220304112421.nix
@@ -0,0 +1,31 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                    
+                }
+            };
+        };
+    };
+}
diff --git a/.history/flake_20220304112422.nix b/.history/flake_20220304112422.nix
new file mode 100644
index 0000000..aee45bd
--- /dev/null
+++ b/.history/flake_20220304112422.nix
@@ -0,0 +1,32 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+
+                    
+                }
+            };
+        };
+    };
+}
diff --git a/.history/flake_20220304112424.nix b/.history/flake_20220304112424.nix
new file mode 100644
index 0000000..118a4ed
--- /dev/null
+++ b/.history/flake_20220304112424.nix
@@ -0,0 +1,30 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+        };
+    };
+}
diff --git a/.history/flake_20220304112426.nix b/.history/flake_20220304112426.nix
new file mode 100644
index 0000000..ed71acb
--- /dev/null
+++ b/.history/flake_20220304112426.nix
@@ -0,0 +1,32 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            
+        };
+    };
+}
diff --git a/.history/flake_20220304112436.nix b/.history/flake_20220304112436.nix
new file mode 100644
index 0000000..690aafb
--- /dev/null
+++ b/.history/flake_20220304112436.nix
@@ -0,0 +1,32 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration
+        };
+    };
+}
diff --git a/.history/flake_20220304112438.nix b/.history/flake_20220304112438.nix
new file mode 100644
index 0000000..8cdb62d
--- /dev/null
+++ b/.history/flake_20220304112438.nix
@@ -0,0 +1,34 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304112449.nix b/.history/flake_20220304112449.nix
new file mode 100644
index 0000000..e7685bc
--- /dev/null
+++ b/.history/flake_20220304112449.nix
@@ -0,0 +1,34 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304112452.nix b/.history/flake_20220304112452.nix
new file mode 100644
index 0000000..9bdee2d
--- /dev/null
+++ b/.history/flake_20220304112452.nix
@@ -0,0 +1,34 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homema
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304112455.nix b/.history/flake_20220304112455.nix
new file mode 100644
index 0000000..fc0a6f4
--- /dev/null
+++ b/.history/flake_20220304112455.nix
@@ -0,0 +1,36 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homeManagerConfiguration {
+                    
+                }
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304112459.nix b/.history/flake_20220304112459.nix
new file mode 100644
index 0000000..6d5975d
--- /dev/null
+++ b/.history/flake_20220304112459.nix
@@ -0,0 +1,36 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homeManagerConfiguration {
+                    inherit system pkgs
+                }
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304112501.nix b/.history/flake_20220304112501.nix
new file mode 100644
index 0000000..539ae12
--- /dev/null
+++ b/.history/flake_20220304112501.nix
@@ -0,0 +1,36 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homeManagerConfiguration {
+                    inherit system pkgs;
+                }
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304112505.nix b/.history/flake_20220304112505.nix
new file mode 100644
index 0000000..539ae12
--- /dev/null
+++ b/.history/flake_20220304112505.nix
@@ -0,0 +1,36 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homeManagerConfiguration {
+                    inherit system pkgs;
+                }
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304112507.nix b/.history/flake_20220304112507.nix
new file mode 100644
index 0000000..3fabeb5
--- /dev/null
+++ b/.history/flake_20220304112507.nix
@@ -0,0 +1,38 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homeManagerConfiguration {
+                    inherit system pkgs;
+
+                    
+                }
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304112511.nix b/.history/flake_20220304112511.nix
new file mode 100644
index 0000000..6469a13
--- /dev/null
+++ b/.history/flake_20220304112511.nix
@@ -0,0 +1,38 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homeManagerConfiguration {
+                    inherit system pkgs;
+
+                    username = ""
+                }
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304112517.nix b/.history/flake_20220304112517.nix
new file mode 100644
index 0000000..6a7eac4
--- /dev/null
+++ b/.history/flake_20220304112517.nix
@@ -0,0 +1,39 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homeManagerConfiguration {
+                    inherit system pkgs;
+
+                    username = "minion";
+                    homeDirectory = ""
+                }
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304112523.nix b/.history/flake_20220304112523.nix
new file mode 100644
index 0000000..32025c8
--- /dev/null
+++ b/.history/flake_20220304112523.nix
@@ -0,0 +1,39 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homeManagerConfiguration rec {
+                    inherit system pkgs;
+
+                    username = "minion";
+                    homeDirectory = ""
+                }
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304112530.nix b/.history/flake_20220304112530.nix
new file mode 100644
index 0000000..723f82d
--- /dev/null
+++ b/.history/flake_20220304112530.nix
@@ -0,0 +1,39 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homeManagerConfiguration rec {
+                    inherit system pkgs;
+
+                    username = "minion";
+                    homeDirectory = "/home/${username}";
+                }
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304112532.nix b/.history/flake_20220304112532.nix
new file mode 100644
index 0000000..3cbf681
--- /dev/null
+++ b/.history/flake_20220304112532.nix
@@ -0,0 +1,41 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homeManagerConfiguration rec {
+                    inherit system pkgs;
+
+                    username = "minion";
+                    homeDirectory = "/home/${username}";
+
+                    
+                }
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304112536.nix b/.history/flake_20220304112536.nix
new file mode 100644
index 0000000..4d91b6d
--- /dev/null
+++ b/.history/flake_20220304112536.nix
@@ -0,0 +1,41 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homeManagerConfiguration rec {
+                    inherit system pkgs;
+
+                    username = "minion";
+                    homeDirectory = "/home/${username}";
+
+                    configuration = 
+                }
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304112540.nix b/.history/flake_20220304112540.nix
new file mode 100644
index 0000000..9f4a42a
--- /dev/null
+++ b/.history/flake_20220304112540.nix
@@ -0,0 +1,43 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homeManagerConfiguration rec {
+                    inherit system pkgs;
+
+                    username = "minion";
+                    homeDirectory = "/home/${username}";
+
+                    configuration = {
+                        impo
+                    }
+                }
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304112545.nix b/.history/flake_20220304112545.nix
new file mode 100644
index 0000000..32cd258
--- /dev/null
+++ b/.history/flake_20220304112545.nix
@@ -0,0 +1,45 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homeManagerConfiguration rec {
+                    inherit system pkgs;
+
+                    username = "minion";
+                    homeDirectory = "/home/${username}";
+
+                    configuration = {
+                        imports = [
+
+                        ];
+                    }
+                }
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304112549.nix b/.history/flake_20220304112549.nix
new file mode 100644
index 0000000..b7f5263
--- /dev/null
+++ b/.history/flake_20220304112549.nix
@@ -0,0 +1,45 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homeManagerConfiguration rec {
+                    inherit system pkgs;
+
+                    username = "minion";
+                    homeDirectory = "/home/${username}";
+
+                    configuration = {
+                        imports = [
+                            src/
+                        ];
+                    }
+                }
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304112554.nix b/.history/flake_20220304112554.nix
new file mode 100644
index 0000000..45c2dd2
--- /dev/null
+++ b/.history/flake_20220304112554.nix
@@ -0,0 +1,45 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homeManagerConfiguration rec {
+                    inherit system pkgs;
+
+                    username = "minion";
+                    homeDirectory = "/home/${username}";
+
+                    configuration = {
+                        imports = [
+                            src/home.nix
+                        ];
+                    }
+                }
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304112607.nix b/.history/flake_20220304112607.nix
new file mode 100644
index 0000000..cb85bd2
--- /dev/null
+++ b/.history/flake_20220304112607.nix
@@ -0,0 +1,47 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homeManagerConfiguration rec {
+                    inherit system pkgs;
+
+                    username = "minion";
+                    homeDirectory = "/home/${username}";
+
+                    configuration = {
+                        imports = [
+                            src/home.nix
+                        ];
+                    }
+
+                    
+                }
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304112614.nix b/.history/flake_20220304112614.nix
new file mode 100644
index 0000000..67e6bb6
--- /dev/null
+++ b/.history/flake_20220304112614.nix
@@ -0,0 +1,47 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homeManagerConfiguration rec {
+                    inherit system pkgs;
+
+                    username = "minion";
+                    homeDirectory = "/home/${username}";
+
+                    configuration = {
+                        imports = [
+                            src/home.nix
+                        ];
+                    }
+
+                    stateVersion = "21.11";
+                }
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304112616.nix b/.history/flake_20220304112616.nix
new file mode 100644
index 0000000..45c2dd2
--- /dev/null
+++ b/.history/flake_20220304112616.nix
@@ -0,0 +1,45 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homeManagerConfiguration rec {
+                    inherit system pkgs;
+
+                    username = "minion";
+                    homeDirectory = "/home/${username}";
+
+                    configuration = {
+                        imports = [
+                            src/home.nix
+                        ];
+                    }
+                }
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304112727.nix b/.history/flake_20220304112727.nix
new file mode 100644
index 0000000..51b9fc8
--- /dev/null
+++ b/.history/flake_20220304112727.nix
@@ -0,0 +1,47 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homeManagerConfiguration rec {
+                    inherit system pkgs;
+
+                    username = "minion";
+                    homeDirectory = "/home/${username}";
+
+                    configuration = {
+                        imports = [
+                            src/home.nix
+                        ];
+                    }
+
+                    stateVersion = "21.11"
+                }
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304112729.nix b/.history/flake_20220304112729.nix
new file mode 100644
index 0000000..67e6bb6
--- /dev/null
+++ b/.history/flake_20220304112729.nix
@@ -0,0 +1,47 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homeManagerConfiguration rec {
+                    inherit system pkgs;
+
+                    username = "minion";
+                    homeDirectory = "/home/${username}";
+
+                    configuration = {
+                        imports = [
+                            src/home.nix
+                        ];
+                    }
+
+                    stateVersion = "21.11";
+                }
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304112745.nix b/.history/flake_20220304112745.nix
new file mode 100644
index 0000000..fee069a
--- /dev/null
+++ b/.history/flake_20220304112745.nix
@@ -0,0 +1,47 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager, }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homeManagerConfiguration rec {
+                    inherit system pkgs;
+
+                    username = "minion";
+                    homeDirectory = "/home/${username}";
+
+                    configuration = {
+                        imports = [
+                            src/home.nix
+                        ];
+                    }
+
+                    stateVersion = "21.11";
+                }
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304112747.nix b/.history/flake_20220304112747.nix
new file mode 100644
index 0000000..67e6bb6
--- /dev/null
+++ b/.history/flake_20220304112747.nix
@@ -0,0 +1,47 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homeManagerConfiguration rec {
+                    inherit system pkgs;
+
+                    username = "minion";
+                    homeDirectory = "/home/${username}";
+
+                    configuration = {
+                        imports = [
+                            src/home.nix
+                        ];
+                    }
+
+                    stateVersion = "21.11";
+                }
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304112852.nix b/.history/flake_20220304112852.nix
new file mode 100644
index 0000000..43e9a15
--- /dev/null
+++ b/.history/flake_20220304112852.nix
@@ -0,0 +1,48 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                        src/mixins/stateVersion.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homeManagerConfiguration rec {
+                    inherit system pkgs;
+
+                    username = "minion";
+                    homeDirectory = "/home/${username}";
+
+                    configuration = {
+                        imports = [
+                            src/home.nix
+                        ];
+                    }
+
+                    stateVersion = "21.11";
+                }
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304112901.nix b/.history/flake_20220304112901.nix
new file mode 100644
index 0000000..e6c1cab
--- /dev/null
+++ b/.history/flake_20220304112901.nix
@@ -0,0 +1,49 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                        src/mixins/stateVersion.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homeManagerConfiguration rec {
+                    inherit system pkgs;
+
+                    username = "minion";
+                    homeDirectory = "/home/${username}";
+
+                    configuration = {
+                        imports = [
+                            src/home.nix
+                            src/mixins/stateVersion.nix
+                        ];
+                    }
+
+                    stateVersion = "21.11";
+                }
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304112915.nix b/.history/flake_20220304112915.nix
new file mode 100644
index 0000000..43e9a15
--- /dev/null
+++ b/.history/flake_20220304112915.nix
@@ -0,0 +1,48 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                        src/mixins/stateVersion.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homeManagerConfiguration rec {
+                    inherit system pkgs;
+
+                    username = "minion";
+                    homeDirectory = "/home/${username}";
+
+                    configuration = {
+                        imports = [
+                            src/home.nix
+                        ];
+                    }
+
+                    stateVersion = "21.11";
+                }
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304112919.nix b/.history/flake_20220304112919.nix
new file mode 100644
index 0000000..67e6bb6
--- /dev/null
+++ b/.history/flake_20220304112919.nix
@@ -0,0 +1,47 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homeManagerConfiguration rec {
+                    inherit system pkgs;
+
+                    username = "minion";
+                    homeDirectory = "/home/${username}";
+
+                    configuration = {
+                        imports = [
+                            src/home.nix
+                        ];
+                    }
+
+                    stateVersion = "21.11";
+                }
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304134640.nix b/.history/flake_20220304134640.nix
new file mode 100644
index 0000000..5d0eca8
--- /dev/null
+++ b/.history/flake_20220304134640.nix
@@ -0,0 +1,49 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+
+            variables = import ./
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homeManagerConfiguration rec {
+                    inherit system pkgs;
+
+                    username = "minion";
+                    homeDirectory = "/home/${username}";
+
+                    configuration = {
+                        imports = [
+                            src/home.nix
+                        ];
+                    }
+
+                    stateVersion = "21.11";
+                }
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304134643.nix b/.history/flake_20220304134643.nix
new file mode 100644
index 0000000..2994968
--- /dev/null
+++ b/.history/flake_20220304134643.nix
@@ -0,0 +1,49 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+
+            variables = import ./common/
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homeManagerConfiguration rec {
+                    inherit system pkgs;
+
+                    username = "minion";
+                    homeDirectory = "/home/${username}";
+
+                    configuration = {
+                        imports = [
+                            src/home.nix
+                        ];
+                    }
+
+                    stateVersion = "21.11";
+                }
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304134647.nix b/.history/flake_20220304134647.nix
new file mode 100644
index 0000000..d16948e
--- /dev/null
+++ b/.history/flake_20220304134647.nix
@@ -0,0 +1,49 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+
+            variables = import ./src/comm
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homeManagerConfiguration rec {
+                    inherit system pkgs;
+
+                    username = "minion";
+                    homeDirectory = "/home/${username}";
+
+                    configuration = {
+                        imports = [
+                            src/home.nix
+                        ];
+                    }
+
+                    stateVersion = "21.11";
+                }
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304134654.nix b/.history/flake_20220304134654.nix
new file mode 100644
index 0000000..85ba789
--- /dev/null
+++ b/.history/flake_20220304134654.nix
@@ -0,0 +1,49 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+
+            variables = import ./src/common/variables.nix;
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homeManagerConfiguration rec {
+                    inherit system pkgs;
+
+                    username = "minion";
+                    homeDirectory = "/home/${username}";
+
+                    configuration = {
+                        imports = [
+                            src/home.nix
+                        ];
+                    }
+
+                    stateVersion = "21.11";
+                }
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304134655.nix b/.history/flake_20220304134655.nix
new file mode 100644
index 0000000..eb7016e
--- /dev/null
+++ b/.history/flake_20220304134655.nix
@@ -0,0 +1,49 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+
+            variables = import ./src/common/variables.nix;a
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homeManagerConfiguration rec {
+                    inherit system pkgs;
+
+                    username = "minion";
+                    homeDirectory = "/home/${username}";
+
+                    configuration = {
+                        imports = [
+                            src/home.nix
+                        ];
+                    }
+
+                    stateVersion = "21.11";
+                }
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304134656.nix b/.history/flake_20220304134656.nix
new file mode 100644
index 0000000..85ba789
--- /dev/null
+++ b/.history/flake_20220304134656.nix
@@ -0,0 +1,49 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+
+            variables = import ./src/common/variables.nix;
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homeManagerConfiguration rec {
+                    inherit system pkgs;
+
+                    username = "minion";
+                    homeDirectory = "/home/${username}";
+
+                    configuration = {
+                        imports = [
+                            src/home.nix
+                        ];
+                    }
+
+                    stateVersion = "21.11";
+                }
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304134701.nix b/.history/flake_20220304134701.nix
new file mode 100644
index 0000000..e6fba26
--- /dev/null
+++ b/.history/flake_20220304134701.nix
@@ -0,0 +1,47 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+
+            variables = import ./src/common/variables.nix;
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homeManagerConfiguration rec {
+                    inherit system pkgs;
+
+                    username = "minion";
+                    homeDirectory = "/home/${username}";
+
+                    configuration = {
+                        imports = [
+                            src/home.nix
+                        ];
+                    }
+                }
+            }
+        };
+    };
+}
diff --git a/.history/flake_20220304134710.nix b/.history/flake_20220304134710.nix
new file mode 100644
index 0000000..7329556
--- /dev/null
+++ b/.history/flake_20220304134710.nix
@@ -0,0 +1,47 @@
+{
+    description = "Minion3665's NixFiles (since 2022-03-24)";
+
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
+
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
+
+            pkgs = nixpkgs {
+                inherit system;
+
+                config = { allowUnfree = true; };
+            };
+
+            variables = import ./src/common/variables.nix;
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homeManagerConfiguration rec {
+                    inherit system pkgs;
+
+                    username = variables.username;
+                    homeDirectory = "/home/${username}";
+
+                    configuration = {
+                        imports = [
+                            src/home.nix
+                        ];
+                    }
+                }
+            }
+        };
+    };
+}
diff --git a/.history/src/apps/personal/anytype_20220304211319.nix b/.history/src/apps/personal/anytype_20220304211319.nix
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/.history/src/apps/personal/anytype_20220304211319.nix
diff --git a/.history/src/apps/personal/anytype_20220304211358.nix b/.history/src/apps/personal/anytype_20220304211358.nix
new file mode 100644
index 0000000..6402a59
--- /dev/null
+++ b/.history/src/apps/personal/anytype_20220304211358.nix
@@ -0,0 +1,40 @@
+final: prev: let
+  build = "24";
+  sha = "sha256-QyexUZNn7QGHjXYO/+1kUebTmAzdVpwG9Ile8Uh3i8Q=";
+
+  pname = "anytype";
+  name = "${pname}-${build}";
+
+  src = final.fetchurl {
+#    url = "https://download.anytype.io/?action=download&key=desktop&id=${build}";
+    url = "https://at9412003.fra1.digitaloceanspaces.com/Anytype-0.24.0.AppImage";
+    sha256 = sha;
+    name = "AnyType-${build}.AppImage";
+  };
+
+  appimageContents = final.appimageTools.extractType2 { inherit name src; };
+in {
+  anytype-latest = prev.appimageTools.wrapType2 {
+    inherit name src;
+
+    extraPkgs = pkgs: (prev.appimageTools.defaultFhsEnvArgs.multiPkgs pkgs)
+      ++ [ pkgs.libsecret ];
+
+    extraInstallCommands = ''
+      mv $out/bin/${name} $out/bin/${pname}
+      install -m 444 -D ${appimageContents}/anytype2.desktop -t $out/share/applications
+      substituteInPlace $out/share/applications/anytype2.desktop \
+      --replace 'Exec=AppRun' 'Exec=${pname}'
+      install -m 444 -D ${appimageContents}/usr/share/icons/hicolor/0x0/apps/anytype2.png \
+        $out/share/icons/hicolor/512x512/apps/anytype2.png
+    '';
+
+    meta = with prev.lib; {
+      description = "P2P note-taking tool";
+      homepage = "https://anytype.io/";
+      license = licenses.unfree;
+      maintainers = with maintainers; [ bbigras ];
+      platforms = [ "x86_64-linux" ];
+    };
+  };
+}
diff --git a/.history/src/apps/personal/anytype_20220304211422.nix b/.history/src/apps/personal/anytype_20220304211422.nix
new file mode 100644
index 0000000..a8ddc33
--- /dev/null
+++ b/.history/src/apps/personal/anytype_20220304211422.nix
@@ -0,0 +1,40 @@
+final: prev: let
+  build = "24";
+  sha = "sha256-QyexUZNn7QGHjXYO/+1kUebTmAzdVpwG9Ile8Uh3i8Q=";
+
+  pname = "anytype";
+  name = "${pname}-${build}";
+
+  src = final.fetchurl {
+    url = "https://download.anytype.io/?action=download&key=desktop&id=${build}";
+    url = "https://at9412003.fra1.digitaloceanspaces.com/Anytype-0.24.0.AppImage";
+    sha256 = sha;
+    name = "AnyType-${build}.AppImage";
+  };
+
+  appimageContents = final.appimageTools.extractType2 { inherit name src; };
+in {
+  anytype-latest = prev.appimageTools.wrapType2 {
+    inherit name src;
+
+    extraPkgs = pkgs: (prev.appimageTools.defaultFhsEnvArgs.multiPkgs pkgs)
+      ++ [ pkgs.libsecret ];
+
+    extraInstallCommands = ''
+      mv $out/bin/${name} $out/bin/${pname}
+      install -m 444 -D ${appimageContents}/anytype2.desktop -t $out/share/applications
+      substituteInPlace $out/share/applications/anytype2.desktop \
+      --replace 'Exec=AppRun' 'Exec=${pname}'
+      install -m 444 -D ${appimageContents}/usr/share/icons/hicolor/0x0/apps/anytype2.png \
+        $out/share/icons/hicolor/512x512/apps/anytype2.png
+    '';
+
+    meta = with prev.lib; {
+      description = "P2P note-taking tool";
+      homepage = "https://anytype.io/";
+      license = licenses.unfree;
+      maintainers = with maintainers; [ bbigras ];
+      platforms = [ "x86_64-linux" ];
+    };
+  };
+}
diff --git a/.history/src/apps/personal/anytype_20220304211424.nix b/.history/src/apps/personal/anytype_20220304211424.nix
new file mode 100644
index 0000000..76e526c
--- /dev/null
+++ b/.history/src/apps/personal/anytype_20220304211424.nix
@@ -0,0 +1,39 @@
+final: prev: let
+  build = "24";
+  sha = "sha256-QyexUZNn7QGHjXYO/+1kUebTmAzdVpwG9Ile8Uh3i8Q=";
+
+  pname = "anytype";
+  name = "${pname}-${build}";
+
+  src = final.fetchurl {
+    url = "https://download.anytype.io/?action=download&key=desktop&id=${build}";
+    sha256 = sha;
+    name = "AnyType-${build}.AppImage";
+  };
+
+  appimageContents = final.appimageTools.extractType2 { inherit name src; };
+in {
+  anytype-latest = prev.appimageTools.wrapType2 {
+    inherit name src;
+
+    extraPkgs = pkgs: (prev.appimageTools.defaultFhsEnvArgs.multiPkgs pkgs)
+      ++ [ pkgs.libsecret ];
+
+    extraInstallCommands = ''
+      mv $out/bin/${name} $out/bin/${pname}
+      install -m 444 -D ${appimageContents}/anytype2.desktop -t $out/share/applications
+      substituteInPlace $out/share/applications/anytype2.desktop \
+      --replace 'Exec=AppRun' 'Exec=${pname}'
+      install -m 444 -D ${appimageContents}/usr/share/icons/hicolor/0x0/apps/anytype2.png \
+        $out/share/icons/hicolor/512x512/apps/anytype2.png
+    '';
+
+    meta = with prev.lib; {
+      description = "P2P note-taking tool";
+      homepage = "https://anytype.io/";
+      license = licenses.unfree;
+      maintainers = with maintainers; [ bbigras ];
+      platforms = [ "x86_64-linux" ];
+    };
+  };
+}
diff --git a/.history/src/apps/personal/anytype_20220304211602.nix b/.history/src/apps/personal/anytype_20220304211602.nix
new file mode 100644
index 0000000..f38ff62
--- /dev/null
+++ b/.history/src/apps/personal/anytype_20220304211602.nix
@@ -0,0 +1,39 @@
+final: prev: let
+  build = "24";
+  sha = "sha256-QyexUZNn7QGHjXYO/+1kUebTmAzdVpwG9Ile8Uh3i8Q=";
+
+  pname = "anytype";
+  name = "${pname}-${build}";
+
+  src = final.fetchurl {https://download.anytype.io/en?action=download&key=desktop&id=57693545
+    url = "https://download.anytype.io/?action=download&key=desktop&id=${build}";
+    sha256 = sha;
+    name = "AnyType-${build}.AppImage";
+  };
+
+  appimageContents = final.appimageTools.extractType2 { inherit name src; };
+in {
+  anytype-latest = prev.appimageTools.wrapType2 {
+    inherit name src;
+
+    extraPkgs = pkgs: (prev.appimageTools.defaultFhsEnvArgs.multiPkgs pkgs)
+      ++ [ pkgs.libsecret ];
+
+    extraInstallCommands = ''
+      mv $out/bin/${name} $out/bin/${pname}
+      install -m 444 -D ${appimageContents}/anytype2.desktop -t $out/share/applications
+      substituteInPlace $out/share/applications/anytype2.desktop \
+      --replace 'Exec=AppRun' 'Exec=${pname}'
+      install -m 444 -D ${appimageContents}/usr/share/icons/hicolor/0x0/apps/anytype2.png \
+        $out/share/icons/hicolor/512x512/apps/anytype2.png
+    '';
+
+    meta = with prev.lib; {
+      description = "P2P note-taking tool";
+      homepage = "https://anytype.io/";
+      license = licenses.unfree;
+      maintainers = with maintainers; [ bbigras ];
+      platforms = [ "x86_64-linux" ];
+    };
+  };
+}
diff --git a/.history/src/apps/personal/anytype_20220304211604.nix b/.history/src/apps/personal/anytype_20220304211604.nix
new file mode 100644
index 0000000..76e526c
--- /dev/null
+++ b/.history/src/apps/personal/anytype_20220304211604.nix
@@ -0,0 +1,39 @@
+final: prev: let
+  build = "24";
+  sha = "sha256-QyexUZNn7QGHjXYO/+1kUebTmAzdVpwG9Ile8Uh3i8Q=";
+
+  pname = "anytype";
+  name = "${pname}-${build}";
+
+  src = final.fetchurl {
+    url = "https://download.anytype.io/?action=download&key=desktop&id=${build}";
+    sha256 = sha;
+    name = "AnyType-${build}.AppImage";
+  };
+
+  appimageContents = final.appimageTools.extractType2 { inherit name src; };
+in {
+  anytype-latest = prev.appimageTools.wrapType2 {
+    inherit name src;
+
+    extraPkgs = pkgs: (prev.appimageTools.defaultFhsEnvArgs.multiPkgs pkgs)
+      ++ [ pkgs.libsecret ];
+
+    extraInstallCommands = ''
+      mv $out/bin/${name} $out/bin/${pname}
+      install -m 444 -D ${appimageContents}/anytype2.desktop -t $out/share/applications
+      substituteInPlace $out/share/applications/anytype2.desktop \
+      --replace 'Exec=AppRun' 'Exec=${pname}'
+      install -m 444 -D ${appimageContents}/usr/share/icons/hicolor/0x0/apps/anytype2.png \
+        $out/share/icons/hicolor/512x512/apps/anytype2.png
+    '';
+
+    meta = with prev.lib; {
+      description = "P2P note-taking tool";
+      homepage = "https://anytype.io/";
+      license = licenses.unfree;
+      maintainers = with maintainers; [ bbigras ];
+      platforms = [ "x86_64-linux" ];
+    };
+  };
+}
diff --git a/.history/src/apps/personal/anytype_20220304211606.nix b/.history/src/apps/personal/anytype_20220304211606.nix
new file mode 100644
index 0000000..05e6715
--- /dev/null
+++ b/.history/src/apps/personal/anytype_20220304211606.nix
@@ -0,0 +1,39 @@
+final: prev: let
+  build = "https://download.anytype.io/en?action=download&key=desktop&id=57693545";
+  sha = "sha256-QyexUZNn7QGHjXYO/+1kUebTmAzdVpwG9Ile8Uh3i8Q=";
+
+  pname = "anytype";
+  name = "${pname}-${build}";
+
+  src = final.fetchurl {
+    url = "https://download.anytype.io/?action=download&key=desktop&id=${build}";
+    sha256 = sha;
+    name = "AnyType-${build}.AppImage";
+  };
+
+  appimageContents = final.appimageTools.extractType2 { inherit name src; };
+in {
+  anytype-latest = prev.appimageTools.wrapType2 {
+    inherit name src;
+
+    extraPkgs = pkgs: (prev.appimageTools.defaultFhsEnvArgs.multiPkgs pkgs)
+      ++ [ pkgs.libsecret ];
+
+    extraInstallCommands = ''
+      mv $out/bin/${name} $out/bin/${pname}
+      install -m 444 -D ${appimageContents}/anytype2.desktop -t $out/share/applications
+      substituteInPlace $out/share/applications/anytype2.desktop \
+      --replace 'Exec=AppRun' 'Exec=${pname}'
+      install -m 444 -D ${appimageContents}/usr/share/icons/hicolor/0x0/apps/anytype2.png \
+        $out/share/icons/hicolor/512x512/apps/anytype2.png
+    '';
+
+    meta = with prev.lib; {
+      description = "P2P note-taking tool";
+      homepage = "https://anytype.io/";
+      license = licenses.unfree;
+      maintainers = with maintainers; [ bbigras ];
+      platforms = [ "x86_64-linux" ];
+    };
+  };
+}
diff --git a/.history/src/apps/personal/anytype_20220304211610.nix b/.history/src/apps/personal/anytype_20220304211610.nix
new file mode 100644
index 0000000..db12fe4
--- /dev/null
+++ b/.history/src/apps/personal/anytype_20220304211610.nix
@@ -0,0 +1,39 @@
+final: prev: let
+  build = "57693545";
+  sha = "sha256-QyexUZNn7QGHjXYO/+1kUebTmAzdVpwG9Ile8Uh3i8Q=";
+
+  pname = "anytype";
+  name = "${pname}-${build}";
+
+  src = final.fetchurl {
+    url = "https://download.anytype.io/?action=download&key=desktop&id=${build}";
+    sha256 = sha;
+    name = "AnyType-${build}.AppImage";
+  };
+
+  appimageContents = final.appimageTools.extractType2 { inherit name src; };
+in {
+  anytype-latest = prev.appimageTools.wrapType2 {
+    inherit name src;
+
+    extraPkgs = pkgs: (prev.appimageTools.defaultFhsEnvArgs.multiPkgs pkgs)
+      ++ [ pkgs.libsecret ];
+
+    extraInstallCommands = ''
+      mv $out/bin/${name} $out/bin/${pname}
+      install -m 444 -D ${appimageContents}/anytype2.desktop -t $out/share/applications
+      substituteInPlace $out/share/applications/anytype2.desktop \
+      --replace 'Exec=AppRun' 'Exec=${pname}'
+      install -m 444 -D ${appimageContents}/usr/share/icons/hicolor/0x0/apps/anytype2.png \
+        $out/share/icons/hicolor/512x512/apps/anytype2.png
+    '';
+
+    meta = with prev.lib; {
+      description = "P2P note-taking tool";
+      homepage = "https://anytype.io/";
+      license = licenses.unfree;
+      maintainers = with maintainers; [ bbigras ];
+      platforms = [ "x86_64-linux" ];
+    };
+  };
+}
diff --git a/.history/src/apps/personal/anytype_20220304211611.nix b/.history/src/apps/personal/anytype_20220304211611.nix
new file mode 100644
index 0000000..ee6fb56
--- /dev/null
+++ b/.history/src/apps/personal/anytype_20220304211611.nix
@@ -0,0 +1,39 @@
+final: prev: let
+  build = "57693545";
+  sha = "sha256-ayexUZNn7QGHjXYO/+1kUebTmAzdVpwG9Ile8Uh3i8Q=";
+
+  pname = "anytype";
+  name = "${pname}-${build}";
+
+  src = final.fetchurl {
+    url = "https://download.anytype.io/?action=download&key=desktop&id=${build}";
+    sha256 = sha;
+    name = "AnyType-${build}.AppImage";
+  };
+
+  appimageContents = final.appimageTools.extractType2 { inherit name src; };
+in {
+  anytype-latest = prev.appimageTools.wrapType2 {
+    inherit name src;
+
+    extraPkgs = pkgs: (prev.appimageTools.defaultFhsEnvArgs.multiPkgs pkgs)
+      ++ [ pkgs.libsecret ];
+
+    extraInstallCommands = ''
+      mv $out/bin/${name} $out/bin/${pname}
+      install -m 444 -D ${appimageContents}/anytype2.desktop -t $out/share/applications
+      substituteInPlace $out/share/applications/anytype2.desktop \
+      --replace 'Exec=AppRun' 'Exec=${pname}'
+      install -m 444 -D ${appimageContents}/usr/share/icons/hicolor/0x0/apps/anytype2.png \
+        $out/share/icons/hicolor/512x512/apps/anytype2.png
+    '';
+
+    meta = with prev.lib; {
+      description = "P2P note-taking tool";
+      homepage = "https://anytype.io/";
+      license = licenses.unfree;
+      maintainers = with maintainers; [ bbigras ];
+      platforms = [ "x86_64-linux" ];
+    };
+  };
+}
diff --git a/.history/src/apps/personal/anytype_20220304211645.nix b/.history/src/apps/personal/anytype_20220304211645.nix
new file mode 100644
index 0000000..e40117d
--- /dev/null
+++ b/.history/src/apps/personal/anytype_20220304211645.nix
@@ -0,0 +1,39 @@
+final: prev: let
+  build = "57693545";
+  sha = "sha256-ayexUZNn7QGHjXYO/+1kUebTmAzdVpwG9Ile8Uh3i8Q=";
+
+  pname = "anytype";
+  name = "${pname}-${build}";
+
+  src = final.fetchurl {
+    url = "https://download.anytype.io/?action=download&key=desktop&id=${build}";
+    sha256 = sha;
+    name = "AnyType-${build}.AppImage";
+  };
+
+  appimageContents = final.appimageTools.extractType2 { inherit name src; };
+in {
+  anytype = prev.appimageTools.wrapType2 {
+    inherit name src;
+
+    extraPkgs = pkgs: (prev.appimageTools.defaultFhsEnvArgs.multiPkgs pkgs)
+      ++ [ pkgs.libsecret ];
+
+    extraInstallCommands = ''
+      mv $out/bin/${name} $out/bin/${pname}
+      install -m 444 -D ${appimageContents}/anytype2.desktop -t $out/share/applications
+      substituteInPlace $out/share/applications/anytype2.desktop \
+      --replace 'Exec=AppRun' 'Exec=${pname}'
+      install -m 444 -D ${appimageContents}/usr/share/icons/hicolor/0x0/apps/anytype2.png \
+        $out/share/icons/hicolor/512x512/apps/anytype2.png
+    '';
+
+    meta = with prev.lib; {
+      description = "P2P note-taking tool";
+      homepage = "https://anytype.io/";
+      license = licenses.unfree;
+      maintainers = with maintainers; [ bbigras ];
+      platforms = [ "x86_64-linux" ];
+    };
+  };
+}
diff --git a/.history/src/apps/personal/git_20220304220916.nix b/.history/src/apps/personal/git_20220304220916.nix
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/.history/src/apps/personal/git_20220304220916.nix
diff --git a/.history/src/apps/personal/git_20220304220932.nix b/.history/src/apps/personal/git_20220304220932.nix
new file mode 100644
index 0000000..1f1f129
--- /dev/null
+++ b/.history/src/apps/personal/git_20220304220932.nix
@@ -0,0 +1,39 @@
+{ config, pkgs, nixpkgs }: {
+    programs.zsh = {
+        enable = true;
+        oh-my-zsh = {
+            enable = true;
+            plugins = [ "git" ];
+            theme = "crunch";
+        };
+        history = {
+            size = 10000;
+            path = "${config.xdg.dataHome}/zsh/history";
+            expireDuplicatesFirst = true;
+            extended = true;
+        };
+        initExtra = ''
+            bindkey "\'\'$\{key[Up]}" up-line-or-search
+
+            command_not_found_handler ()
+            {
+                local p='/nix/store/ycclzpk99snlrk8sg9n4j8pm1927gavw-command-not-found/bin/command-not-found';
+                if [ -x "$p" ] && [ -f '/nix/var/nix/profiles/per-user/root/channels/nixos/programs.sqlite' ]; then
+                    "$p" "$@" 2>&1 | sed -r 's/nix-shell -p (\S+)/nix shell nixpkgs#\1/g' 1>&2;
+                  if [ $? = 126 ]; then
+                        "$@";
+                    else
+                        return 127;
+                    fi;
+                else
+                    echo "$1: command not found" 1>&2;
+                    return 127;
+                fi
+            }
+        '';
+        enableSyntaxHighlighting = true;
+        enableAutosuggestions = true;
+        autocd = true;
+        dotDir = ".local/share/zsh";
+    };
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/git_20220304220942.nix b/.history/src/apps/personal/git_20220304220942.nix
new file mode 100644
index 0000000..65258aa
--- /dev/null
+++ b/.history/src/apps/personal/git_20220304220942.nix
@@ -0,0 +1,25 @@
+{ config, pkgs, nixpkgs }: {
+  programs.git = {
+    enable = true;
+
+    userName = "Skyler Turner";
+    userEmail = "skyler@clicksminuteper.net";
+
+    signing = {
+      key = "24D31D3B1B986F33";
+      signByDefault = true;
+      gpgPath = "gpg2";
+    };
+
+    lfs.enable = true;
+    delta.enable = true;
+
+    extraConfig = {
+      init.defaultBranch = "development";
+      color.ui = "auto";
+      core.autocrlf = "input";
+      pull.rebase = false;
+    };
+  };
+
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/git_20220304220947.nix b/.history/src/apps/personal/git_20220304220947.nix
new file mode 100644
index 0000000..2183edc
--- /dev/null
+++ b/.history/src/apps/personal/git_20220304220947.nix
@@ -0,0 +1,24 @@
+{ config, pkgs, nixpkgs }: {
+    programs.git = {
+      enable = true;
+
+      userName = "Skyler Turner";
+      userEmail = "skyler@clicksminuteper.net";
+
+      signing = {
+        key = "24D31D3B1B986F33";
+        signByDefault = true;
+        gpgPath = "gpg2";
+      };
+
+      lfs.enable = true;
+      delta.enable = true;
+
+      extraConfig = {
+        init.defaultBranch = "development";
+        color.ui = "auto";
+        core.autocrlf = "input";
+        pull.rebase = false;
+      };
+    };
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/git_20220304220950.nix b/.history/src/apps/personal/git_20220304220950.nix
new file mode 100644
index 0000000..2f4459e
--- /dev/null
+++ b/.history/src/apps/personal/git_20220304220950.nix
@@ -0,0 +1,24 @@
+{ config, pkgs, nixpkgs }: {
+    programs.git = {
+        enable = true;
+
+        userName = "Skyler Turner";
+        userEmail = "skyler@clicksminuteper.net";
+
+        signing = {
+          key = "24D31D3B1B986F33";
+          signByDefault = true;
+          gpgPath = "gpg2";
+        };
+
+        lfs.enable = true;
+        delta.enable = true;
+
+        extraConfig = {
+          init.defaultBranch = "development";
+          color.ui = "auto";
+          core.autocrlf = "input";
+          pull.rebase = false;
+        };
+    };
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/git_20220304220951.nix b/.history/src/apps/personal/git_20220304220951.nix
new file mode 100644
index 0000000..91998c2
--- /dev/null
+++ b/.history/src/apps/personal/git_20220304220951.nix
@@ -0,0 +1,24 @@
+{ config, pkgs, nixpkgs }: {
+    programs.git = {
+        enable = true;
+
+        userName = "Skyler Turner";
+        userEmail = "skyler@clicksminuteper.net";
+
+        signing = {
+          key = "24D31D3B1B986F33";
+          signByDefault = true;
+          gpgPath = "gpg2";
+        };
+
+        lfs.enable = true;
+        delta.enable = true;
+
+        extraConfig = {
+            init.defaultBranch = "development";
+            color.ui = "auto";
+            core.autocrlf = "input";
+            pull.rebase = false;
+        };
+    };
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/git_20220304220953.nix b/.history/src/apps/personal/git_20220304220953.nix
new file mode 100644
index 0000000..37a52ea
--- /dev/null
+++ b/.history/src/apps/personal/git_20220304220953.nix
@@ -0,0 +1,24 @@
+{ config, pkgs, nixpkgs }: {
+    programs.git = {
+        enable = true;
+
+        userName = "Skyler Turner";
+        userEmail = "skyler@clicksminuteper.net";
+
+        signing = {
+            key = "24D31D3B1B986F33";
+            signByDefault = true;
+            gpgPath = "gpg2";
+        };
+
+        lfs.enable = true;
+        delta.enable = true;
+
+        extraConfig = {
+            init.defaultBranch = "development";
+            color.ui = "auto";
+            core.autocrlf = "input";
+            pull.rebase = false;
+        };
+    };
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/go_20220304220326.nix b/.history/src/apps/personal/go_20220304220326.nix
new file mode 100644
index 0000000..e1b2c2e
--- /dev/null
+++ b/.history/src/apps/personal/go_20220304220326.nix
@@ -0,0 +1,4 @@
+{ config, pkgs, nixpkgs }: {
+    programs.vscode.enable = true;
+    programs.vscode.package = pkgs.vscode-fhs;
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/go_20220304220337.nix b/.history/src/apps/personal/go_20220304220337.nix
new file mode 100644
index 0000000..dcf5a90
--- /dev/null
+++ b/.history/src/apps/personal/go_20220304220337.nix
@@ -0,0 +1,3 @@
+{ config, pkgs, nixpkgs }: {
+    programs.go.enable = true;
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/gpg_20220304220406.nix b/.history/src/apps/personal/gpg_20220304220406.nix
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/.history/src/apps/personal/gpg_20220304220406.nix
diff --git a/.history/src/apps/personal/gpg_20220304220413.nix b/.history/src/apps/personal/gpg_20220304220413.nix
new file mode 100644
index 0000000..e1b2c2e
--- /dev/null
+++ b/.history/src/apps/personal/gpg_20220304220413.nix
@@ -0,0 +1,4 @@
+{ config, pkgs, nixpkgs }: {
+    programs.vscode.enable = true;
+    programs.vscode.package = pkgs.vscode-fhs;
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/gpg_20220304220421.nix b/.history/src/apps/personal/gpg_20220304220421.nix
new file mode 100644
index 0000000..8581c30
--- /dev/null
+++ b/.history/src/apps/personal/gpg_20220304220421.nix
@@ -0,0 +1,3 @@
+{ config, pkgs, nixpkgs }: {
+    programs.gpg.enable = true;
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/gpg_20220304220422.nix b/.history/src/apps/personal/gpg_20220304220422.nix
new file mode 100644
index 0000000..7bf188d
--- /dev/null
+++ b/.history/src/apps/personal/gpg_20220304220422.nix
@@ -0,0 +1,4 @@
+{ config, pkgs, nixpkgs }: {
+    programs.gpg.enable = true;
+    
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/gpg_20220304220437.nix b/.history/src/apps/personal/gpg_20220304220437.nix
new file mode 100644
index 0000000..1972663
--- /dev/null
+++ b/.history/src/apps/personal/gpg_20220304220437.nix
@@ -0,0 +1,6 @@
+{ config, pkgs, nixpkgs }: {
+    programs.gpg.enable = true;
+    services.gpg-agent = {
+      
+    }
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/gpg_20220304220438.nix b/.history/src/apps/personal/gpg_20220304220438.nix
new file mode 100644
index 0000000..383089e
--- /dev/null
+++ b/.history/src/apps/personal/gpg_20220304220438.nix
@@ -0,0 +1,6 @@
+{ config, pkgs, nixpkgs }: {
+    programs.gpg.enable = true;
+    services.gpg-agent = {
+
+    };
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/gpg_20220304220445.nix b/.history/src/apps/personal/gpg_20220304220445.nix
new file mode 100644
index 0000000..e567835
--- /dev/null
+++ b/.history/src/apps/personal/gpg_20220304220445.nix
@@ -0,0 +1,7 @@
+{ config, pkgs, nixpkgs }: {
+    programs.gpg.enable = true;
+    services.gpg-agent = {
+        enable = true;
+        pine
+    };
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/gpg_20220304220447.nix b/.history/src/apps/personal/gpg_20220304220447.nix
new file mode 100644
index 0000000..cbf0b61
--- /dev/null
+++ b/.history/src/apps/personal/gpg_20220304220447.nix
@@ -0,0 +1,7 @@
+{ config, pkgs, nixpkgs }: {
+    programs.gpg.enable = true;
+    services.gpg-agent = {
+        enable = true;
+        pinentryFlavor = "qt";
+    };
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/gpg_20220304220633.nix b/.history/src/apps/personal/gpg_20220304220633.nix
new file mode 100644
index 0000000..f33c7f6
--- /dev/null
+++ b/.history/src/apps/personal/gpg_20220304220633.nix
@@ -0,0 +1,9 @@
+{ config, pkgs, nixpkgs }: {
+    programs.gpg.enable = true;
+    services.gpg-agent = {
+        enable = true;
+        pinentryFlavor = "qt";
+    };
+
+    
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/gpg_20220304220644.nix b/.history/src/apps/personal/gpg_20220304220644.nix
new file mode 100644
index 0000000..9d66503
--- /dev/null
+++ b/.history/src/apps/personal/gpg_20220304220644.nix
@@ -0,0 +1,11 @@
+{ config, pkgs, nixpkgs }: {
+    programs.gpg.enable = true;
+    services.gpg-agent = {
+        enable = true;
+        pinentryFlavor = "qt";
+    };
+
+    home.packages = with pkgs; [
+      
+    ]
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/gpg_20220304220646.nix b/.history/src/apps/personal/gpg_20220304220646.nix
new file mode 100644
index 0000000..71b5dba
--- /dev/null
+++ b/.history/src/apps/personal/gpg_20220304220646.nix
@@ -0,0 +1,11 @@
+{ config, pkgs, nixpkgs }: {
+    programs.gpg.enable = true;
+    services.gpg-agent = {
+        enable = true;
+        pinentryFlavor = "qt";
+    };
+
+    home.packages = with pkgs; [
+        pinentry_qt
+    ];
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/nodejs_20220304214343.nix b/.history/src/apps/personal/nodejs_20220304214343.nix
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/.history/src/apps/personal/nodejs_20220304214343.nix
diff --git a/.history/src/apps/personal/nodejs_20220304214350.nix b/.history/src/apps/personal/nodejs_20220304214350.nix
new file mode 100644
index 0000000..525c1c7
--- /dev/null
+++ b/.history/src/apps/personal/nodejs_20220304214350.nix
@@ -0,0 +1,7 @@
+{ config, pkgs, nixpkgs }: {
+    home.packages = with pkgs; [
+        spotify
+    ];
+
+    programs.steam.enable = true;
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/nodejs_20220304214353.nix b/.history/src/apps/personal/nodejs_20220304214353.nix
new file mode 100644
index 0000000..ad573c5
--- /dev/null
+++ b/.history/src/apps/personal/nodejs_20220304214353.nix
@@ -0,0 +1,7 @@
+{ config, pkgs, nixpkgs }: {
+    home.packages = with pkgs; [
+        node
+    ];
+
+    programs.steam.enable = true;
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/nodejs_20220304214354.nix b/.history/src/apps/personal/nodejs_20220304214354.nix
new file mode 100644
index 0000000..b8ed6ac
--- /dev/null
+++ b/.history/src/apps/personal/nodejs_20220304214354.nix
@@ -0,0 +1,7 @@
+{ config, pkgs, nixpkgs }: {
+    home.packages = with pkgs; [
+        nodejs-17_x
+    ];
+
+    programs.steam.enable = true;
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/nodejs_20220304215719.nix b/.history/src/apps/personal/nodejs_20220304215719.nix
new file mode 100644
index 0000000..b8ed6ac
--- /dev/null
+++ b/.history/src/apps/personal/nodejs_20220304215719.nix
@@ -0,0 +1,7 @@
+{ config, pkgs, nixpkgs }: {
+    home.packages = with pkgs; [
+        nodejs-17_x
+    ];
+
+    programs.steam.enable = true;
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/overlay/anytype_20220304211712.nix b/.history/src/apps/personal/overlay/anytype_20220304211712.nix
new file mode 100644
index 0000000..e40117d
--- /dev/null
+++ b/.history/src/apps/personal/overlay/anytype_20220304211712.nix
@@ -0,0 +1,39 @@
+final: prev: let
+  build = "57693545";
+  sha = "sha256-ayexUZNn7QGHjXYO/+1kUebTmAzdVpwG9Ile8Uh3i8Q=";
+
+  pname = "anytype";
+  name = "${pname}-${build}";
+
+  src = final.fetchurl {
+    url = "https://download.anytype.io/?action=download&key=desktop&id=${build}";
+    sha256 = sha;
+    name = "AnyType-${build}.AppImage";
+  };
+
+  appimageContents = final.appimageTools.extractType2 { inherit name src; };
+in {
+  anytype = prev.appimageTools.wrapType2 {
+    inherit name src;
+
+    extraPkgs = pkgs: (prev.appimageTools.defaultFhsEnvArgs.multiPkgs pkgs)
+      ++ [ pkgs.libsecret ];
+
+    extraInstallCommands = ''
+      mv $out/bin/${name} $out/bin/${pname}
+      install -m 444 -D ${appimageContents}/anytype2.desktop -t $out/share/applications
+      substituteInPlace $out/share/applications/anytype2.desktop \
+      --replace 'Exec=AppRun' 'Exec=${pname}'
+      install -m 444 -D ${appimageContents}/usr/share/icons/hicolor/0x0/apps/anytype2.png \
+        $out/share/icons/hicolor/512x512/apps/anytype2.png
+    '';
+
+    meta = with prev.lib; {
+      description = "P2P note-taking tool";
+      homepage = "https://anytype.io/";
+      license = licenses.unfree;
+      maintainers = with maintainers; [ bbigras ];
+      platforms = [ "x86_64-linux" ];
+    };
+  };
+}
diff --git a/.history/src/apps/personal/overlay/anytype_20220304211947.nix b/.history/src/apps/personal/overlay/anytype_20220304211947.nix
new file mode 100644
index 0000000..e40117d
--- /dev/null
+++ b/.history/src/apps/personal/overlay/anytype_20220304211947.nix
@@ -0,0 +1,39 @@
+final: prev: let
+  build = "57693545";
+  sha = "sha256-ayexUZNn7QGHjXYO/+1kUebTmAzdVpwG9Ile8Uh3i8Q=";
+
+  pname = "anytype";
+  name = "${pname}-${build}";
+
+  src = final.fetchurl {
+    url = "https://download.anytype.io/?action=download&key=desktop&id=${build}";
+    sha256 = sha;
+    name = "AnyType-${build}.AppImage";
+  };
+
+  appimageContents = final.appimageTools.extractType2 { inherit name src; };
+in {
+  anytype = prev.appimageTools.wrapType2 {
+    inherit name src;
+
+    extraPkgs = pkgs: (prev.appimageTools.defaultFhsEnvArgs.multiPkgs pkgs)
+      ++ [ pkgs.libsecret ];
+
+    extraInstallCommands = ''
+      mv $out/bin/${name} $out/bin/${pname}
+      install -m 444 -D ${appimageContents}/anytype2.desktop -t $out/share/applications
+      substituteInPlace $out/share/applications/anytype2.desktop \
+      --replace 'Exec=AppRun' 'Exec=${pname}'
+      install -m 444 -D ${appimageContents}/usr/share/icons/hicolor/0x0/apps/anytype2.png \
+        $out/share/icons/hicolor/512x512/apps/anytype2.png
+    '';
+
+    meta = with prev.lib; {
+      description = "P2P note-taking tool";
+      homepage = "https://anytype.io/";
+      license = licenses.unfree;
+      maintainers = with maintainers; [ bbigras ];
+      platforms = [ "x86_64-linux" ];
+    };
+  };
+}
diff --git a/.history/src/apps/personal/overlay/anytype_20220304211955.nix b/.history/src/apps/personal/overlay/anytype_20220304211955.nix
new file mode 100644
index 0000000..e40117d
--- /dev/null
+++ b/.history/src/apps/personal/overlay/anytype_20220304211955.nix
@@ -0,0 +1,39 @@
+final: prev: let
+  build = "57693545";
+  sha = "sha256-ayexUZNn7QGHjXYO/+1kUebTmAzdVpwG9Ile8Uh3i8Q=";
+
+  pname = "anytype";
+  name = "${pname}-${build}";
+
+  src = final.fetchurl {
+    url = "https://download.anytype.io/?action=download&key=desktop&id=${build}";
+    sha256 = sha;
+    name = "AnyType-${build}.AppImage";
+  };
+
+  appimageContents = final.appimageTools.extractType2 { inherit name src; };
+in {
+  anytype = prev.appimageTools.wrapType2 {
+    inherit name src;
+
+    extraPkgs = pkgs: (prev.appimageTools.defaultFhsEnvArgs.multiPkgs pkgs)
+      ++ [ pkgs.libsecret ];
+
+    extraInstallCommands = ''
+      mv $out/bin/${name} $out/bin/${pname}
+      install -m 444 -D ${appimageContents}/anytype2.desktop -t $out/share/applications
+      substituteInPlace $out/share/applications/anytype2.desktop \
+      --replace 'Exec=AppRun' 'Exec=${pname}'
+      install -m 444 -D ${appimageContents}/usr/share/icons/hicolor/0x0/apps/anytype2.png \
+        $out/share/icons/hicolor/512x512/apps/anytype2.png
+    '';
+
+    meta = with prev.lib; {
+      description = "P2P note-taking tool";
+      homepage = "https://anytype.io/";
+      license = licenses.unfree;
+      maintainers = with maintainers; [ bbigras ];
+      platforms = [ "x86_64-linux" ];
+    };
+  };
+}
diff --git a/.history/src/apps/personal/overlay/anytype_20220304214335.nix b/.history/src/apps/personal/overlay/anytype_20220304214335.nix
new file mode 100644
index 0000000..e40117d
--- /dev/null
+++ b/.history/src/apps/personal/overlay/anytype_20220304214335.nix
@@ -0,0 +1,39 @@
+final: prev: let
+  build = "57693545";
+  sha = "sha256-ayexUZNn7QGHjXYO/+1kUebTmAzdVpwG9Ile8Uh3i8Q=";
+
+  pname = "anytype";
+  name = "${pname}-${build}";
+
+  src = final.fetchurl {
+    url = "https://download.anytype.io/?action=download&key=desktop&id=${build}";
+    sha256 = sha;
+    name = "AnyType-${build}.AppImage";
+  };
+
+  appimageContents = final.appimageTools.extractType2 { inherit name src; };
+in {
+  anytype = prev.appimageTools.wrapType2 {
+    inherit name src;
+
+    extraPkgs = pkgs: (prev.appimageTools.defaultFhsEnvArgs.multiPkgs pkgs)
+      ++ [ pkgs.libsecret ];
+
+    extraInstallCommands = ''
+      mv $out/bin/${name} $out/bin/${pname}
+      install -m 444 -D ${appimageContents}/anytype2.desktop -t $out/share/applications
+      substituteInPlace $out/share/applications/anytype2.desktop \
+      --replace 'Exec=AppRun' 'Exec=${pname}'
+      install -m 444 -D ${appimageContents}/usr/share/icons/hicolor/0x0/apps/anytype2.png \
+        $out/share/icons/hicolor/512x512/apps/anytype2.png
+    '';
+
+    meta = with prev.lib; {
+      description = "P2P note-taking tool";
+      homepage = "https://anytype.io/";
+      license = licenses.unfree;
+      maintainers = with maintainers; [ bbigras ];
+      platforms = [ "x86_64-linux" ];
+    };
+  };
+}
diff --git a/.history/src/apps/personal/overlay/anytype_20220304215720.nix b/.history/src/apps/personal/overlay/anytype_20220304215720.nix
new file mode 100644
index 0000000..e40117d
--- /dev/null
+++ b/.history/src/apps/personal/overlay/anytype_20220304215720.nix
@@ -0,0 +1,39 @@
+final: prev: let
+  build = "57693545";
+  sha = "sha256-ayexUZNn7QGHjXYO/+1kUebTmAzdVpwG9Ile8Uh3i8Q=";
+
+  pname = "anytype";
+  name = "${pname}-${build}";
+
+  src = final.fetchurl {
+    url = "https://download.anytype.io/?action=download&key=desktop&id=${build}";
+    sha256 = sha;
+    name = "AnyType-${build}.AppImage";
+  };
+
+  appimageContents = final.appimageTools.extractType2 { inherit name src; };
+in {
+  anytype = prev.appimageTools.wrapType2 {
+    inherit name src;
+
+    extraPkgs = pkgs: (prev.appimageTools.defaultFhsEnvArgs.multiPkgs pkgs)
+      ++ [ pkgs.libsecret ];
+
+    extraInstallCommands = ''
+      mv $out/bin/${name} $out/bin/${pname}
+      install -m 444 -D ${appimageContents}/anytype2.desktop -t $out/share/applications
+      substituteInPlace $out/share/applications/anytype2.desktop \
+      --replace 'Exec=AppRun' 'Exec=${pname}'
+      install -m 444 -D ${appimageContents}/usr/share/icons/hicolor/0x0/apps/anytype2.png \
+        $out/share/icons/hicolor/512x512/apps/anytype2.png
+    '';
+
+    meta = with prev.lib; {
+      description = "P2P note-taking tool";
+      homepage = "https://anytype.io/";
+      license = licenses.unfree;
+      maintainers = with maintainers; [ bbigras ];
+      platforms = [ "x86_64-linux" ];
+    };
+  };
+}
diff --git a/.history/src/apps/personal/spotify_20220304212709.nix b/.history/src/apps/personal/spotify_20220304212709.nix
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/.history/src/apps/personal/spotify_20220304212709.nix
diff --git a/.history/src/apps/personal/spotify_20220304212716.nix b/.history/src/apps/personal/spotify_20220304212716.nix
new file mode 100644
index 0000000..8765ba3
--- /dev/null
+++ b/.history/src/apps/personal/spotify_20220304212716.nix
@@ -0,0 +1,12 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    home.packages = with pkgs; [
+        steam-run
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    programs.steam.enable = true;
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/spotify_20220304212722.nix b/.history/src/apps/personal/spotify_20220304212722.nix
new file mode 100644
index 0000000..8011d1d
--- /dev/null
+++ b/.history/src/apps/personal/spotify_20220304212722.nix
@@ -0,0 +1,10 @@
+{ config, pkgs, nixpkgs }:
+{
+
+    home.packages = with pkgs; [
+        steam-run
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    programs.steam.enable = true;
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/spotify_20220304212732.nix b/.history/src/apps/personal/spotify_20220304212732.nix
new file mode 100644
index 0000000..3a8a83a
--- /dev/null
+++ b/.history/src/apps/personal/spotify_20220304212732.nix
@@ -0,0 +1,9 @@
+{ config, pkgs, nixpkgs }: {
+
+    home.packages = with pkgs; [
+        steam-run
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    programs.steam.enable = true;
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/spotify_20220304212735.nix b/.history/src/apps/personal/spotify_20220304212735.nix
new file mode 100644
index 0000000..3dba95a
--- /dev/null
+++ b/.history/src/apps/personal/spotify_20220304212735.nix
@@ -0,0 +1,8 @@
+{ config, pkgs, nixpkgs }: {
+    home.packages = with pkgs; [
+        steam-run
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    programs.steam.enable = true;
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/spotify_20220304212749.nix b/.history/src/apps/personal/spotify_20220304212749.nix
new file mode 100644
index 0000000..095bc0f
--- /dev/null
+++ b/.history/src/apps/personal/spotify_20220304212749.nix
@@ -0,0 +1,7 @@
+{ config, pkgs, nixpkgs }: {
+    home.packages = with pkgs; [
+        steam-run
+    ];
+
+    programs.steam.enable = true;
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/spotify_20220304212756.nix b/.history/src/apps/personal/spotify_20220304212756.nix
new file mode 100644
index 0000000..525c1c7
--- /dev/null
+++ b/.history/src/apps/personal/spotify_20220304212756.nix
@@ -0,0 +1,7 @@
+{ config, pkgs, nixpkgs }: {
+    home.packages = with pkgs; [
+        spotify
+    ];
+
+    programs.steam.enable = true;
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/spotify_20220304214334.nix b/.history/src/apps/personal/spotify_20220304214334.nix
new file mode 100644
index 0000000..525c1c7
--- /dev/null
+++ b/.history/src/apps/personal/spotify_20220304214334.nix
@@ -0,0 +1,7 @@
+{ config, pkgs, nixpkgs }: {
+    home.packages = with pkgs; [
+        spotify
+    ];
+
+    programs.steam.enable = true;
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/spotify_20220304214922.nix b/.history/src/apps/personal/spotify_20220304214922.nix
new file mode 100644
index 0000000..c341bf4
--- /dev/null
+++ b/.history/src/apps/personal/spotify_20220304214922.nix
@@ -0,0 +1,5 @@
+{ config, pkgs, nixpkgs }: {
+    home.packages = with pkgs; [
+        spotify
+    ];
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/spotify_20220304215720.nix b/.history/src/apps/personal/spotify_20220304215720.nix
new file mode 100644
index 0000000..c341bf4
--- /dev/null
+++ b/.history/src/apps/personal/spotify_20220304215720.nix
@@ -0,0 +1,5 @@
+{ config, pkgs, nixpkgs }: {
+    home.packages = with pkgs; [
+        spotify
+    ];
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/steam_20220304212017.nix b/.history/src/apps/personal/steam_20220304212017.nix
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/.history/src/apps/personal/steam_20220304212017.nix
diff --git a/.history/src/apps/personal/steam_20220304212032.nix b/.history/src/apps/personal/steam_20220304212032.nix
new file mode 100644
index 0000000..f23ca99
--- /dev/null
+++ b/.history/src/apps/personal/steam_20220304212032.nix
@@ -0,0 +1,39 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [
+        anytype
+
+        steam-run
+
+        minecraft
+        git-crypt gnupg pinentry_qt
+        spotify
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        nodejs-17_x
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/steam_20220304212037.nix b/.history/src/apps/personal/steam_20220304212037.nix
new file mode 100644
index 0000000..1704202
--- /dev/null
+++ b/.history/src/apps/personal/steam_20220304212037.nix
@@ -0,0 +1,35 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    home.packages = with pkgs; [
+        anytype
+
+        steam-run
+
+        minecraft
+        git-crypt gnupg pinentry_qt
+        spotify
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        nodejs-17_x
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/steam_20220304212040.nix b/.history/src/apps/personal/steam_20220304212040.nix
new file mode 100644
index 0000000..6343904
--- /dev/null
+++ b/.history/src/apps/personal/steam_20220304212040.nix
@@ -0,0 +1,33 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    home.packages = with pkgs; [
+        steam-run
+
+        minecraft
+        git-crypt gnupg pinentry_qt
+        spotify
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        nodejs-17_x
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/steam_20220304212046.nix b/.history/src/apps/personal/steam_20220304212046.nix
new file mode 100644
index 0000000..a964ccf
--- /dev/null
+++ b/.history/src/apps/personal/steam_20220304212046.nix
@@ -0,0 +1,12 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    home.packages = with pkgs; [
+        steam-run
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/steam_20220304212148.nix b/.history/src/apps/personal/steam_20220304212148.nix
new file mode 100644
index 0000000..c7ac3be
--- /dev/null
+++ b/.history/src/apps/personal/steam_20220304212148.nix
@@ -0,0 +1,14 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    home.packages = with pkgs; [
+        steam-run
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    s
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/steam_20220304212152.nix b/.history/src/apps/personal/steam_20220304212152.nix
new file mode 100644
index 0000000..91482d8
--- /dev/null
+++ b/.history/src/apps/personal/steam_20220304212152.nix
@@ -0,0 +1,14 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    home.packages = with pkgs; [
+        steam-run
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    progra
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/steam_20220304212155.nix b/.history/src/apps/personal/steam_20220304212155.nix
new file mode 100644
index 0000000..f6823f9
--- /dev/null
+++ b/.history/src/apps/personal/steam_20220304212155.nix
@@ -0,0 +1,14 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    home.packages = with pkgs; [
+        steam-run
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    programs
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/steam_20220304212201.nix b/.history/src/apps/personal/steam_20220304212201.nix
new file mode 100644
index 0000000..c873d79
--- /dev/null
+++ b/.history/src/apps/personal/steam_20220304212201.nix
@@ -0,0 +1,13 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    home.packages = with pkgs; [
+        steam-run
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+    
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/steam_20220304212205.nix b/.history/src/apps/personal/steam_20220304212205.nix
new file mode 100644
index 0000000..020cd0c
--- /dev/null
+++ b/.history/src/apps/personal/steam_20220304212205.nix
@@ -0,0 +1,12 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    home.packages = with pkgs; [
+        steam-run
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+    
+    
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/steam_20220304212206.nix b/.history/src/apps/personal/steam_20220304212206.nix
new file mode 100644
index 0000000..df83b7b
--- /dev/null
+++ b/.history/src/apps/personal/steam_20220304212206.nix
@@ -0,0 +1,12 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    home.packages = with pkgs; [
+        steam-run
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/steam_20220304212214.nix b/.history/src/apps/personal/steam_20220304212214.nix
new file mode 100644
index 0000000..a4fbc21
--- /dev/null
+++ b/.history/src/apps/personal/steam_20220304212214.nix
@@ -0,0 +1,12 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    home.packages = with pkgs; [
+        steam-run
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    programs.steam.enable 
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/steam_20220304212225.nix b/.history/src/apps/personal/steam_20220304212225.nix
new file mode 100644
index 0000000..8765ba3
--- /dev/null
+++ b/.history/src/apps/personal/steam_20220304212225.nix
@@ -0,0 +1,12 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    home.packages = with pkgs; [
+        steam-run
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    programs.steam.enable = true;
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/steam_20220304212727.nix b/.history/src/apps/personal/steam_20220304212727.nix
new file mode 100644
index 0000000..3a8a83a
--- /dev/null
+++ b/.history/src/apps/personal/steam_20220304212727.nix
@@ -0,0 +1,9 @@
+{ config, pkgs, nixpkgs }: {
+
+    home.packages = with pkgs; [
+        steam-run
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    programs.steam.enable = true;
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/steam_20220304212738.nix b/.history/src/apps/personal/steam_20220304212738.nix
new file mode 100644
index 0000000..3dba95a
--- /dev/null
+++ b/.history/src/apps/personal/steam_20220304212738.nix
@@ -0,0 +1,8 @@
+{ config, pkgs, nixpkgs }: {
+    home.packages = with pkgs; [
+        steam-run
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    programs.steam.enable = true;
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/steam_20220304212744.nix b/.history/src/apps/personal/steam_20220304212744.nix
new file mode 100644
index 0000000..095bc0f
--- /dev/null
+++ b/.history/src/apps/personal/steam_20220304212744.nix
@@ -0,0 +1,7 @@
+{ config, pkgs, nixpkgs }: {
+    home.packages = with pkgs; [
+        steam-run
+    ];
+
+    programs.steam.enable = true;
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/steam_20220304214334.nix b/.history/src/apps/personal/steam_20220304214334.nix
new file mode 100644
index 0000000..095bc0f
--- /dev/null
+++ b/.history/src/apps/personal/steam_20220304214334.nix
@@ -0,0 +1,7 @@
+{ config, pkgs, nixpkgs }: {
+    home.packages = with pkgs; [
+        steam-run
+    ];
+
+    programs.steam.enable = true;
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/steam_20220304215719.nix b/.history/src/apps/personal/steam_20220304215719.nix
new file mode 100644
index 0000000..095bc0f
--- /dev/null
+++ b/.history/src/apps/personal/steam_20220304215719.nix
@@ -0,0 +1,7 @@
+{ config, pkgs, nixpkgs }: {
+    home.packages = with pkgs; [
+        steam-run
+    ];
+
+    programs.steam.enable = true;
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/vscode_20220304215734.nix b/.history/src/apps/personal/vscode_20220304215734.nix
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/.history/src/apps/personal/vscode_20220304215734.nix
diff --git a/.history/src/apps/personal/vscode_20220304215806.nix b/.history/src/apps/personal/vscode_20220304215806.nix
new file mode 100644
index 0000000..095bc0f
--- /dev/null
+++ b/.history/src/apps/personal/vscode_20220304215806.nix
@@ -0,0 +1,7 @@
+{ config, pkgs, nixpkgs }: {
+    home.packages = with pkgs; [
+        steam-run
+    ];
+
+    programs.steam.enable = true;
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/vscode_20220304215817.nix b/.history/src/apps/personal/vscode_20220304215817.nix
new file mode 100644
index 0000000..11a1fc2
--- /dev/null
+++ b/.history/src/apps/personal/vscode_20220304215817.nix
@@ -0,0 +1,5 @@
+{ config, pkgs, nixpkgs }: {
+      programs.vscode.enable = true;
+  programs.vscode.package = pkgs.vscode-fhs;
+
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/vscode_20220304215819.nix b/.history/src/apps/personal/vscode_20220304215819.nix
new file mode 100644
index 0000000..829b179
--- /dev/null
+++ b/.history/src/apps/personal/vscode_20220304215819.nix
@@ -0,0 +1,5 @@
+{ config, pkgs, nixpkgs }: {
+    programs.vscode.enable = true;
+  programs.vscode.package = pkgs.vscode-fhs;
+
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/vscode_20220304215821.nix b/.history/src/apps/personal/vscode_20220304215821.nix
new file mode 100644
index 0000000..d8f0142
--- /dev/null
+++ b/.history/src/apps/personal/vscode_20220304215821.nix
@@ -0,0 +1,5 @@
+{ config, pkgs, nixpkgs }: {
+    programs.vscode.enable = true;
+    .vscode.package = pkgs.vscode-fhs;
+
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/vscode_20220304215824.nix b/.history/src/apps/personal/vscode_20220304215824.nix
new file mode 100644
index 0000000..829b179
--- /dev/null
+++ b/.history/src/apps/personal/vscode_20220304215824.nix
@@ -0,0 +1,5 @@
+{ config, pkgs, nixpkgs }: {
+    programs.vscode.enable = true;
+  programs.vscode.package = pkgs.vscode-fhs;
+
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/vscode_20220304215825.nix b/.history/src/apps/personal/vscode_20220304215825.nix
new file mode 100644
index 0000000..0ccfe9e
--- /dev/null
+++ b/.history/src/apps/personal/vscode_20220304215825.nix
@@ -0,0 +1,5 @@
+{ config, pkgs, nixpkgs }: {
+    programs.vscode.enable = true;
+    programs.vscode.package = pkgs.vscode-fhs;
+
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/vscode_20220304215826.nix b/.history/src/apps/personal/vscode_20220304215826.nix
new file mode 100644
index 0000000..e1b2c2e
--- /dev/null
+++ b/.history/src/apps/personal/vscode_20220304215826.nix
@@ -0,0 +1,4 @@
+{ config, pkgs, nixpkgs }: {
+    programs.vscode.enable = true;
+    programs.vscode.package = pkgs.vscode-fhs;
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/zsh_20220304220716.nix b/.history/src/apps/personal/zsh_20220304220716.nix
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/.history/src/apps/personal/zsh_20220304220716.nix
diff --git a/.history/src/apps/personal/zsh_20220304220730.nix b/.history/src/apps/personal/zsh_20220304220730.nix
new file mode 100644
index 0000000..7962684
--- /dev/null
+++ b/.history/src/apps/personal/zsh_20220304220730.nix
@@ -0,0 +1,39 @@
+  programs.zsh = {
+    enable = true;
+    oh-my-zsh = {
+       enable = true;
+      plugins = [ "git" ];
+      theme = "crunch";
+    };
+    history = {
+      size = 10000;
+      path = "${config.xdg.dataHome}/zsh/history";
+      expireDuplicatesFirst = true;
+      extended = true;
+    };
+    initExtra = ''
+      bindkey "\'\'$\{key[Up]}" up-line-or-search
+
+      command_not_found_handler ()
+      {
+      #     echo "Command '$1' not found, searching for it in the Nix store..."
+      #     , $@
+          local p='/nix/store/ycclzpk99snlrk8sg9n4j8pm1927gavw-command-not-found/bin/command-not-found';
+          if [ -x "$p" ] && [ -f '/nix/var/nix/profiles/per-user/root/channels/nixos/programs.sqlite' ]; then
+              "$p" "$@" 2>&1 | sed -r 's/nix-shell -p (\S+)/nix shell nixpkgs#\1/g' 1>&2;
+             if [ $? = 126 ]; then
+                  "$@";
+              else
+                  return 127;
+              fi;
+          else
+              echo "$1: command not found" 1>&2;
+              return 127;
+          fi
+      }
+    '';
+    enableSyntaxHighlighting = true;
+    enableAutosuggestions = true;
+    autocd = true;
+    dotDir = ".local/share/zsh";
+  };
diff --git a/.history/src/apps/personal/zsh_20220304220732.nix b/.history/src/apps/personal/zsh_20220304220732.nix
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/.history/src/apps/personal/zsh_20220304220732.nix
diff --git a/.history/src/apps/personal/zsh_20220304220751.nix b/.history/src/apps/personal/zsh_20220304220751.nix
new file mode 100644
index 0000000..e1b2c2e
--- /dev/null
+++ b/.history/src/apps/personal/zsh_20220304220751.nix
@@ -0,0 +1,4 @@
+{ config, pkgs, nixpkgs }: {
+    programs.vscode.enable = true;
+    programs.vscode.package = pkgs.vscode-fhs;
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/zsh_20220304220800.nix b/.history/src/apps/personal/zsh_20220304220800.nix
new file mode 100644
index 0000000..b32be67
--- /dev/null
+++ b/.history/src/apps/personal/zsh_20220304220800.nix
@@ -0,0 +1,41 @@
+{ config, pkgs, nixpkgs }: {
+  programs.zsh = {
+    enable = true;
+    oh-my-zsh = {
+       enable = true;
+      plugins = [ "git" ];
+      theme = "crunch";
+    };
+    history = {
+      size = 10000;
+      path = "${config.xdg.dataHome}/zsh/history";
+      expireDuplicatesFirst = true;
+      extended = true;
+    };
+    initExtra = ''
+      bindkey "\'\'$\{key[Up]}" up-line-or-search
+
+      command_not_found_handler ()
+      {
+      #     echo "Command '$1' not found, searching for it in the Nix store..."
+      #     , $@
+          local p='/nix/store/ycclzpk99snlrk8sg9n4j8pm1927gavw-command-not-found/bin/command-not-found';
+          if [ -x "$p" ] && [ -f '/nix/var/nix/profiles/per-user/root/channels/nixos/programs.sqlite' ]; then
+              "$p" "$@" 2>&1 | sed -r 's/nix-shell -p (\S+)/nix shell nixpkgs#\1/g' 1>&2;
+             if [ $? = 126 ]; then
+                  "$@";
+              else
+                  return 127;
+              fi;
+          else
+              echo "$1: command not found" 1>&2;
+              return 127;
+          fi
+      }
+    '';
+    enableSyntaxHighlighting = true;
+    enableAutosuggestions = true;
+    autocd = true;
+    dotDir = ".local/share/zsh";
+  };
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/zsh_20220304220809.nix b/.history/src/apps/personal/zsh_20220304220809.nix
new file mode 100644
index 0000000..e3d8684
--- /dev/null
+++ b/.history/src/apps/personal/zsh_20220304220809.nix
@@ -0,0 +1,41 @@
+{ config, pkgs, nixpkgs }: {
+    programs.zsh = {
+      enable = true;
+      oh-my-zsh = {
+        enable = true;
+        plugins = [ "git" ];
+        theme = "crunch";
+      };
+      history = {
+        size = 10000;
+        path = "${config.xdg.dataHome}/zsh/history";
+        expireDuplicatesFirst = true;
+        extended = true;
+      };
+      initExtra = ''
+        bindkey "\'\'$\{key[Up]}" up-line-or-search
+
+        command_not_found_handler ()
+        {
+        #     echo "Command '$1' not found, searching for it in the Nix store..."
+        #     , $@
+            local p='/nix/store/ycclzpk99snlrk8sg9n4j8pm1927gavw-command-not-found/bin/command-not-found';
+            if [ -x "$p" ] && [ -f '/nix/var/nix/profiles/per-user/root/channels/nixos/programs.sqlite' ]; then
+                "$p" "$@" 2>&1 | sed -r 's/nix-shell -p (\S+)/nix shell nixpkgs#\1/g' 1>&2;
+              if [ $? = 126 ]; then
+                    "$@";
+                else
+                    return 127;
+                fi;
+            else
+                echo "$1: command not found" 1>&2;
+                return 127;
+            fi
+        }
+      '';
+      enableSyntaxHighlighting = true;
+      enableAutosuggestions = true;
+      autocd = true;
+      dotDir = ".local/share/zsh";
+    };
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/zsh_20220304220812.nix b/.history/src/apps/personal/zsh_20220304220812.nix
new file mode 100644
index 0000000..53aeb1d
--- /dev/null
+++ b/.history/src/apps/personal/zsh_20220304220812.nix
@@ -0,0 +1,41 @@
+{ config, pkgs, nixpkgs }: {
+    programs.zsh = {
+        enable = true;
+        oh-my-zsh = {
+          enable = true;
+          plugins = [ "git" ];
+          theme = "crunch";
+        };
+        history = {
+          size = 10000;
+          path = "${config.xdg.dataHome}/zsh/history";
+          expireDuplicatesFirst = true;
+          extended = true;
+        };
+        initExtra = ''
+          bindkey "\'\'$\{key[Up]}" up-line-or-search
+
+          command_not_found_handler ()
+          {
+          #     echo "Command '$1' not found, searching for it in the Nix store..."
+          #     , $@
+              local p='/nix/store/ycclzpk99snlrk8sg9n4j8pm1927gavw-command-not-found/bin/command-not-found';
+              if [ -x "$p" ] && [ -f '/nix/var/nix/profiles/per-user/root/channels/nixos/programs.sqlite' ]; then
+                  "$p" "$@" 2>&1 | sed -r 's/nix-shell -p (\S+)/nix shell nixpkgs#\1/g' 1>&2;
+                if [ $? = 126 ]; then
+                      "$@";
+                  else
+                      return 127;
+                  fi;
+              else
+                  echo "$1: command not found" 1>&2;
+                  return 127;
+              fi
+          }
+        '';
+        enableSyntaxHighlighting = true;
+        enableAutosuggestions = true;
+        autocd = true;
+        dotDir = ".local/share/zsh";
+    };
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/zsh_20220304220820.nix b/.history/src/apps/personal/zsh_20220304220820.nix
new file mode 100644
index 0000000..e33a882
--- /dev/null
+++ b/.history/src/apps/personal/zsh_20220304220820.nix
@@ -0,0 +1,41 @@
+{ config, pkgs, nixpkgs }: {
+    programs.zsh = {
+        enable = true;
+        oh-my-zsh = {
+            enable = true;
+            plugins = [ "git" ];
+            theme = "crunch";
+        };
+        history = {
+          size = 10000;
+          path = "${config.xdg.dataHome}/zsh/history";
+          expireDuplicatesFirst = true;
+          extended = true;
+        };
+        initExtra = ''
+          bindkey "\'\'$\{key[Up]}" up-line-or-search
+
+          command_not_found_handler ()
+          {
+          #     echo "Command '$1' not found, searching for it in the Nix store..."
+          #     , $@
+              local p='/nix/store/ycclzpk99snlrk8sg9n4j8pm1927gavw-command-not-found/bin/command-not-found';
+              if [ -x "$p" ] && [ -f '/nix/var/nix/profiles/per-user/root/channels/nixos/programs.sqlite' ]; then
+                  "$p" "$@" 2>&1 | sed -r 's/nix-shell -p (\S+)/nix shell nixpkgs#\1/g' 1>&2;
+                if [ $? = 126 ]; then
+                      "$@";
+                  else
+                      return 127;
+                  fi;
+              else
+                  echo "$1: command not found" 1>&2;
+                  return 127;
+              fi
+          }
+        '';
+        enableSyntaxHighlighting = true;
+        enableAutosuggestions = true;
+        autocd = true;
+        dotDir = ".local/share/zsh";
+    };
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/zsh_20220304220822.nix b/.history/src/apps/personal/zsh_20220304220822.nix
new file mode 100644
index 0000000..a32bad5
--- /dev/null
+++ b/.history/src/apps/personal/zsh_20220304220822.nix
@@ -0,0 +1,41 @@
+{ config, pkgs, nixpkgs }: {
+    programs.zsh = {
+        enable = true;
+        oh-my-zsh = {
+            enable = true;
+            plugins = [ "git" ];
+            theme = "crunch";
+        };
+        history = {
+            size = 10000;
+            path = "${config.xdg.dataHome}/zsh/history";
+            expireDuplicatesFirst = true;
+            extended = true;
+        };
+        initExtra = ''
+          bindkey "\'\'$\{key[Up]}" up-line-or-search
+
+          command_not_found_handler ()
+          {
+          #     echo "Command '$1' not found, searching for it in the Nix store..."
+          #     , $@
+              local p='/nix/store/ycclzpk99snlrk8sg9n4j8pm1927gavw-command-not-found/bin/command-not-found';
+              if [ -x "$p" ] && [ -f '/nix/var/nix/profiles/per-user/root/channels/nixos/programs.sqlite' ]; then
+                  "$p" "$@" 2>&1 | sed -r 's/nix-shell -p (\S+)/nix shell nixpkgs#\1/g' 1>&2;
+                if [ $? = 126 ]; then
+                      "$@";
+                  else
+                      return 127;
+                  fi;
+              else
+                  echo "$1: command not found" 1>&2;
+                  return 127;
+              fi
+          }
+        '';
+        enableSyntaxHighlighting = true;
+        enableAutosuggestions = true;
+        autocd = true;
+        dotDir = ".local/share/zsh";
+    };
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/zsh_20220304220825.nix b/.history/src/apps/personal/zsh_20220304220825.nix
new file mode 100644
index 0000000..d33b780
--- /dev/null
+++ b/.history/src/apps/personal/zsh_20220304220825.nix
@@ -0,0 +1,41 @@
+{ config, pkgs, nixpkgs }: {
+    programs.zsh = {
+        enable = true;
+        oh-my-zsh = {
+            enable = true;
+            plugins = [ "git" ];
+            theme = "crunch";
+        };
+        history = {
+            size = 10000;
+            path = "${config.xdg.dataHome}/zsh/history";
+            expireDuplicatesFirst = true;
+            extended = true;
+        };
+        initExtra = ''
+            bindkey "\'\'$\{key[Up]}" up-line-or-search
+
+            command_not_found_handler ()
+            {
+            #     echo "Command '$1' not found, searching for it in the Nix store..."
+            #     , $@
+                local p='/nix/store/ycclzpk99snlrk8sg9n4j8pm1927gavw-command-not-found/bin/command-not-found';
+                if [ -x "$p" ] && [ -f '/nix/var/nix/profiles/per-user/root/channels/nixos/programs.sqlite' ]; then
+                    "$p" "$@" 2>&1 | sed -r 's/nix-shell -p (\S+)/nix shell nixpkgs#\1/g' 1>&2;
+                  if [ $? = 126 ]; then
+                        "$@";
+                    else
+                        return 127;
+                    fi;
+                else
+                    echo "$1: command not found" 1>&2;
+                    return 127;
+                fi
+            }
+        '';
+        enableSyntaxHighlighting = true;
+        enableAutosuggestions = true;
+        autocd = true;
+        dotDir = ".local/share/zsh";
+    };
+}
\ No newline at end of file
diff --git a/.history/src/apps/personal/zsh_20220304220833.nix b/.history/src/apps/personal/zsh_20220304220833.nix
new file mode 100644
index 0000000..1f1f129
--- /dev/null
+++ b/.history/src/apps/personal/zsh_20220304220833.nix
@@ -0,0 +1,39 @@
+{ config, pkgs, nixpkgs }: {
+    programs.zsh = {
+        enable = true;
+        oh-my-zsh = {
+            enable = true;
+            plugins = [ "git" ];
+            theme = "crunch";
+        };
+        history = {
+            size = 10000;
+            path = "${config.xdg.dataHome}/zsh/history";
+            expireDuplicatesFirst = true;
+            extended = true;
+        };
+        initExtra = ''
+            bindkey "\'\'$\{key[Up]}" up-line-or-search
+
+            command_not_found_handler ()
+            {
+                local p='/nix/store/ycclzpk99snlrk8sg9n4j8pm1927gavw-command-not-found/bin/command-not-found';
+                if [ -x "$p" ] && [ -f '/nix/var/nix/profiles/per-user/root/channels/nixos/programs.sqlite' ]; then
+                    "$p" "$@" 2>&1 | sed -r 's/nix-shell -p (\S+)/nix shell nixpkgs#\1/g' 1>&2;
+                  if [ $? = 126 ]; then
+                        "$@";
+                    else
+                        return 127;
+                    fi;
+                else
+                    echo "$1: command not found" 1>&2;
+                    return 127;
+                fi
+            }
+        '';
+        enableSyntaxHighlighting = true;
+        enableAutosuggestions = true;
+        autocd = true;
+        dotDir = ".local/share/zsh";
+    };
+}
\ No newline at end of file
diff --git a/.history/src/common/variables_20220304120310.nix b/.history/src/common/variables_20220304120310.nix
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/.history/src/common/variables_20220304120310.nix
diff --git a/.history/src/common/variables_20220304120315.nix b/.history/src/common/variables_20220304120315.nix
new file mode 100644
index 0000000..077404a
--- /dev/null
+++ b/.history/src/common/variables_20220304120315.nix
@@ -0,0 +1,3 @@
+{
+  
+}
\ No newline at end of file
diff --git a/.history/src/common/variables_20220304120324.nix b/.history/src/common/variables_20220304120324.nix
new file mode 100644
index 0000000..544b7b4
--- /dev/null
+++ b/.history/src/common/variables_20220304120324.nix
@@ -0,0 +1,3 @@
+{
+    
+}
\ No newline at end of file
diff --git a/.history/src/common/variables_20220304120333.nix b/.history/src/common/variables_20220304120333.nix
new file mode 100644
index 0000000..9e51f46
--- /dev/null
+++ b/.history/src/common/variables_20220304120333.nix
@@ -0,0 +1,3 @@
+{
+    stateVersion = "21.11";
+}
\ No newline at end of file
diff --git a/.history/src/common/variables_20220304120342.nix b/.history/src/common/variables_20220304120342.nix
new file mode 100644
index 0000000..9e51f46
--- /dev/null
+++ b/.history/src/common/variables_20220304120342.nix
@@ -0,0 +1,3 @@
+{
+    stateVersion = "21.11";
+}
\ No newline at end of file
diff --git a/.history/src/common/variables_20220304121413.nix b/.history/src/common/variables_20220304121413.nix
new file mode 100644
index 0000000..9e51f46
--- /dev/null
+++ b/.history/src/common/variables_20220304121413.nix
@@ -0,0 +1,3 @@
+{
+    stateVersion = "21.11";
+}
\ No newline at end of file
diff --git a/.history/src/common/variables_20220304122223.nix b/.history/src/common/variables_20220304122223.nix
new file mode 100644
index 0000000..97177a7
--- /dev/null
+++ b/.history/src/common/variables_20220304122223.nix
@@ -0,0 +1,4 @@
+{
+    stateVersion = "21.11";
+    username
+}
\ No newline at end of file
diff --git a/.history/src/common/variables_20220304122225.nix b/.history/src/common/variables_20220304122225.nix
new file mode 100644
index 0000000..b06976e
--- /dev/null
+++ b/.history/src/common/variables_20220304122225.nix
@@ -0,0 +1,4 @@
+{
+    stateVersion = "21.11";
+    username = ""
+}
\ No newline at end of file
diff --git a/.history/src/common/variables_20220304122229.nix b/.history/src/common/variables_20220304122229.nix
new file mode 100644
index 0000000..cb4722c
--- /dev/null
+++ b/.history/src/common/variables_20220304122229.nix
@@ -0,0 +1,5 @@
+{
+    stateVersion = "21.11";
+    username = "minion";
+    
+}
\ No newline at end of file
diff --git a/.history/src/common/variables_20220304122244.nix b/.history/src/common/variables_20220304122244.nix
new file mode 100644
index 0000000..6c486fb
--- /dev/null
+++ b/.history/src/common/variables_20220304122244.nix
@@ -0,0 +1,4 @@
+{
+    stateVersion = "21.11";
+    username = "minion";
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304121418.nix b/.history/src/home_20220304121418.nix
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/.history/src/home_20220304121418.nix
diff --git a/.history/src/home_20220304121443.nix b/.history/src/home_20220304121443.nix
new file mode 100644
index 0000000..077404a
--- /dev/null
+++ b/.history/src/home_20220304121443.nix
@@ -0,0 +1,3 @@
+{
+  
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304121447.nix b/.history/src/home_20220304121447.nix
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/.history/src/home_20220304121447.nix
diff --git a/.history/src/home_20220304121514.nix b/.history/src/home_20220304121514.nix
new file mode 100644
index 0000000..7c11132
--- /dev/null
+++ b/.history/src/home_20220304121514.nix
@@ -0,0 +1,2 @@
+
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304121516.nix b/.history/src/home_20220304121516.nix
new file mode 100644
index 0000000..b8ae73f
--- /dev/null
+++ b/.history/src/home_20220304121516.nix
@@ -0,0 +1,4 @@
+{
+  
+}
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304121518.nix b/.history/src/home_20220304121518.nix
new file mode 100644
index 0000000..0e0dcd2
--- /dev/null
+++ b/.history/src/home_20220304121518.nix
@@ -0,0 +1,3 @@
+{
+
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304121524.nix b/.history/src/home_20220304121524.nix
new file mode 100644
index 0000000..544b7b4
--- /dev/null
+++ b/.history/src/home_20220304121524.nix
@@ -0,0 +1,3 @@
+{
+    
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304121529.nix b/.history/src/home_20220304121529.nix
new file mode 100644
index 0000000..d15edac
--- /dev/null
+++ b/.history/src/home_20220304121529.nix
@@ -0,0 +1,4 @@
+
+{
+
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304121537.nix b/.history/src/home_20220304121537.nix
new file mode 100644
index 0000000..d6c2b0b
--- /dev/null
+++ b/.history/src/home_20220304121537.nix
@@ -0,0 +1,4 @@
+let
+    variables = {
+
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304121543.nix b/.history/src/home_20220304121543.nix
new file mode 100644
index 0000000..915dc0f
--- /dev/null
+++ b/.history/src/home_20220304121543.nix
@@ -0,0 +1,5 @@
+let
+    variables = 
+in {
+
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304121550.nix b/.history/src/home_20220304121550.nix
new file mode 100644
index 0000000..fd9a049
--- /dev/null
+++ b/.history/src/home_20220304121550.nix
@@ -0,0 +1,5 @@
+let
+    variables = (import ../)
+in {
+
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304121552.nix b/.history/src/home_20220304121552.nix
new file mode 100644
index 0000000..5b64d8a
--- /dev/null
+++ b/.history/src/home_20220304121552.nix
@@ -0,0 +1,5 @@
+let
+    variables = (import ../);
+in {
+
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304121554.nix b/.history/src/home_20220304121554.nix
new file mode 100644
index 0000000..37d8c19
--- /dev/null
+++ b/.history/src/home_20220304121554.nix
@@ -0,0 +1,5 @@
+let
+    variables = (import ../;
+in {
+
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304121555.nix b/.history/src/home_20220304121555.nix
new file mode 100644
index 0000000..14ec50c
--- /dev/null
+++ b/.history/src/home_20220304121555.nix
@@ -0,0 +1,5 @@
+let
+    variables = import ../;
+in {
+
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304121601.nix b/.history/src/home_20220304121601.nix
new file mode 100644
index 0000000..f05fba8
--- /dev/null
+++ b/.history/src/home_20220304121601.nix
@@ -0,0 +1,5 @@
+let
+    variables = import ./common.variables.nix;
+in {
+
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304121603.nix b/.history/src/home_20220304121603.nix
new file mode 100644
index 0000000..610489d
--- /dev/null
+++ b/.history/src/home_20220304121603.nix
@@ -0,0 +1,5 @@
+let
+    variables = import ./common/variables.nix;
+in {
+
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304121605.nix b/.history/src/home_20220304121605.nix
new file mode 100644
index 0000000..f6188ef
--- /dev/null
+++ b/.history/src/home_20220304121605.nix
@@ -0,0 +1,5 @@
+let
+    variables = import ./common/variables.nix;
+in {
+    
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304121609.nix b/.history/src/home_20220304121609.nix
new file mode 100644
index 0000000..66d4e05
--- /dev/null
+++ b/.history/src/home_20220304121609.nix
@@ -0,0 +1,5 @@
+let
+    variables = import ./common/variables.nix;
+in {
+    stateVersion = variables.
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304121612.nix b/.history/src/home_20220304121612.nix
new file mode 100644
index 0000000..2e67808
--- /dev/null
+++ b/.history/src/home_20220304121612.nix
@@ -0,0 +1,5 @@
+let
+    variables = import ./common/variables.nix;
+in {
+    stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304121850.nix b/.history/src/home_20220304121850.nix
new file mode 100644
index 0000000..2e67808
--- /dev/null
+++ b/.history/src/home_20220304121850.nix
@@ -0,0 +1,5 @@
+let
+    variables = import ./common/variables.nix;
+in {
+    stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304121931.nix b/.history/src/home_20220304121931.nix
new file mode 100644
index 0000000..47b9186
--- /dev/null
+++ b/.history/src/home_20220304121931.nix
@@ -0,0 +1,6 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+    stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304134618.nix b/.history/src/home_20220304134618.nix
new file mode 100644
index 0000000..fc870e9
--- /dev/null
+++ b/.history/src/home_20220304134618.nix
@@ -0,0 +1,8 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+    stateVersion = variables.stateVersion;
+
+    
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304134621.nix b/.history/src/home_20220304134621.nix
new file mode 100644
index 0000000..7d4ab7d
--- /dev/null
+++ b/.history/src/home_20220304134621.nix
@@ -0,0 +1,10 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+    stateVersion = variables.stateVersion;
+
+    home {
+        
+    }
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304134732.nix b/.history/src/home_20220304134732.nix
new file mode 100644
index 0000000..b0244a8
--- /dev/null
+++ b/.history/src/home_20220304134732.nix
@@ -0,0 +1,12 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+    stateVersion = variables.stateVersion;
+
+    home {
+        packages = with pkgs; [
+            
+        ]
+    }
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304134734.nix b/.history/src/home_20220304134734.nix
new file mode 100644
index 0000000..e6940f0
--- /dev/null
+++ b/.history/src/home_20220304134734.nix
@@ -0,0 +1,14 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+    stateVersion = variables.stateVersion;
+
+    home {
+        packages = with pkgs; [
+
+        ];
+
+        
+    }
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304134743.nix b/.history/src/home_20220304134743.nix
new file mode 100644
index 0000000..edb1b21
--- /dev/null
+++ b/.history/src/home_20220304134743.nix
@@ -0,0 +1,12 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+    stateVersion = variables.stateVersion;
+
+    home {
+        packages = with pkgs; [
+
+        ];
+    }
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304134751.nix b/.history/src/home_20220304134751.nix
new file mode 100644
index 0000000..d2a2a5c
--- /dev/null
+++ b/.history/src/home_20220304134751.nix
@@ -0,0 +1,11 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+    stateVersion = variables.stateVersion;
+
+    home.packages = with pkgs; [
+
+        ];
+    }
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304134753.nix b/.history/src/home_20220304134753.nix
new file mode 100644
index 0000000..8a69459
--- /dev/null
+++ b/.history/src/home_20220304134753.nix
@@ -0,0 +1,10 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+    stateVersion = variables.stateVersion;
+
+    home.packages = with pkgs; [
+        ];
+    }
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304134754.nix b/.history/src/home_20220304134754.nix
new file mode 100644
index 0000000..05ffa50
--- /dev/null
+++ b/.history/src/home_20220304134754.nix
@@ -0,0 +1,10 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+    stateVersion = variables.stateVersion;
+
+    home.packages = with pkgs; [
+    ];
+    }
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304134756.nix b/.history/src/home_20220304134756.nix
new file mode 100644
index 0000000..6f20120
--- /dev/null
+++ b/.history/src/home_20220304134756.nix
@@ -0,0 +1,9 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+    stateVersion = variables.stateVersion;
+
+    home.packages = with pkgs; [
+    ];
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304134759.nix b/.history/src/home_20220304134759.nix
new file mode 100644
index 0000000..14f4b81
--- /dev/null
+++ b/.history/src/home_20220304134759.nix
@@ -0,0 +1,9 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+    home.stateVersion = variables.stateVersion;
+
+    home.packages = with pkgs; [
+    ];
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304134816.nix b/.history/src/home_20220304134816.nix
new file mode 100644
index 0000000..cc443d5
--- /dev/null
+++ b/.history/src/home_20220304134816.nix
@@ -0,0 +1,10 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    home.packages = with pkgs; [
+    ];
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304134820.nix b/.history/src/home_20220304134820.nix
new file mode 100644
index 0000000..b210b9a
--- /dev/null
+++ b/.history/src/home_20220304134820.nix
@@ -0,0 +1,11 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    home.packages = with pkgs; [
+        
+    ];
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304134843.nix b/.history/src/home_20220304134843.nix
new file mode 100644
index 0000000..5a29a60
--- /dev/null
+++ b/.history/src/home_20220304134843.nix
@@ -0,0 +1,11 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    home.packages = with pkgs; [
+
+    ];  # Use *only* for packages that need no configuration; other packages should go in
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304134848.nix b/.history/src/home_20220304134848.nix
new file mode 100644
index 0000000..fe46b7e
--- /dev/null
+++ b/.history/src/home_20220304134848.nix
@@ -0,0 +1,12 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    home.packages = with pkgs; [
+
+    ];  # Use *only* for packages that need no configuration; 
+    other packages should go in
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304134850.nix b/.history/src/home_20220304134850.nix
new file mode 100644
index 0000000..3d34464
--- /dev/null
+++ b/.history/src/home_20220304134850.nix
@@ -0,0 +1,12 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    home.packages = with pkgs; [
+
+    ];  # Use *only* for packages that need no configuration; 
+    # other packages should go in
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304134853.nix b/.history/src/home_20220304134853.nix
new file mode 100644
index 0000000..93746b3
--- /dev/null
+++ b/.history/src/home_20220304134853.nix
@@ -0,0 +1,12 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    home.packages = with pkgs; [
+
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304134856.nix b/.history/src/home_20220304134856.nix
new file mode 100644
index 0000000..bb6e85d
--- /dev/null
+++ b/.history/src/home_20220304134856.nix
@@ -0,0 +1,12 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    home.packages = with pkgs; [
+
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in 
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304134902.nix b/.history/src/home_20220304134902.nix
new file mode 100644
index 0000000..ecb9f83
--- /dev/null
+++ b/.history/src/home_20220304134902.nix
@@ -0,0 +1,12 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    home.packages = with pkgs; [
+
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in packages/ or 
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304134908.nix b/.history/src/home_20220304134908.nix
new file mode 100644
index 0000000..6d16898
--- /dev/null
+++ b/.history/src/home_20220304134908.nix
@@ -0,0 +1,12 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    home.packages = with pkgs; [
+
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in apps/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304134917.nix b/.history/src/home_20220304134917.nix
new file mode 100644
index 0000000..84de6d1
--- /dev/null
+++ b/.history/src/home_20220304134917.nix
@@ -0,0 +1,12 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    home.packages = with pkgs; [
+
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304201822.nix b/.history/src/home_20220304201822.nix
new file mode 100644
index 0000000..91664c1
--- /dev/null
+++ b/.history/src/home_20220304201822.nix
@@ -0,0 +1,12 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    home.packages = with pkgs; [
+
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304211723.nix b/.history/src/home_20220304211723.nix
new file mode 100644
index 0000000..9f1d7d9
--- /dev/null
+++ b/.history/src/home_20220304211723.nix
@@ -0,0 +1,19 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+      nixpkgs.overlays = [ 
+    (import ./overlays/anytype.nix)
+    (import ./overlays/mindustry.nix)
+    (import ./overlays/nur.nix)
+  ];
+
+
+    home.packages = with pkgs; [
+
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304211724.nix b/.history/src/home_20220304211724.nix
new file mode 100644
index 0000000..9b3c30c
--- /dev/null
+++ b/.history/src/home_20220304211724.nix
@@ -0,0 +1,18 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+      nixpkgs.overlays = [ 
+    (import ./overlays/anytype.nix)
+    (import ./overlays/mindustry.nix)
+    (import ./overlays/nur.nix)
+  ];
+
+    home.packages = with pkgs; [
+
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304211725.nix b/.history/src/home_20220304211725.nix
new file mode 100644
index 0000000..4c68e78
--- /dev/null
+++ b/.history/src/home_20220304211725.nix
@@ -0,0 +1,18 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+      nixpkgs.overlays = [ 
+    (import ./overlays/anytype.nix)
+    (import ./overlays/mindustry.nix)
+    (import ./overlays/nur.nix)
+    ];
+
+    home.packages = with pkgs; [
+
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304211727.nix b/.history/src/home_20220304211727.nix
new file mode 100644
index 0000000..54c4d6b
--- /dev/null
+++ b/.history/src/home_20220304211727.nix
@@ -0,0 +1,18 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+      nixpkgs.overlays = [ 
+    (import ./overlays/anytype.nix)
+    (import ./overlays/mindustry.nix)
+        (import ./overlays/nur.nix)
+    ];
+
+    home.packages = with pkgs; [
+
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304211728.nix b/.history/src/home_20220304211728.nix
new file mode 100644
index 0000000..ecf15ef
--- /dev/null
+++ b/.history/src/home_20220304211728.nix
@@ -0,0 +1,18 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+      nixpkgs.overlays = [ 
+    (import ./overlays/anytype.nix)
+        (import ./overlays/mindustry.nix)
+        (import ./overlays/nur.nix)
+    ];
+
+    home.packages = with pkgs; [
+
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304211730.nix b/.history/src/home_20220304211730.nix
new file mode 100644
index 0000000..a23ebb4
--- /dev/null
+++ b/.history/src/home_20220304211730.nix
@@ -0,0 +1,17 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+      nixpkgs.overlays = [ 
+        (import ./overlays/anytype.nix)
+        (import ./overlays/mindustry.nix)
+        (import ./overlays/nur.nix)
+    ];
+
+    home.packages = with pkgs; [
+
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304211733.nix b/.history/src/home_20220304211733.nix
new file mode 100644
index 0000000..59fb825
--- /dev/null
+++ b/.history/src/home_20220304211733.nix
@@ -0,0 +1,18 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+      
+    nixpkgs.overlays = [ 
+        (import ./overlays/anytype.nix)
+        (import ./overlays/mindustry.nix)
+        (import ./overlays/nur.nix)
+    ];
+
+    home.packages = with pkgs; [
+
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304211736.nix b/.history/src/home_20220304211736.nix
new file mode 100644
index 0000000..fcba5bf
--- /dev/null
+++ b/.history/src/home_20220304211736.nix
@@ -0,0 +1,18 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    nixpkgs.overlays = [ 
+        (import ./overlays/anytype.nix)
+        (import ./overlays/mindustry.nix)
+        (import ./overlays/nur.nix)
+    ];
+
+    home.packages = with pkgs; [
+
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304211738.nix b/.history/src/home_20220304211738.nix
new file mode 100644
index 0000000..dd5d886
--- /dev/null
+++ b/.history/src/home_20220304211738.nix
@@ -0,0 +1,18 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+        (import ./overlays/mindustry.nix)
+        (import ./overlays/nur.nix)
+    ];
+
+    home.packages = with pkgs; [
+
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304211744.nix b/.history/src/home_20220304211744.nix
new file mode 100644
index 0000000..5d602f7
--- /dev/null
+++ b/.history/src/home_20220304211744.nix
@@ -0,0 +1,17 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+        (import ./overlays/nur.nix)
+    ];
+
+    home.packages = with pkgs; [
+
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304211746.nix b/.history/src/home_20220304211746.nix
new file mode 100644
index 0000000..ea4a632
--- /dev/null
+++ b/.history/src/home_20220304211746.nix
@@ -0,0 +1,16 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [
+
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304211753.nix b/.history/src/home_20220304211753.nix
new file mode 100644
index 0000000..a24b99c
--- /dev/null
+++ b/.history/src/home_20220304211753.nix
@@ -0,0 +1,16 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [
+        anyty
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304211755.nix b/.history/src/home_20220304211755.nix
new file mode 100644
index 0000000..abffb5b
--- /dev/null
+++ b/.history/src/home_20220304211755.nix
@@ -0,0 +1,16 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [
+        anytype
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304211835.nix b/.history/src/home_20220304211835.nix
new file mode 100644
index 0000000..55c54d0
--- /dev/null
+++ b/.history/src/home_20220304211835.nix
@@ -0,0 +1,38 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [
+        anytype
+
+            steam-tui steam-run
+    minecraft
+    git-crypt gnupg pinentry_qt
+    spotify
+    keepassxc
+    grim slurp
+    neovim helix
+    qemu
+    bind
+    file
+    nur.repos.kira-bruneau.rofi-wayland
+    rofimoji
+    anytype-latest
+    htop
+    hue-cli
+    comma
+    zip
+    mindustry-alpha-wayland
+    nodejs-17_x
+    element
+    tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304211840.nix b/.history/src/home_20220304211840.nix
new file mode 100644
index 0000000..7d2b3b0
--- /dev/null
+++ b/.history/src/home_20220304211840.nix
@@ -0,0 +1,38 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [
+        anytype
+
+            steam-tui steam-run
+        minecraft
+        git-crypt gnupg pinentry_qt
+        spotify
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        nodejs-17_x
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304211841.nix b/.history/src/home_20220304211841.nix
new file mode 100644
index 0000000..97159b3
--- /dev/null
+++ b/.history/src/home_20220304211841.nix
@@ -0,0 +1,38 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [
+        anytype
+
+        steam-tui steam-run
+        minecraft
+        git-crypt gnupg pinentry_qt
+        spotify
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        nodejs-17_x
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304211846.nix b/.history/src/home_20220304211846.nix
new file mode 100644
index 0000000..cd592da
--- /dev/null
+++ b/.history/src/home_20220304211846.nix
@@ -0,0 +1,39 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [
+        anytype
+
+        steam-tui steam-run
+        
+        minecraft
+        git-crypt gnupg pinentry_qt
+        spotify
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        nodejs-17_x
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304211849.nix b/.history/src/home_20220304211849.nix
new file mode 100644
index 0000000..f23ca99
--- /dev/null
+++ b/.history/src/home_20220304211849.nix
@@ -0,0 +1,39 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [
+        anytype
+
+        steam-run
+
+        minecraft
+        git-crypt gnupg pinentry_qt
+        spotify
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        nodejs-17_x
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304212512.nix b/.history/src/home_20220304212512.nix
new file mode 100644
index 0000000..7f2331a
--- /dev/null
+++ b/.history/src/home_20220304212512.nix
@@ -0,0 +1,37 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [
+        anytype
+
+        minecraft
+        git-crypt gnupg pinentry_qt
+        spotify
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        nodejs-17_x
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304212544.nix b/.history/src/home_20220304212544.nix
new file mode 100644
index 0000000..96f8efc
--- /dev/null
+++ b/.history/src/home_20220304212544.nix
@@ -0,0 +1,40 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+    import = [
+        
+    ];
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [
+        anytype
+
+        minecraft
+        git-crypt gnupg pinentry_qt
+        spotify
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        nodejs-17_x
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304212550.nix b/.history/src/home_20220304212550.nix
new file mode 100644
index 0000000..df41603
--- /dev/null
+++ b/.history/src/home_20220304212550.nix
@@ -0,0 +1,40 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+    import = [
+        ./
+    ];
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [
+        anytype
+
+        minecraft
+        git-crypt gnupg pinentry_qt
+        spotify
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        nodejs-17_x
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304212602.nix b/.history/src/home_20220304212602.nix
new file mode 100644
index 0000000..31e0d3b
--- /dev/null
+++ b/.history/src/home_20220304212602.nix
@@ -0,0 +1,40 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+    import = [
+        ./apps/personal/
+    ];
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [
+        anytype
+
+        minecraft
+        git-crypt gnupg pinentry_qt
+        spotify
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        nodejs-17_x
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304212607.nix b/.history/src/home_20220304212607.nix
new file mode 100644
index 0000000..01a8e2f
--- /dev/null
+++ b/.history/src/home_20220304212607.nix
@@ -0,0 +1,41 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+    import = [
+        ./apps/personal/steam.nix
+        
+    ];
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [
+        anytype
+
+        minecraft
+        git-crypt gnupg pinentry_qt
+        spotify
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        nodejs-17_x
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304212614.nix b/.history/src/home_20220304212614.nix
new file mode 100644
index 0000000..d136d5a
--- /dev/null
+++ b/.history/src/home_20220304212614.nix
@@ -0,0 +1,40 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+    import = [
+        ./apps/personal/steam.nix
+
+    ];
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [
+        anytype
+        minecraft
+        git-crypt gnupg pinentry_qt
+        spotify
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        nodejs-17_x
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304212621.nix b/.history/src/home_20220304212621.nix
new file mode 100644
index 0000000..5f248fb
--- /dev/null
+++ b/.history/src/home_20220304212621.nix
@@ -0,0 +1,40 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+    import = [
+        ./apps/personal/steam.nix
+
+    ];
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [  # New apps 
+        anytype
+        minecraft
+        git-crypt gnupg pinentry_qt
+        spotify
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        nodejs-17_x
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304212623.nix b/.history/src/home_20220304212623.nix
new file mode 100644
index 0000000..a0f9b6e
--- /dev/null
+++ b/.history/src/home_20220304212623.nix
@@ -0,0 +1,40 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+    import = [
+        ./apps/personal/steam.nix
+
+    ];
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [  # New apps sho
+        anytype
+        minecraft
+        git-crypt gnupg pinentry_qt
+        spotify
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        nodejs-17_x
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304212625.nix b/.history/src/home_20220304212625.nix
new file mode 100644
index 0000000..5742fd2
--- /dev/null
+++ b/.history/src/home_20220304212625.nix
@@ -0,0 +1,40 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+    import = [
+        ./apps/personal/steam.nix
+
+    ];
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [  # New apps should be on new 
+        anytype
+        minecraft
+        git-crypt gnupg pinentry_qt
+        spotify
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        nodejs-17_x
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304212627.nix b/.history/src/home_20220304212627.nix
new file mode 100644
index 0000000..eadce0d
--- /dev/null
+++ b/.history/src/home_20220304212627.nix
@@ -0,0 +1,40 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+    import = [
+        ./apps/personal/steam.nix
+
+    ];
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [  # New apps should be on new lines
+        anytype
+        minecraft
+        git-crypt gnupg pinentry_qt
+        spotify
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        nodejs-17_x
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304212808.nix b/.history/src/home_20220304212808.nix
new file mode 100644
index 0000000..cd8f326
--- /dev/null
+++ b/.history/src/home_20220304212808.nix
@@ -0,0 +1,39 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+    import = [
+        ./apps/personal/steam.nix
+
+    ];
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [  # New apps should be on new lines
+        anytype
+        minecraft
+        git-crypt gnupg pinentry_qt
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        nodejs-17_x
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304214359.nix b/.history/src/home_20220304214359.nix
new file mode 100644
index 0000000..af95188
--- /dev/null
+++ b/.history/src/home_20220304214359.nix
@@ -0,0 +1,38 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+    import = [
+        ./apps/personal/steam.nix
+
+    ];
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [  # New apps should be on new lines
+        anytype
+        minecraft
+        git-crypt gnupg pinentry_qt
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304214907.nix b/.history/src/home_20220304214907.nix
new file mode 100644
index 0000000..92bb513
--- /dev/null
+++ b/.history/src/home_20220304214907.nix
@@ -0,0 +1,40 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+in {
+    import = [
+        ./apps/personal/steam.nix
+
+    ];
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [  # New apps should be on new lines
+        anytype
+        minecraft
+        nodejs-17_x
+
+        git-crypt gnupg pinentry_qt
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304215030.nix b/.history/src/home_20220304215030.nix
new file mode 100644
index 0000000..75df351
--- /dev/null
+++ b/.history/src/home_20220304215030.nix
@@ -0,0 +1,52 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+
+      generatedPkgs =
+    let
+      toPkg = file: {
+        name = builtins.replaceStrings [ ".nix" ] [ "" ] file;
+        value = import (./. + "/pkgConfigs/${file}") { };
+       };
+     in
+       pkgs.lib.mapAttrs' toPkg (builtins.readDir (./. + "/pkgConfigs"));
+   in
+   { imports = generatedPkgs; }
+
+in {
+    import = [
+        ./apps/personal/steam.nix
+
+    ];
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [  # New apps should be on new lines
+        anytype
+        minecraft
+        nodejs-17_x
+
+        git-crypt gnupg pinentry_qt
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304215035.nix b/.history/src/home_20220304215035.nix
new file mode 100644
index 0000000..afbdd68
--- /dev/null
+++ b/.history/src/home_20220304215035.nix
@@ -0,0 +1,52 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+      
+       =
+    let
+      toPkg = file: {
+        name = builtins.replaceStrings [ ".nix" ] [ "" ] file;
+        value = import (./. + "/pkgConfigs/${file}") { };
+       };
+     in
+       pkgs.lib.mapAttrs' toPkg (builtins.readDir (./. + "/pkgConfigs"));
+   in
+   { imports = generatedPkgs; }
+
+in {
+    import = [
+        ./apps/personal/steam.nix
+
+    ];
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [  # New apps should be on new lines
+        anytype
+        minecraft
+        nodejs-17_x
+
+        git-crypt gnupg pinentry_qt
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304215041.nix b/.history/src/home_20220304215041.nix
new file mode 100644
index 0000000..7af92e1
--- /dev/null
+++ b/.history/src/home_20220304215041.nix
@@ -0,0 +1,52 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+    
+    =
+    let
+      toPkg = file: {
+        name = builtins.replaceStrings [ ".nix" ] [ "" ] file;
+        value = import (./. + "/pkgConfigs/${file}") { };
+       };
+     in
+       pkgs.lib.mapAttrs' toPkg (builtins.readDir (./. + "/pkgConfigs"));
+   in
+   { imports = generatedPkgs; }
+
+in {
+    import = [
+        ./apps/personal/steam.nix
+
+    ];
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [  # New apps should be on new lines
+        anytype
+        minecraft
+        nodejs-17_x
+
+        git-crypt gnupg pinentry_qt
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304215045.nix b/.history/src/home_20220304215045.nix
new file mode 100644
index 0000000..e9cfb76
--- /dev/null
+++ b/.history/src/home_20220304215045.nix
@@ -0,0 +1,51 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+    personalPackages =
+    let
+      toPkg = file: {
+        name = builtins.replaceStrings [ ".nix" ] [ "" ] file;
+        value = import (./. + "/pkgConfigs/${file}") { };
+       };
+     in
+       pkgs.lib.mapAttrs' toPkg (builtins.readDir (./. + "/pkgConfigs"));
+   in
+   { imports = generatedPkgs; }
+
+in {
+    import = [
+        ./apps/personal/steam.nix
+
+    ];
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [  # New apps should be on new lines
+        anytype
+        minecraft
+        nodejs-17_x
+
+        git-crypt gnupg pinentry_qt
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304215046.nix b/.history/src/home_20220304215046.nix
new file mode 100644
index 0000000..e9cfb76
--- /dev/null
+++ b/.history/src/home_20220304215046.nix
@@ -0,0 +1,51 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+    personalPackages =
+    let
+      toPkg = file: {
+        name = builtins.replaceStrings [ ".nix" ] [ "" ] file;
+        value = import (./. + "/pkgConfigs/${file}") { };
+       };
+     in
+       pkgs.lib.mapAttrs' toPkg (builtins.readDir (./. + "/pkgConfigs"));
+   in
+   { imports = generatedPkgs; }
+
+in {
+    import = [
+        ./apps/personal/steam.nix
+
+    ];
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [  # New apps should be on new lines
+        anytype
+        minecraft
+        nodejs-17_x
+
+        git-crypt gnupg pinentry_qt
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304215053.nix b/.history/src/home_20220304215053.nix
new file mode 100644
index 0000000..00e26e8
--- /dev/null
+++ b/.history/src/home_20220304215053.nix
@@ -0,0 +1,50 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+    personalPackages = let
+      toPkg = file: {
+        name = builtins.replaceStrings [ ".nix" ] [ "" ] file;
+        value = import (./. + "/pkgConfigs/${file}") { };
+       };
+     in
+       pkgs.lib.mapAttrs' toPkg (builtins.readDir (./. + "/pkgConfigs"));
+   in
+   { imports = generatedPkgs; }
+
+in {
+    import = [
+        ./apps/personal/steam.nix
+
+    ];
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [  # New apps should be on new lines
+        anytype
+        minecraft
+        nodejs-17_x
+
+        git-crypt gnupg pinentry_qt
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304215100.nix b/.history/src/home_20220304215100.nix
new file mode 100644
index 0000000..9a1f87f
--- /dev/null
+++ b/.history/src/home_20220304215100.nix
@@ -0,0 +1,48 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+    personalPackages = let
+      toPkg = file: {
+        name = builtins.replaceStrings [ ".nix" ] [ "" ] file;
+        value = import (./. + "/pkgConfigs/${file}") { };
+       };
+     in
+       pkgs.lib.mapAttrs' toPkg (builtins.readDir (./. + "/pkgConfigs"));
+
+in {
+    import = [
+        ./apps/personal/steam.nix
+
+    ];
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [  # New apps should be on new lines
+        anytype
+        minecraft
+        nodejs-17_x
+
+        git-crypt gnupg pinentry_qt
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304215101.nix b/.history/src/home_20220304215101.nix
new file mode 100644
index 0000000..6843da4
--- /dev/null
+++ b/.history/src/home_20220304215101.nix
@@ -0,0 +1,47 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+    personalPackages = let
+      toPkg = file: {
+        name = builtins.replaceStrings [ ".nix" ] [ "" ] file;
+        value = import (./. + "/pkgConfigs/${file}") { };
+       };
+     in
+       pkgs.lib.mapAttrs' toPkg (builtins.readDir (./. + "/pkgConfigs"));
+in {
+    import = [
+        ./apps/personal/steam.nix
+
+    ];
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [  # New apps should be on new lines
+        anytype
+        minecraft
+        nodejs-17_x
+
+        git-crypt gnupg pinentry_qt
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304215105.nix b/.history/src/home_20220304215105.nix
new file mode 100644
index 0000000..b9643f0
--- /dev/null
+++ b/.history/src/home_20220304215105.nix
@@ -0,0 +1,46 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+    personalPackages = let
+      toPkg = file: {
+        name = builtins.replaceStrings [ ".nix" ] [ "" ] file;
+        value = import (./. + "/pkgConfigs/${file}") { };
+       };
+     in pkgs.lib.mapAttrs' toPkg (builtins.readDir (./. + "/pkgConfigs"));
+in {
+    import = [
+        ./apps/personal/steam.nix
+
+    ];
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [  # New apps should be on new lines
+        anytype
+        minecraft
+        nodejs-17_x
+
+        git-crypt gnupg pinentry_qt
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304215108.nix b/.history/src/home_20220304215108.nix
new file mode 100644
index 0000000..cc58aa4
--- /dev/null
+++ b/.history/src/home_20220304215108.nix
@@ -0,0 +1,46 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+    personalPackages = let
+      toPkg = file: {
+        name = builtins.replaceStrings [ ".nix" ] [ "" ] file;
+        value = import (./. + "/pkgConfigs/${file}") { };
+      };
+     in pkgs.lib.mapAttrs' toPkg (builtins.readDir (./. + "/pkgConfigs"));
+in {
+    import = [
+        ./apps/personal/steam.nix
+
+    ];
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [  # New apps should be on new lines
+        anytype
+        minecraft
+        nodejs-17_x
+
+        git-crypt gnupg pinentry_qt
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304215111.nix b/.history/src/home_20220304215111.nix
new file mode 100644
index 0000000..96a0baf
--- /dev/null
+++ b/.history/src/home_20220304215111.nix
@@ -0,0 +1,46 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+    personalPackages = let
+      toPkg = file: {
+        name = builtins.replaceStrings [ ".nix" ] [ "" ] file;
+        value = import (./. + "/pkgConfigs/${file}") { };
+      };
+    in pkgs.lib.mapAttrs' toPkg (builtins.readDir (./. + "/pkgConfigs"));
+in {
+    import = [
+        ./apps/personal/steam.nix
+
+    ];
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [  # New apps should be on new lines
+        anytype
+        minecraft
+        nodejs-17_x
+
+        git-crypt gnupg pinentry_qt
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304215121.nix b/.history/src/home_20220304215121.nix
new file mode 100644
index 0000000..16cff61
--- /dev/null
+++ b/.history/src/home_20220304215121.nix
@@ -0,0 +1,43 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+    personalPackages = let
+      toPkg = file: {
+        name = builtins.replaceStrings [ ".nix" ] [ "" ] file;
+        value = import (./. + "/pkgConfigs/${file}") { };
+      };
+    in pkgs.lib.mapAttrs' toPkg (builtins.readDir (./. + "/pkgConfigs"));
+in {
+    import = personalPackages;
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [  # New apps should be on new lines
+        anytype
+        minecraft
+        nodejs-17_x
+
+        git-crypt gnupg pinentry_qt
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304215148.nix b/.history/src/home_20220304215148.nix
new file mode 100644
index 0000000..d1c60b3
--- /dev/null
+++ b/.history/src/home_20220304215148.nix
@@ -0,0 +1,43 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+    personalPackages = let
+      toPkg = file: {
+        name = builtins.replaceStrings [ ".nix" ] [ "" ] file;
+        value = import (./. + "/apps/personal/${file}") { };
+      };
+    in pkgs.lib.mapAttrs' toPkg (builtins.readDir (./. + "/pkgConfigs"));
+in {
+    import = personalPackages;
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [  # New apps should be on new lines
+        anytype
+        minecraft
+        nodejs-17_x
+
+        git-crypt gnupg pinentry_qt
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304215205.nix b/.history/src/home_20220304215205.nix
new file mode 100644
index 0000000..2122437
--- /dev/null
+++ b/.history/src/home_20220304215205.nix
@@ -0,0 +1,43 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+    personalPackages = let
+      toPkg = file: {
+        name = builtins.replaceStrings [ ".nix" ] [ "" ] file;
+        value = import "/apps/personal/${file}") { };
+      };
+    in pkgs.lib.mapAttrs' toPkg (builtins.readDir (./. + "/pkgConfigs"));
+in {
+    import = personalPackages;
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [  # New apps should be on new lines
+        anytype
+        minecraft
+        nodejs-17_x
+
+        git-crypt gnupg pinentry_qt
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304215206.nix b/.history/src/home_20220304215206.nix
new file mode 100644
index 0000000..5647b85
--- /dev/null
+++ b/.history/src/home_20220304215206.nix
@@ -0,0 +1,43 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+    personalPackages = let
+      toPkg = file: {
+        name = builtins.replaceStrings [ ".nix" ] [ "" ] file;
+        value = import "./apps/personal/${file}") { };
+      };
+    in pkgs.lib.mapAttrs' toPkg (builtins.readDir (./. + "/pkgConfigs"));
+in {
+    import = personalPackages;
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [  # New apps should be on new lines
+        anytype
+        minecraft
+        nodejs-17_x
+
+        git-crypt gnupg pinentry_qt
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304215209.nix b/.history/src/home_20220304215209.nix
new file mode 100644
index 0000000..457576a
--- /dev/null
+++ b/.history/src/home_20220304215209.nix
@@ -0,0 +1,43 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+    personalPackages = let
+      toPkg = file: {
+        name = builtins.replaceStrings [ ".nix" ] [ "" ] file;
+        value = import "./apps/personal/${file}";
+      };
+    in pkgs.lib.mapAttrs' toPkg (builtins.readDir (./. + "/pkgConfigs"));
+in {
+    import = personalPackages;
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [  # New apps should be on new lines
+        anytype
+        minecraft
+        nodejs-17_x
+
+        git-crypt gnupg pinentry_qt
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304215222.nix b/.history/src/home_20220304215222.nix
new file mode 100644
index 0000000..d1c60b3
--- /dev/null
+++ b/.history/src/home_20220304215222.nix
@@ -0,0 +1,43 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+    personalPackages = let
+      toPkg = file: {
+        name = builtins.replaceStrings [ ".nix" ] [ "" ] file;
+        value = import (./. + "/apps/personal/${file}") { };
+      };
+    in pkgs.lib.mapAttrs' toPkg (builtins.readDir (./. + "/pkgConfigs"));
+in {
+    import = personalPackages;
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [  # New apps should be on new lines
+        anytype
+        minecraft
+        nodejs-17_x
+
+        git-crypt gnupg pinentry_qt
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304215228.nix b/.history/src/home_20220304215228.nix
new file mode 100644
index 0000000..873ebc0
--- /dev/null
+++ b/.history/src/home_20220304215228.nix
@@ -0,0 +1,43 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+    personalPackages = let
+      toPkg = file: {
+        name = builtins.replaceStrings [ ".nix" ] [ "" ] file;
+        value = import (./. + "/apps/personal/${file}") { };
+      };
+    in pkgs.lib.mapAttrs' toPkg (builtins.readDir (./. + "/apps/personal/"));
+in {
+    import = personalPackages;
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [  # New apps should be on new lines
+        anytype
+        minecraft
+        nodejs-17_x
+
+        git-crypt gnupg pinentry_qt
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304215304.nix b/.history/src/home_20220304215304.nix
new file mode 100644
index 0000000..ab1dd41
--- /dev/null
+++ b/.history/src/home_20220304215304.nix
@@ -0,0 +1,43 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+    personalPackages = let
+      toPkg = file: {
+        name = builtins.replaceStrings [ ".nix" ] [ "" ] file;
+        value = "./apps/personal/${file}") { };
+      };
+    in pkgs.lib.mapAttrs' toPkg (builtins.readDir (./. + "/apps/personal/"));
+in {
+    import = personalPackages;
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [  # New apps should be on new lines
+        anytype
+        minecraft
+        nodejs-17_x
+
+        git-crypt gnupg pinentry_qt
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304215306.nix b/.history/src/home_20220304215306.nix
new file mode 100644
index 0000000..9213cad
--- /dev/null
+++ b/.history/src/home_20220304215306.nix
@@ -0,0 +1,43 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+    personalPackages = let
+      toPkg = file: {
+        name = builtins.replaceStrings [ ".nix" ] [ "" ] file;
+        value = "./apps/personal/${file}";
+      };
+    in pkgs.lib.mapAttrs' toPkg (builtins.readDir (./. + "/apps/personal/"));
+in {
+    import = personalPackages;
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [  # New apps should be on new lines
+        anytype
+        minecraft
+        nodejs-17_x
+
+        git-crypt gnupg pinentry_qt
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304220624.nix b/.history/src/home_20220304220624.nix
new file mode 100644
index 0000000..3054ad1
--- /dev/null
+++ b/.history/src/home_20220304220624.nix
@@ -0,0 +1,43 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+    personalPackages = let
+      toPkg = file: {
+        name = builtins.replaceStrings [ ".nix" ] [ "" ] file;
+        value = "./apps/personal/${file}";
+      };
+    in pkgs.lib.mapAttrs' toPkg (builtins.readDir (./. + "/apps/personal/"));
+in {
+    import = personalPackages;
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [  # New apps should be on new lines
+        anytype
+        minecraft
+        nodejs-17_x
+
+        git-crypt gnupg 
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/.history/src/home_20220304220627.nix b/.history/src/home_20220304220627.nix
new file mode 100644
index 0000000..ef97145
--- /dev/null
+++ b/.history/src/home_20220304220627.nix
@@ -0,0 +1,43 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+    personalPackages = let
+      toPkg = file: {
+        name = builtins.replaceStrings [ ".nix" ] [ "" ] file;
+        value = "./apps/personal/${file}";
+      };
+    in pkgs.lib.mapAttrs' toPkg (builtins.readDir (./. + "/apps/personal/"));
+in {
+    import = personalPackages;
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [  # New apps should be on new lines
+        anytype
+        minecraft
+        nodejs-17_x
+
+        git-crypt
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/flake.nix b/flake.nix
index 94f2327..7329556 100644
--- a/flake.nix
+++ b/flake.nix
@@ -1,11 +1,47 @@
 {
-  description = "A very basic flake";
+    description = "Minion3665's NixFiles (since 2022-03-24)";
 
-  outputs = { self, nixpkgs }: {
+    inputs = {
+        nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
+        home-manager.url = "github:nix-community/home-manager/release-21.11";
+    };
 
-    packages.x86_64-linux.hello = nixpkgs.legacyPackages.x86_64-linux.hello;
+    outputs = { self, nixpkgs, home-manager }: {
+        let
+            system = "x86_64-linux";  # TOOD: Add options for MacOS
 
-    defaultPackage.x86_64-linux = self.packages.x86_64-linux.hello;
+            pkgs = nixpkgs {
+                inherit system;
 
-  };
+                config = { allowUnfree = true; };
+            };
+
+            variables = import ./src/common/variables.nix;
+        in {
+            nixosConfigurations = {
+                default = pkgs.lib.nixosSystem {
+                    inherit system;
+
+                    modules = [
+                        src/system.nix
+                    ];
+                }
+            };
+
+            homeManagerConfiguration = {
+                minion = home-manager.lib.homeManagerConfiguration rec {
+                    inherit system pkgs;
+
+                    username = variables.username;
+                    homeDirectory = "/home/${username}";
+
+                    configuration = {
+                        imports = [
+                            src/home.nix
+                        ];
+                    }
+                }
+            }
+        };
+    };
 }
diff --git a/src/apps/personal/git.nix b/src/apps/personal/git.nix
new file mode 100644
index 0000000..37a52ea
--- /dev/null
+++ b/src/apps/personal/git.nix
@@ -0,0 +1,24 @@
+{ config, pkgs, nixpkgs }: {
+    programs.git = {
+        enable = true;
+
+        userName = "Skyler Turner";
+        userEmail = "skyler@clicksminuteper.net";
+
+        signing = {
+            key = "24D31D3B1B986F33";
+            signByDefault = true;
+            gpgPath = "gpg2";
+        };
+
+        lfs.enable = true;
+        delta.enable = true;
+
+        extraConfig = {
+            init.defaultBranch = "development";
+            color.ui = "auto";
+            core.autocrlf = "input";
+            pull.rebase = false;
+        };
+    };
+}
\ No newline at end of file
diff --git a/src/apps/personal/go.nix b/src/apps/personal/go.nix
new file mode 100644
index 0000000..dcf5a90
--- /dev/null
+++ b/src/apps/personal/go.nix
@@ -0,0 +1,3 @@
+{ config, pkgs, nixpkgs }: {
+    programs.go.enable = true;
+}
\ No newline at end of file
diff --git a/src/apps/personal/gpg.nix b/src/apps/personal/gpg.nix
new file mode 100644
index 0000000..71b5dba
--- /dev/null
+++ b/src/apps/personal/gpg.nix
@@ -0,0 +1,11 @@
+{ config, pkgs, nixpkgs }: {
+    programs.gpg.enable = true;
+    services.gpg-agent = {
+        enable = true;
+        pinentryFlavor = "qt";
+    };
+
+    home.packages = with pkgs; [
+        pinentry_qt
+    ];
+}
\ No newline at end of file
diff --git a/src/apps/personal/nodejs.nix b/src/apps/personal/nodejs.nix
new file mode 100644
index 0000000..b8ed6ac
--- /dev/null
+++ b/src/apps/personal/nodejs.nix
@@ -0,0 +1,7 @@
+{ config, pkgs, nixpkgs }: {
+    home.packages = with pkgs; [
+        nodejs-17_x
+    ];
+
+    programs.steam.enable = true;
+}
\ No newline at end of file
diff --git a/src/apps/personal/overlay/anytype.nix b/src/apps/personal/overlay/anytype.nix
new file mode 100644
index 0000000..e40117d
--- /dev/null
+++ b/src/apps/personal/overlay/anytype.nix
@@ -0,0 +1,39 @@
+final: prev: let
+  build = "57693545";
+  sha = "sha256-ayexUZNn7QGHjXYO/+1kUebTmAzdVpwG9Ile8Uh3i8Q=";
+
+  pname = "anytype";
+  name = "${pname}-${build}";
+
+  src = final.fetchurl {
+    url = "https://download.anytype.io/?action=download&key=desktop&id=${build}";
+    sha256 = sha;
+    name = "AnyType-${build}.AppImage";
+  };
+
+  appimageContents = final.appimageTools.extractType2 { inherit name src; };
+in {
+  anytype = prev.appimageTools.wrapType2 {
+    inherit name src;
+
+    extraPkgs = pkgs: (prev.appimageTools.defaultFhsEnvArgs.multiPkgs pkgs)
+      ++ [ pkgs.libsecret ];
+
+    extraInstallCommands = ''
+      mv $out/bin/${name} $out/bin/${pname}
+      install -m 444 -D ${appimageContents}/anytype2.desktop -t $out/share/applications
+      substituteInPlace $out/share/applications/anytype2.desktop \
+      --replace 'Exec=AppRun' 'Exec=${pname}'
+      install -m 444 -D ${appimageContents}/usr/share/icons/hicolor/0x0/apps/anytype2.png \
+        $out/share/icons/hicolor/512x512/apps/anytype2.png
+    '';
+
+    meta = with prev.lib; {
+      description = "P2P note-taking tool";
+      homepage = "https://anytype.io/";
+      license = licenses.unfree;
+      maintainers = with maintainers; [ bbigras ];
+      platforms = [ "x86_64-linux" ];
+    };
+  };
+}
diff --git a/src/apps/personal/spotify.nix b/src/apps/personal/spotify.nix
new file mode 100644
index 0000000..c341bf4
--- /dev/null
+++ b/src/apps/personal/spotify.nix
@@ -0,0 +1,5 @@
+{ config, pkgs, nixpkgs }: {
+    home.packages = with pkgs; [
+        spotify
+    ];
+}
\ No newline at end of file
diff --git a/src/apps/personal/steam.nix b/src/apps/personal/steam.nix
new file mode 100644
index 0000000..095bc0f
--- /dev/null
+++ b/src/apps/personal/steam.nix
@@ -0,0 +1,7 @@
+{ config, pkgs, nixpkgs }: {
+    home.packages = with pkgs; [
+        steam-run
+    ];
+
+    programs.steam.enable = true;
+}
\ No newline at end of file
diff --git a/src/apps/personal/vscode.nix b/src/apps/personal/vscode.nix
new file mode 100644
index 0000000..e1b2c2e
--- /dev/null
+++ b/src/apps/personal/vscode.nix
@@ -0,0 +1,4 @@
+{ config, pkgs, nixpkgs }: {
+    programs.vscode.enable = true;
+    programs.vscode.package = pkgs.vscode-fhs;
+}
\ No newline at end of file
diff --git a/src/apps/personal/zsh.nix b/src/apps/personal/zsh.nix
new file mode 100644
index 0000000..1f1f129
--- /dev/null
+++ b/src/apps/personal/zsh.nix
@@ -0,0 +1,39 @@
+{ config, pkgs, nixpkgs }: {
+    programs.zsh = {
+        enable = true;
+        oh-my-zsh = {
+            enable = true;
+            plugins = [ "git" ];
+            theme = "crunch";
+        };
+        history = {
+            size = 10000;
+            path = "${config.xdg.dataHome}/zsh/history";
+            expireDuplicatesFirst = true;
+            extended = true;
+        };
+        initExtra = ''
+            bindkey "\'\'$\{key[Up]}" up-line-or-search
+
+            command_not_found_handler ()
+            {
+                local p='/nix/store/ycclzpk99snlrk8sg9n4j8pm1927gavw-command-not-found/bin/command-not-found';
+                if [ -x "$p" ] && [ -f '/nix/var/nix/profiles/per-user/root/channels/nixos/programs.sqlite' ]; then
+                    "$p" "$@" 2>&1 | sed -r 's/nix-shell -p (\S+)/nix shell nixpkgs#\1/g' 1>&2;
+                  if [ $? = 126 ]; then
+                        "$@";
+                    else
+                        return 127;
+                    fi;
+                else
+                    echo "$1: command not found" 1>&2;
+                    return 127;
+                fi
+            }
+        '';
+        enableSyntaxHighlighting = true;
+        enableAutosuggestions = true;
+        autocd = true;
+        dotDir = ".local/share/zsh";
+    };
+}
\ No newline at end of file
diff --git a/src/common/variables.nix b/src/common/variables.nix
new file mode 100644
index 0000000..6c486fb
--- /dev/null
+++ b/src/common/variables.nix
@@ -0,0 +1,4 @@
+{
+    stateVersion = "21.11";
+    username = "minion";
+}
\ No newline at end of file
diff --git a/src/home.nix b/src/home.nix
new file mode 100644
index 0000000..ef97145
--- /dev/null
+++ b/src/home.nix
@@ -0,0 +1,43 @@
+{ config, pkgs, nixpkgs }:
+let
+    variables = import ./common/variables.nix;
+    personalPackages = let
+      toPkg = file: {
+        name = builtins.replaceStrings [ ".nix" ] [ "" ] file;
+        value = "./apps/personal/${file}";
+      };
+    in pkgs.lib.mapAttrs' toPkg (builtins.readDir (./. + "/apps/personal/"));
+in {
+    import = personalPackages;
+
+    nixpkgs.overlays = [
+        (import ./overlays/anytype.nix)
+    ];
+
+    home.packages = with pkgs; [  # New apps should be on new lines
+        anytype
+        minecraft
+        nodejs-17_x
+
+        git-crypt
+        keepassxc
+        grim slurp
+        neovim helix
+        qemu
+        bind
+        file
+        nur.repos.kira-bruneau.rofi-wayland
+        rofimoji
+        anytype-latest
+        htop
+        hue-cli
+        comma
+        zip
+        mindustry-alpha-wayland
+        element
+        tdesktop
+    ];  # Use *only* for packages that need no configuration;
+    # other packages should go in ./apps/personal/
+
+    home.stateVersion = variables.stateVersion;
+}
\ No newline at end of file
diff --git a/src/system.nix b/src/system.nix
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/src/system.nix
