From 2838549a4c96c86670e8aec6ef992f033f64af30 Mon Sep 17 00:00:00 2001
From: willifan <willifan@proton.me>
Date: Tue, 24 Dec 2024 11:20:23 +0100
Subject: [PATCH 1/2] update flake

---
 flake.lock | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/flake.lock b/flake.lock
index 5a79541..569142f 100644
--- a/flake.lock
+++ b/flake.lock
@@ -289,11 +289,11 @@
         ]
       },
       "locked": {
-        "lastModified": 1734893333,
-        "narHash": "sha256-0Ft7iTkl3UWAix72teY5nflYQD7GE0KvIiT+ox4wkB8=",
+        "lastModified": 1734992499,
+        "narHash": "sha256-f9UyHMTb+BwF6RDZ8eO9HOkSlKeeSPBlcYhMmV1UNIk=",
         "owner": "nix-community",
         "repo": "home-manager",
-        "rev": "1f74238a4c8e534a1b6be72cb5153043071ffd17",
+        "rev": "f1b1786ea77739dcd181b920d430e30fb1608b8a",
         "type": "github"
       },
       "original": {
@@ -438,11 +438,11 @@
     },
     "nixos-hardware": {
       "locked": {
-        "lastModified": 1734862644,
-        "narHash": "sha256-04xesW7HITdF5WUmNM39WD4tkEERk3Ez2W1nNvdIvIw=",
+        "lastModified": 1734954597,
+        "narHash": "sha256-QIhd8/0x30gEv8XEE1iAnrdMlKuQ0EzthfDR7Hwl+fk=",
         "owner": "nixos",
         "repo": "nixos-hardware",
-        "rev": "e8516a23524cc9083f5a02a8d64d14770e4c7c09",
+        "rev": "def1d472c832d77885f174089b0d34854b007198",
         "type": "github"
       },
       "original": {
@@ -482,11 +482,11 @@
         "treefmt-nix": "treefmt-nix"
       },
       "locked": {
-        "lastModified": 1734880727,
-        "narHash": "sha256-bQfaaYoH8kSdw2UWb8RLZoa/2jPvDjaw87nvj+pO5lE=",
+        "lastModified": 1734956286,
+        "narHash": "sha256-8h7Fs6S+Ftg3NNmwT/KkYWI9epUNPCMPn56QFXOfmTM=",
         "owner": "nix-community",
         "repo": "nixvim",
-        "rev": "450cccf472f40ae8e3b92eec9e5f4b071693ac85",
+        "rev": "8938e09db14d510dcc2f266e8b2e738ee527d386",
         "type": "github"
       },
       "original": {

From 184b0866d47bb89d89f3c82355bc9349a6ee4721 Mon Sep 17 00:00:00 2001
From: willifan <willifan@proton.me>
Date: Tue, 24 Dec 2024 17:24:11 +0100
Subject: [PATCH 2/2] moved users/willifan to home-manager module

---
 hosts/Anton/default.nix                       |  1 +
 hosts/Lenni/default.nix                       |  1 +
 hosts/Lillie/default.nix                      |  1 +
 hosts/Puenktchen/default.nix                  |  1 +
 modules/common/default.nix                    |  7 +++
 {users/willifan => modules}/common/envvar.nix |  0
 modules/common/keyd.nix                       | 12 ++--
 .../willifan => modules}/common/locales.nix   |  0
 .../common/nixvim/TODO.md                     |  0
 .../common/nixvim/autopairs.nix               |  0
 .../common/nixvim/cmp.nix                     |  0
 .../common/nixvim/default.nix                 |  0
 .../common/nixvim/filetype.nix                |  0
 .../common/nixvim/gitsigns.nix                |  0
 .../common/nixvim/illuminate.nix              |  0
 .../common/nixvim/lsp.nix                     |  0
 .../common/nixvim/navic.nix                   |  0
 .../common/nixvim/neotree.nix                 |  0
 .../common/nixvim/settings.nix                |  0
 .../common/nixvim/treesitter.nix              |  0
 .../common/nixvim/whichkey.nix                |  0
 .../common/nixvim/yazi.nix                    |  0
 modules/common/packages.nix                   |  8 +++
 modules/common/stylix.nix                     | 33 +++++++++++
 .../user.nix => modules/common/users.nix      |  3 +-
 modules/home-manager/default.nix              | 16 ++++++
 modules/home-manager/git.nix                  | 12 ++++
 modules/home-manager/shell/bash.nix           | 20 +++++++
 .../home-manager}/shell/default.nix           |  2 -
 modules/home-manager/shell/eza.nix            |  8 +++
 modules/home-manager/shell/hyfetch.nix        | 53 ++++++++++++++++++
 modules/home-manager/shell/nushell.nix        | 13 +++++
 .../home-manager/shell/ssh.nix                |  1 -
 .../home-manager}/shell/starship.nix          | 46 ++++++++--------
 modules/home-manager/shell/zoxide.nix         | 11 ++++
 .../theme => modules/home-manager}/stylix.nix | 24 ++------
 modules/home-manager/tmux/default.nix         |  8 +++
 modules/home-manager/utils/default.nix        |  9 +++
 users/willifan/Anton/default.nix              |  4 +-
 users/willifan/Puenktchen/default.nix         |  4 +-
 users/willifan/common/default.nix             | 17 ------
 users/willifan/common/git.nix                 | 14 -----
 users/willifan/common/shell/bash.nix          | 20 -------
 users/willifan/common/shell/eza.nix           | 10 ----
 users/willifan/common/shell/hyfetch.nix       | 55 -------------------
 users/willifan/common/shell/nushell.nix       | 15 -----
 users/willifan/common/shell/ssh.nix           |  6 --
 users/willifan/common/shell/zoxide.nix        | 13 -----
 users/willifan/common/shell/zsh.nix           | 14 -----
 users/willifan/common/theme/default.nix       |  7 ---
 users/willifan/common/tmux/default.nix        | 10 ----
 users/willifan/common/utils/default.nix       | 18 ------
 users/willifan/default.nix                    |  5 +-
 users/willifan/desktop/dev/default.nix        |  1 -
 users/willifan/desktop/dev/rust.nix           | 14 -----
 users/willifan/desktop/keyboard/default.nix   |  2 +-
 56 files changed, 243 insertions(+), 276 deletions(-)
 rename {users/willifan => modules}/common/envvar.nix (100%)
 rename {users/willifan => modules}/common/locales.nix (100%)
 rename {users/willifan => modules}/common/nixvim/TODO.md (100%)
 rename {users/willifan => modules}/common/nixvim/autopairs.nix (100%)
 rename {users/willifan => modules}/common/nixvim/cmp.nix (100%)
 rename {users/willifan => modules}/common/nixvim/default.nix (100%)
 rename {users/willifan => modules}/common/nixvim/filetype.nix (100%)
 rename {users/willifan => modules}/common/nixvim/gitsigns.nix (100%)
 rename {users/willifan => modules}/common/nixvim/illuminate.nix (100%)
 rename {users/willifan => modules}/common/nixvim/lsp.nix (100%)
 rename {users/willifan => modules}/common/nixvim/navic.nix (100%)
 rename {users/willifan => modules}/common/nixvim/neotree.nix (100%)
 rename {users/willifan => modules}/common/nixvim/settings.nix (100%)
 rename {users/willifan => modules}/common/nixvim/treesitter.nix (100%)
 rename {users/willifan => modules}/common/nixvim/whichkey.nix (100%)
 rename {users/willifan => modules}/common/nixvim/yazi.nix (100%)
 create mode 100644 modules/common/packages.nix
 create mode 100644 modules/common/stylix.nix
 rename users/willifan/common/user.nix => modules/common/users.nix (80%)
 create mode 100644 modules/home-manager/default.nix
 create mode 100644 modules/home-manager/git.nix
 create mode 100644 modules/home-manager/shell/bash.nix
 rename {users/willifan/common => modules/home-manager}/shell/default.nix (73%)
 create mode 100644 modules/home-manager/shell/eza.nix
 create mode 100644 modules/home-manager/shell/hyfetch.nix
 create mode 100644 modules/home-manager/shell/nushell.nix
 rename users/willifan/server/default.nix => modules/home-manager/shell/ssh.nix (81%)
 rename {users/willifan/common => modules/home-manager}/shell/starship.nix (83%)
 create mode 100644 modules/home-manager/shell/zoxide.nix
 rename {users/willifan/common/theme => modules/home-manager}/stylix.nix (74%)
 create mode 100644 modules/home-manager/tmux/default.nix
 create mode 100644 modules/home-manager/utils/default.nix
 delete mode 100644 users/willifan/common/default.nix
 delete mode 100644 users/willifan/common/git.nix
 delete mode 100644 users/willifan/common/shell/bash.nix
 delete mode 100644 users/willifan/common/shell/eza.nix
 delete mode 100644 users/willifan/common/shell/hyfetch.nix
 delete mode 100644 users/willifan/common/shell/nushell.nix
 delete mode 100644 users/willifan/common/shell/ssh.nix
 delete mode 100644 users/willifan/common/shell/zoxide.nix
 delete mode 100644 users/willifan/common/shell/zsh.nix
 delete mode 100644 users/willifan/common/theme/default.nix
 delete mode 100644 users/willifan/common/tmux/default.nix
 delete mode 100644 users/willifan/common/utils/default.nix
 delete mode 100644 users/willifan/desktop/dev/rust.nix

diff --git a/hosts/Anton/default.nix b/hosts/Anton/default.nix
index 9011a6b..e4cd83a 100644
--- a/hosts/Anton/default.nix
+++ b/hosts/Anton/default.nix
@@ -17,6 +17,7 @@
 
     ../../modules/common
     ../../modules/server
+    ../../modules/home-manager
 
   ];
 
diff --git a/hosts/Lenni/default.nix b/hosts/Lenni/default.nix
index 183df04..ba9ef7b 100644
--- a/hosts/Lenni/default.nix
+++ b/hosts/Lenni/default.nix
@@ -6,6 +6,7 @@
 
     ../../modules/common
     ../../modules/desktop
+    ../../modules/home-manager
   ];
 
   common.syncthing = {
diff --git a/hosts/Lillie/default.nix b/hosts/Lillie/default.nix
index 6951150..be8e2ef 100644
--- a/hosts/Lillie/default.nix
+++ b/hosts/Lillie/default.nix
@@ -6,6 +6,7 @@
 
     ../../modules/common
     ../../modules/desktop
+    ../../modules/home-manager
 
   ];
 }
diff --git a/hosts/Puenktchen/default.nix b/hosts/Puenktchen/default.nix
index a6d8a42..27a5fbb 100644
--- a/hosts/Puenktchen/default.nix
+++ b/hosts/Puenktchen/default.nix
@@ -6,6 +6,7 @@
 
     ../../modules/common
     ../../modules/desktop
+    ../../modules/home-manager
   
   ];
 
diff --git a/modules/common/default.nix b/modules/common/default.nix
index 8591c16..ba88908 100644
--- a/modules/common/default.nix
+++ b/modules/common/default.nix
@@ -1,13 +1,20 @@
 { hostname, ... }:
 {
   imports = [
+    ./nixvim
+
     ./autoupdate.nix
+    ./envvar.nix
     ./garbage-collect.nix
     ./keyd.nix
+    ./locales.nix
     ./mimetype.nix
     ./optimise.nix
+    ./packages.nix
     ./sops.nix
+    ./stylix.nix
     ./syncthing.nix
+    ./users.nix
   ];
 
   networking = {
diff --git a/users/willifan/common/envvar.nix b/modules/common/envvar.nix
similarity index 100%
rename from users/willifan/common/envvar.nix
rename to modules/common/envvar.nix
diff --git a/modules/common/keyd.nix b/modules/common/keyd.nix
index a8b0c41..f9f1d84 100644
--- a/modules/common/keyd.nix
+++ b/modules/common/keyd.nix
@@ -8,14 +8,14 @@
       settings = {
         main = {
           rightalt = "overload(altgr, rightalt)";
-	  capslock = "overload(control, esc)";
-	};
-	altgr = {
+	        capslock = "overload(control, esc)";
+	      };
+	      altgr = {
           a = ''macro(compose a ")'';
           o = ''macro(compose o ")'';
-	  u = ''macro(compose u ")'';
-	  s = ''macro(compose s s)'';
-	};
+      	  u = ''macro(compose u ")'';
+      	  s = ''macro(compose s s)'';
+	      };
       };
     };
   };
diff --git a/users/willifan/common/locales.nix b/modules/common/locales.nix
similarity index 100%
rename from users/willifan/common/locales.nix
rename to modules/common/locales.nix
diff --git a/users/willifan/common/nixvim/TODO.md b/modules/common/nixvim/TODO.md
similarity index 100%
rename from users/willifan/common/nixvim/TODO.md
rename to modules/common/nixvim/TODO.md
diff --git a/users/willifan/common/nixvim/autopairs.nix b/modules/common/nixvim/autopairs.nix
similarity index 100%
rename from users/willifan/common/nixvim/autopairs.nix
rename to modules/common/nixvim/autopairs.nix
diff --git a/users/willifan/common/nixvim/cmp.nix b/modules/common/nixvim/cmp.nix
similarity index 100%
rename from users/willifan/common/nixvim/cmp.nix
rename to modules/common/nixvim/cmp.nix
diff --git a/users/willifan/common/nixvim/default.nix b/modules/common/nixvim/default.nix
similarity index 100%
rename from users/willifan/common/nixvim/default.nix
rename to modules/common/nixvim/default.nix
diff --git a/users/willifan/common/nixvim/filetype.nix b/modules/common/nixvim/filetype.nix
similarity index 100%
rename from users/willifan/common/nixvim/filetype.nix
rename to modules/common/nixvim/filetype.nix
diff --git a/users/willifan/common/nixvim/gitsigns.nix b/modules/common/nixvim/gitsigns.nix
similarity index 100%
rename from users/willifan/common/nixvim/gitsigns.nix
rename to modules/common/nixvim/gitsigns.nix
diff --git a/users/willifan/common/nixvim/illuminate.nix b/modules/common/nixvim/illuminate.nix
similarity index 100%
rename from users/willifan/common/nixvim/illuminate.nix
rename to modules/common/nixvim/illuminate.nix
diff --git a/users/willifan/common/nixvim/lsp.nix b/modules/common/nixvim/lsp.nix
similarity index 100%
rename from users/willifan/common/nixvim/lsp.nix
rename to modules/common/nixvim/lsp.nix
diff --git a/users/willifan/common/nixvim/navic.nix b/modules/common/nixvim/navic.nix
similarity index 100%
rename from users/willifan/common/nixvim/navic.nix
rename to modules/common/nixvim/navic.nix
diff --git a/users/willifan/common/nixvim/neotree.nix b/modules/common/nixvim/neotree.nix
similarity index 100%
rename from users/willifan/common/nixvim/neotree.nix
rename to modules/common/nixvim/neotree.nix
diff --git a/users/willifan/common/nixvim/settings.nix b/modules/common/nixvim/settings.nix
similarity index 100%
rename from users/willifan/common/nixvim/settings.nix
rename to modules/common/nixvim/settings.nix
diff --git a/users/willifan/common/nixvim/treesitter.nix b/modules/common/nixvim/treesitter.nix
similarity index 100%
rename from users/willifan/common/nixvim/treesitter.nix
rename to modules/common/nixvim/treesitter.nix
diff --git a/users/willifan/common/nixvim/whichkey.nix b/modules/common/nixvim/whichkey.nix
similarity index 100%
rename from users/willifan/common/nixvim/whichkey.nix
rename to modules/common/nixvim/whichkey.nix
diff --git a/users/willifan/common/nixvim/yazi.nix b/modules/common/nixvim/yazi.nix
similarity index 100%
rename from users/willifan/common/nixvim/yazi.nix
rename to modules/common/nixvim/yazi.nix
diff --git a/modules/common/packages.nix b/modules/common/packages.nix
new file mode 100644
index 0000000..0b8d293
--- /dev/null
+++ b/modules/common/packages.nix
@@ -0,0 +1,8 @@
+{ pkgs, ...}:
+{
+
+  environment.systemPackages = with pkgs; [
+    tealdeer
+  ];
+
+}
diff --git a/modules/common/stylix.nix b/modules/common/stylix.nix
new file mode 100644
index 0000000..afd1fb5
--- /dev/null
+++ b/modules/common/stylix.nix
@@ -0,0 +1,33 @@
+{ pkgs, ... }:
+let
+  wallpaper = pkgs.fetchurl {
+    url = "https://files.huwe.mooo.com/Oneshot.png";
+    hash = "sha256-LaIzLCW86sbldE9lk7psbYKaTCjwaPLcoD3il6FalTw=";
+  };
+  plymouth_logo = pkgs.fetchurl {
+    url = "https://files.huwe.mooo.com/outlinenobackground.png";
+    hash = "sha256-HdErySgSwNSPEHyBywLyZCAss4vUhsY8BvCPe5hST6Q=";
+  };
+in
+{
+
+  stylix = {
+    enable = true;
+
+    autoEnable = true;
+
+    base16Scheme = "${pkgs.base16-schemes}/share/themes/pasque.yaml";
+    override = {
+      base0D = "F3196E";
+      base0F = "CFAACF";
+    };
+
+    image = wallpaper;
+
+    polarity = "dark";
+
+    targets.plymouth.logo = plymouth_logo;
+    
+  };
+
+}
diff --git a/users/willifan/common/user.nix b/modules/common/users.nix
similarity index 80%
rename from users/willifan/common/user.nix
rename to modules/common/users.nix
index a236085..c4ea947 100644
--- a/users/willifan/common/user.nix
+++ b/modules/common/users.nix
@@ -1,9 +1,10 @@
-{ ... }:
+{ pkgs, ... }:
 {
   users.users.willifan = {
     isNormalUser = true;
     description = "willifan";
     extraGroups = [ "networkmanager" "wheel" "syncthing" ];
+    shell = pkgs.bash;
   };
 
 }
diff --git a/modules/home-manager/default.nix b/modules/home-manager/default.nix
new file mode 100644
index 0000000..891c1c4
--- /dev/null
+++ b/modules/home-manager/default.nix
@@ -0,0 +1,16 @@
+{ ... }:
+{
+  home-manager.users.willifan = {
+    imports = [
+      ./shell
+      ./tmux
+      ./utils
+
+      ./git.nix
+      ./stylix.nix
+    ];
+
+    home.stateVersion = "23.11";
+  };
+
+}
diff --git a/modules/home-manager/git.nix b/modules/home-manager/git.nix
new file mode 100644
index 0000000..c909a9b
--- /dev/null
+++ b/modules/home-manager/git.nix
@@ -0,0 +1,12 @@
+{ pkgs, ... }:
+{
+  programs.git = {
+    enable = true;
+    package = pkgs.gitAndTools.gitFull;
+    userName = "willifan";
+    userEmail = "willifan@pm.me";
+    extraConfig = {
+      init.defaultBranch = "main";
+    };
+  };
+}
diff --git a/modules/home-manager/shell/bash.nix b/modules/home-manager/shell/bash.nix
new file mode 100644
index 0000000..331e29b
--- /dev/null
+++ b/modules/home-manager/shell/bash.nix
@@ -0,0 +1,20 @@
+{ ... }:
+{
+  
+  programs = {
+    bash = {
+      enable = true;
+     shellAliases = {
+        ls = "eza";
+     };
+    };
+
+    starship = {
+      enableBashIntegration = true;
+    };
+      
+  };
+
+#  programs.bash.blesh.enable = true;
+
+}
diff --git a/users/willifan/common/shell/default.nix b/modules/home-manager/shell/default.nix
similarity index 73%
rename from users/willifan/common/shell/default.nix
rename to modules/home-manager/shell/default.nix
index ca4468f..91821ed 100644
--- a/users/willifan/common/shell/default.nix
+++ b/modules/home-manager/shell/default.nix
@@ -9,9 +9,7 @@
     ./ssh.nix
     ./starship.nix
     ./zoxide.nix
-    ./zsh.nix
   ];
 
-  users.users.willifan.shell = pkgs.bash;
 
 }
diff --git a/modules/home-manager/shell/eza.nix b/modules/home-manager/shell/eza.nix
new file mode 100644
index 0000000..7027e70
--- /dev/null
+++ b/modules/home-manager/shell/eza.nix
@@ -0,0 +1,8 @@
+{ ... }:
+{
+
+  programs.eza = {
+    enable = true;
+  };
+
+}
diff --git a/modules/home-manager/shell/hyfetch.nix b/modules/home-manager/shell/hyfetch.nix
new file mode 100644
index 0000000..9bd8990
--- /dev/null
+++ b/modules/home-manager/shell/hyfetch.nix
@@ -0,0 +1,53 @@
+{ ... }:
+
+{
+  programs.hyfetch = {
+    enable = true;
+    settings = {
+      preset = "transgender";
+      mode = "rgb";
+      light_dark = "dark";
+      lightness = 0.69;
+      color_align = {
+        mode = "horizontal";
+        custom_colors = [];
+        fore_back = null;
+      };
+      backend = "fastfetch";
+      args = null;
+      distro = null;
+      pride_month_shown = [];
+      pride_month_disable = false;
+    };
+  };
+  programs.fastfetch = {
+    enable = true;
+    settings = {
+      modules = [
+        "title"
+	      "separator"
+	      "os"
+        "host"
+	      {
+          type = "localip";
+          showIpv6 = false;
+          showMac = false;
+          showSpeed = false;
+          showMtu = false;
+          showLoop = false;
+          showFlags = false;
+	      }
+    	  "kernel"
+	      "uptime"
+    	  "packages"
+	      "shell"
+    	  "wm"
+	      "cpu"
+	      "gpu"
+  	    "memory"
+  	    "break"
+	      "colors"
+    	];
+    };
+  };
+}
diff --git a/modules/home-manager/shell/nushell.nix b/modules/home-manager/shell/nushell.nix
new file mode 100644
index 0000000..30a0542
--- /dev/null
+++ b/modules/home-manager/shell/nushell.nix
@@ -0,0 +1,13 @@
+{ ... }:
+{
+
+  programs = {
+    nushell = {
+      enable = true;
+    };
+    starship = {
+      enableNushellIntegration = true;
+    };
+  };
+
+}
diff --git a/users/willifan/server/default.nix b/modules/home-manager/shell/ssh.nix
similarity index 81%
rename from users/willifan/server/default.nix
rename to modules/home-manager/shell/ssh.nix
index 1c4f482..52c14b8 100644
--- a/users/willifan/server/default.nix
+++ b/modules/home-manager/shell/ssh.nix
@@ -1,4 +1,3 @@
 { ... }:
 {
-  
 }
diff --git a/users/willifan/common/shell/starship.nix b/modules/home-manager/shell/starship.nix
similarity index 83%
rename from users/willifan/common/shell/starship.nix
rename to modules/home-manager/shell/starship.nix
index 417b914..7557b2f 100644
--- a/users/willifan/common/shell/starship.nix
+++ b/modules/home-manager/shell/starship.nix
@@ -1,11 +1,11 @@
 { lib, config, ... }:
 {
 
-  home-manager.users.willifan.programs.starship = {
+  programs.starship = {
     enable = true;
     settings = {
       format = lib.concatStrings [
-	"[  ](fg:twelve bg:trans_blue)"
+	      "[  ](fg:twelve bg:trans_blue)"
         "[ ](bg:trans_blue)[ ](fg:trans_blue bg:trans_pink)"
         "$hostname"
         "[ ](bg:trans_pink)[ ](fg:trans_pink bg:trans_white)"
@@ -22,13 +22,13 @@
       right_format = lib.concatStrings [
         "$cmd_duration"
         "("
-            "$python"
-            "$conda"
-            "$c"
-	    "$cmake"
-            "$golang"
-            "$haskell"
-            "$rust"
+          "$python"
+          "$conda"
+          "$c"
+	        "$cmake"
+          "$golang"
+          "$haskell"
+          "$rust"
         ")"
       ];
 
@@ -47,23 +47,23 @@
         sixth = config.lib.stylix.colors.withHashtag.base05;
         seventh = config.lib.stylix.colors.withHashtag.base06;
         eighth = config.lib.stylix.colors.withHashtag.base07;
-	baseeight = config.lib.stylix.colors.withHashtag.base08;
-	basenine = config.lib.stylix.colors.withHashtag.base09;
-	ten = config.lib.stylix.colors.withHashtag.base0A;
-	eleven = config.lib.stylix.colors.withHashtag.base0B;
+      	baseeight = config.lib.stylix.colors.withHashtag.base08;
+      	basenine = config.lib.stylix.colors.withHashtag.base09;
+      	ten = config.lib.stylix.colors.withHashtag.base0A;
+      	eleven = config.lib.stylix.colors.withHashtag.base0B;
         twelve = config.lib.stylix.colors.withHashtag.base0C;
         thirteen = config.lib.stylix.colors.withHashtag.base0D;
-	fourteen = config.lib.stylix.colors.withHashtag.base0E;
+      	fourteen = config.lib.stylix.colors.withHashtag.base0E;
         fifteen = config.lib.stylix.colors.withHashtag.base0F;
-	trans_blue = "#55CDFD";
-	trans_pink = "#F6AAB7";
-	trans_white = "#FFFFFF";
-	pride_red = "#FF1E26";
-	pride_orange = "#FE941E";
-	pride_yellow = "#FFFF00";
-	pride_green = "#06BD00";
-	pride_blue = "#001A98";
-	pride_violet = "#760088";
+       	trans_blue = "#55CDFD";
+      	trans_pink = "#F6AAB7";
+      	trans_white = "#FFFFFF";
+      	pride_red = "#FF1E26";
+      	pride_orange = "#FE941E";
+      	pride_yellow = "#FFFF00";
+      	pride_green = "#06BD00";
+      	pride_blue = "#001A98";
+      	pride_violet = "#760088";
         # Text color:
         black = "#272D37";
         white = "#CBF4F8";
diff --git a/modules/home-manager/shell/zoxide.nix b/modules/home-manager/shell/zoxide.nix
new file mode 100644
index 0000000..e9d98b2
--- /dev/null
+++ b/modules/home-manager/shell/zoxide.nix
@@ -0,0 +1,11 @@
+{ ... }:
+{
+
+  programs.zoxide = {
+    enable = true;
+    options = [
+      "--cmd cd"
+    ];
+  };
+
+}
diff --git a/users/willifan/common/theme/stylix.nix b/modules/home-manager/stylix.nix
similarity index 74%
rename from users/willifan/common/theme/stylix.nix
rename to modules/home-manager/stylix.nix
index 8c5a0d1..2e87f13 100644
--- a/users/willifan/common/theme/stylix.nix
+++ b/modules/home-manager/stylix.nix
@@ -1,9 +1,5 @@
 { pkgs, ... }:
 let
-  plymouth_logo = pkgs.fetchurl {
-    url = "https://files.huwe.mooo.com/outlinenobackground.png";
-    hash = "sha256-HdErySgSwNSPEHyBywLyZCAss4vUhsY8BvCPe5hST6Q=";
-  };
   wallpaper = pkgs.fetchurl {
     url = "https://files.huwe.mooo.com/Oneshot.png";
     hash = "sha256-LaIzLCW86sbldE9lk7psbYKaTCjwaPLcoD3il6FalTw=";
@@ -59,22 +55,12 @@ in
 
     polarity = "dark";
 
-    targets.plymouth.logo = plymouth_logo;
+    iconTheme = {
+      enable = true;
+      dark = "Papirus-Dark";
+      package = pkgs.papirus-icon-theme;
+    };
     
   };
 
-  home-manager.users.willifan = {
-    stylix = {
-      enable = true;
-      autoEnable = true;
-    };
-  };
-
-  home-manager.users.willifan = {
-    gtk.iconTheme = {
-      name = "Papirus-Dark";
-      package = pkgs.papirus-icon-theme;
-    };
-  };
-
 }
diff --git a/modules/home-manager/tmux/default.nix b/modules/home-manager/tmux/default.nix
new file mode 100644
index 0000000..e2e77fa
--- /dev/null
+++ b/modules/home-manager/tmux/default.nix
@@ -0,0 +1,8 @@
+{ ... }:
+{
+
+  programs.tmux = {
+    enable = true;
+  };
+
+}
diff --git a/modules/home-manager/utils/default.nix b/modules/home-manager/utils/default.nix
new file mode 100644
index 0000000..cb3853b
--- /dev/null
+++ b/modules/home-manager/utils/default.nix
@@ -0,0 +1,9 @@
+{ ... }:
+{
+
+  services.avizo.enable = true;
+  programs.bat.enable = true;
+  programs.btop.enable = true;
+  programs.yazi.enable = true;
+
+}
diff --git a/users/willifan/Anton/default.nix b/users/willifan/Anton/default.nix
index 1c4f482..4b42ce7 100644
--- a/users/willifan/Anton/default.nix
+++ b/users/willifan/Anton/default.nix
@@ -1,4 +1,2 @@
 { ... }:
-{
-  
-}
+{}
diff --git a/users/willifan/Puenktchen/default.nix b/users/willifan/Puenktchen/default.nix
index 1c4f482..4b42ce7 100644
--- a/users/willifan/Puenktchen/default.nix
+++ b/users/willifan/Puenktchen/default.nix
@@ -1,4 +1,2 @@
 { ... }:
-{
-  
-}
+{}
diff --git a/users/willifan/common/default.nix b/users/willifan/common/default.nix
deleted file mode 100644
index 50f47b4..0000000
--- a/users/willifan/common/default.nix
+++ /dev/null
@@ -1,17 +0,0 @@
-{ ... }:
-{
-  imports = [
-    ./nixvim
-    ./shell
-    ./theme
-    ./tmux
-    ./utils
-
-    ./envvar.nix
-    ./git.nix
-    ./locales.nix
-    ./user.nix
-  ];
-
-  home-manager.users.willifan.home.stateVersion = "23.11";
-}
diff --git a/users/willifan/common/git.nix b/users/willifan/common/git.nix
deleted file mode 100644
index 450056c..0000000
--- a/users/willifan/common/git.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{ pkgs, ... }:
-{
-  home-manager.users.willifan = {
-    programs.git = {
-      enable = true;
-      package = pkgs.gitAndTools.gitFull;
-      userName = "willifan";
-      userEmail = "willifan@proton.me";
-      extraConfig = {
-        init.defaultBranch = "main";
-      };
-    };
-  };
-}
diff --git a/users/willifan/common/shell/bash.nix b/users/willifan/common/shell/bash.nix
deleted file mode 100644
index 753765e..0000000
--- a/users/willifan/common/shell/bash.nix
+++ /dev/null
@@ -1,20 +0,0 @@
-{ ... }:
-{
-  
-  home-manager.users.willifan = {
-    programs = {
-      bash = {
-        enable = true;
-	shellAliases = {
-          ls = "eza";
-	};
-      };
-      starship = {
-        enableBashIntegration = true;
-      };
-    };
-  };
-
-#  programs.bash.blesh.enable = true;
-
-}
diff --git a/users/willifan/common/shell/eza.nix b/users/willifan/common/shell/eza.nix
deleted file mode 100644
index bcd651d..0000000
--- a/users/willifan/common/shell/eza.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ ... }:
-{
-
-  home-manager.users.willifan = {
-    programs.eza = {
-      enable = true;
-    };
-  };
-
-}
diff --git a/users/willifan/common/shell/hyfetch.nix b/users/willifan/common/shell/hyfetch.nix
deleted file mode 100644
index f0c2088..0000000
--- a/users/willifan/common/shell/hyfetch.nix
+++ /dev/null
@@ -1,55 +0,0 @@
-{ ... }:
-
-{
-  home-manager.users.willifan = {
-    programs.hyfetch = {
-      enable = true;
-      settings = {
-        preset = "transgender";
-        mode = "rgb";
-        light_dark = "dark";
-        lightness = 0.69;
-        color_align = {
-            mode = "horizontal";
-            custom_colors = [];
-            fore_back = null;
-        };
-        backend = "fastfetch";
-        args = null;
-        distro = null;
-        pride_month_shown = [];
-        pride_month_disable = false;
-      };
-    };
-    programs.fastfetch = {
-      enable = true;
-      settings = {
-        modules = [
-          "title"
-	  "separator"
-	  "os"
-          "host"
-	  {
-            type = "localip";
-            showIpv6 = false;
-            showMac = false;
-            showSpeed = false;
-            showMtu = false;
-            showLoop = false;
-            showFlags = false;
-	  }
-	  "kernel"
-	  "uptime"
-	  "packages"
-	  "shell"
-	  "wm"
-	  "cpu"
-	  "gpu"
-	  "memory"
-	  "break"
-	  "colors"
-	];
-      };
-    };
-  };
-}
diff --git a/users/willifan/common/shell/nushell.nix b/users/willifan/common/shell/nushell.nix
deleted file mode 100644
index 77d54d9..0000000
--- a/users/willifan/common/shell/nushell.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-{ ... }:
-{
-
-  home-manager.users.willifan = {
-    programs = {
-      nushell = {
-        enable = true;
-      };
-      starship = {
-        enableNushellIntegration = true;
-      };
-    };
-  };
-
-}
diff --git a/users/willifan/common/shell/ssh.nix b/users/willifan/common/shell/ssh.nix
deleted file mode 100644
index df0bb7d..0000000
--- a/users/willifan/common/shell/ssh.nix
+++ /dev/null
@@ -1,6 +0,0 @@
-{ ... }:
-{
-  home-manager.users.willifan = {
-    
-  };
-}
diff --git a/users/willifan/common/shell/zoxide.nix b/users/willifan/common/shell/zoxide.nix
deleted file mode 100644
index 4612a20..0000000
--- a/users/willifan/common/shell/zoxide.nix
+++ /dev/null
@@ -1,13 +0,0 @@
-{ ... }:
-{
-
-  home-manager.users.willifan = {
-    programs.zoxide = {
-      enable = true;
-      options = [
-        "--cmd cd"
-      ];
-    };
-  };
-
-}
diff --git a/users/willifan/common/shell/zsh.nix b/users/willifan/common/shell/zsh.nix
deleted file mode 100644
index f111561..0000000
--- a/users/willifan/common/shell/zsh.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{ pkgs, ... }:
-{
-
-  users.defaultUserShell = pkgs.zsh;
-
-  environment.systemPackages = with pkgs; [
-    zsh-powerlevel10k
-  ];
-
-  programs.zsh = {
-    enable = true;
-    promptInit = "source ${pkgs.zsh-powerlevel10k}/share/zsh-powerlevel10k/powerlevel10k.zsh-theme";
-  };
-}
\ No newline at end of file
diff --git a/users/willifan/common/theme/default.nix b/users/willifan/common/theme/default.nix
deleted file mode 100644
index 94ccd44..0000000
--- a/users/willifan/common/theme/default.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ ... }:
-
-{
-  imports = [
-    ./stylix.nix
-  ];
-}
diff --git a/users/willifan/common/tmux/default.nix b/users/willifan/common/tmux/default.nix
deleted file mode 100644
index c92063e..0000000
--- a/users/willifan/common/tmux/default.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ ... }:
-{
-
-  home-manager.users.willifan = {
-    programs.tmux = {
-      enable = true;
-    };
-  };
-
-}
diff --git a/users/willifan/common/utils/default.nix b/users/willifan/common/utils/default.nix
deleted file mode 100644
index 8cb2549..0000000
--- a/users/willifan/common/utils/default.nix
+++ /dev/null
@@ -1,18 +0,0 @@
-{ pkgs, ... }:
-{
-
- 
-  home-manager.users.willifan = {
-    services.avizo.enable = true;
-    programs.bat.enable = true;
-    programs.btop.enable = true;
-    programs.yazi.enable = true;
-  };
-
-  environment.systemPackages = with pkgs; [
-
-    tealdeer
-
-  ];
-
-}
diff --git a/users/willifan/default.nix b/users/willifan/default.nix
index 908c51b..0de5d7c 100644
--- a/users/willifan/default.nix
+++ b/users/willifan/default.nix
@@ -1,8 +1,7 @@
-{ hostname, type, ... }:
+{ type, hostname, ... }:
 {
   imports = [
-    ./common
-    ./${type}
     ./${hostname}
+    ./${type}
   ];
 }
diff --git a/users/willifan/desktop/dev/default.nix b/users/willifan/desktop/dev/default.nix
index d94fae5..d42d664 100644
--- a/users/willifan/desktop/dev/default.nix
+++ b/users/willifan/desktop/dev/default.nix
@@ -4,7 +4,6 @@
   imports = [
     ./embedded.nix
     ./logic-analyzer.nix
-    ./rust.nix
     ./vscodium.nix
   ];
 
diff --git a/users/willifan/desktop/dev/rust.nix b/users/willifan/desktop/dev/rust.nix
deleted file mode 100644
index 80d33b3..0000000
--- a/users/willifan/desktop/dev/rust.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{ pkgs, ... }:
-{
-  environment.systemPackages = with pkgs; [
-
-    clang
-    gcc
-    llvmPackages.bintools
-    rustup
-
-    probe-rs
-    cargo-binutils
-    
-  ];
-}
diff --git a/users/willifan/desktop/keyboard/default.nix b/users/willifan/desktop/keyboard/default.nix
index 5975e13..f071b4b 100644
--- a/users/willifan/desktop/keyboard/default.nix
+++ b/users/willifan/desktop/keyboard/default.nix
@@ -10,4 +10,4 @@
     KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{serial}=="*vial:f64c2b3c*", MODE="0660", GROUP="users", TAG+="uaccess", TAG+="udev-acl"
   '';
 
-}
\ No newline at end of file
+}