about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--flake.lock105
-rw-r--r--flake.nix26
-rw-r--r--home/alpha/boopy.nix (renamed from home/configurations/boopy@alpha.nix)0
-rw-r--r--home/configurations/default.nix5
-rw-r--r--home/default.nix22
-rw-r--r--home/modules/default.nix16
-rw-r--r--home/modules/misc/home/default.nix31
-rw-r--r--home/modules/profiles/base/config/waybar-settings-new.nix68
-rw-r--r--home/modules/profiles/base/config/waybar-settings.nix56
-rw-r--r--home/modules/profiles/multimedia/default.nix44
-rw-r--r--home/profiles/base/config/dunst.nix (renamed from home/modules/profiles/base/config/dunst.nix)0
-rw-r--r--home/profiles/base/config/foot.nix (renamed from home/modules/profiles/base/config/foot.nix)0
-rw-r--r--home/profiles/base/config/sway.nix (renamed from home/modules/profiles/base/config/sway.nix)0
-rw-r--r--home/profiles/base/config/waybar-settings.nix54
-rw-r--r--home/profiles/base/config/waybar-style.nix (renamed from home/modules/profiles/base/config/waybar-style.nix)2
-rw-r--r--home/profiles/base/default.nix (renamed from home/modules/profiles/base/default.nix)14
-rw-r--r--home/profiles/base/p10k-config/p10k.zsh (renamed from home/modules/profiles/base/p10k-config/p10k.zsh)0
-rw-r--r--home/profiles/browsing/default.nix (renamed from home/modules/profiles/browsing/default.nix)0
-rw-r--r--home/profiles/browsing/qutebrowser-settings.nix (renamed from home/modules/profiles/browsing/qutebrowser-settings.nix)6
-rw-r--r--home/profiles/default.nix (renamed from home/modules/profiles/default.nix)0
-rw-r--r--home/profiles/development/default.nix (renamed from home/modules/profiles/development/default.nix)10
-rw-r--r--home/profiles/messaging/default.nix (renamed from home/modules/profiles/messaging/default.nix)3
-rw-r--r--home/profiles/multimedia/default.nix49
-rw-r--r--home/profiles/research/default.nix (renamed from home/modules/profiles/research/default.nix)2
-rw-r--r--lib/mk_home.nix11
-rw-r--r--lib/mk_system.nix12
-rw-r--r--nixos/.sops.yaml9
-rw-r--r--nixos/alpha/configuration.nix (renamed from nixos/configurations/alpha.nix)7
-rw-r--r--nixos/alpha/hardware-configuration.nix (renamed from nixos/configurations/hardware/alpha.nix)0
-rw-r--r--nixos/alpha/secrets/secrets.yaml52
-rw-r--r--nixos/configurations/default.nix5
-rw-r--r--nixos/default.nix14
-rw-r--r--nixos/secrets/keys/hosts/alpha.asc28
-rw-r--r--nixos/secrets/keys/users/boopy.asc51
-rw-r--r--packages/default.nix6
-rw-r--r--packages/non-flake/default.nix5
36 files changed, 400 insertions, 313 deletions
diff --git a/flake.lock b/flake.lock
index 19b34f0..3422bdd 100644
--- a/flake.lock
+++ b/flake.lock
@@ -1,5 +1,28 @@
 {
   "nodes": {
+    "chaotic-nixpkgs": {
+      "inputs": {
+        "flake-compat": "flake-compat",
+        "flake-utils": "flake-utils",
+        "nixpkgs": [
+          "nixpkgs"
+        ]
+      },
+      "locked": {
+        "lastModified": 1642336372,
+        "narHash": "sha256-1N+9qs4oFIp5tixvScZnVYKzDaaWfqDAPnbf0pWxKQE=",
+        "ref": "main",
+        "rev": "4f26096c0b3a717beaccf2fa96752a95f298d1f9",
+        "revCount": 11,
+        "type": "git",
+        "url": "https://git.sr.ht/~boppy/chaotic-nixpkgs"
+      },
+      "original": {
+        "ref": "main",
+        "type": "git",
+        "url": "https://git.sr.ht/~boppy/chaotic-nixpkgs"
+      }
+    },
     "flake-compat": {
       "flake": false,
       "locked": {
@@ -18,11 +41,11 @@
     },
     "flake-utils": {
       "locked": {
-        "lastModified": 1629481132,
-        "narHash": "sha256-JHgasjPR0/J1J3DRm4KxM4zTyAj4IOJY8vIl75v/kPI=",
+        "lastModified": 1638122382,
+        "narHash": "sha256-sQzZzAbvKEqN9s0bzWuYmRaA03v40gaJ4+iL1LXjaeI=",
         "owner": "numtide",
         "repo": "flake-utils",
-        "rev": "997f7efcb746a9c140ce1f13c72263189225f482",
+        "rev": "74f7e4319258e287b0f9cb95426c9853b282730b",
         "type": "github"
       },
       "original": {
@@ -48,6 +71,21 @@
     },
     "flake-utils_3": {
       "locked": {
+        "lastModified": 1629481132,
+        "narHash": "sha256-JHgasjPR0/J1J3DRm4KxM4zTyAj4IOJY8vIl75v/kPI=",
+        "owner": "numtide",
+        "repo": "flake-utils",
+        "rev": "997f7efcb746a9c140ce1f13c72263189225f482",
+        "type": "github"
+      },
+      "original": {
+        "owner": "numtide",
+        "repo": "flake-utils",
+        "type": "github"
+      }
+    },
+    "flake-utils_4": {
+      "locked": {
         "lastModified": 1637014545,
         "narHash": "sha256-26IZAc5yzlD9FlDT54io1oqG/bBoyka+FJk5guaX4x4=",
         "owner": "numtide",
@@ -68,27 +106,26 @@
         ]
       },
       "locked": {
-        "lastModified": 1638150501,
-        "narHash": "sha256-aWH3MRmjUtx8ciSGLegBJC5mhymsuroHPs74ZldrNTU=",
+        "lastModified": 1642463060,
+        "narHash": "sha256-6xXRxvMk4OV/k6VwJq54pahToT4FCZzOKfbvG7f6l1E=",
         "owner": "nix-community",
         "repo": "home-manager",
-        "rev": "9de77227d7780518cfeaee5a917970247f3ecc56",
+        "rev": "8cf13abffc0808b337590a9e382604ab6c2cb3e7",
         "type": "github"
       },
       "original": {
         "owner": "nix-community",
         "repo": "home-manager",
-        "rev": "9de77227d7780518cfeaee5a917970247f3ecc56",
         "type": "github"
       }
     },
     "master": {
       "locked": {
-        "lastModified": 1642034024,
-        "narHash": "sha256-H+XLDkfe3M/RvToKSVuOya0zx1d4vJhWiwfDtHc2sfQ=",
+        "lastModified": 1642462659,
+        "narHash": "sha256-vNFD3y54atPP5kgXwrnfUhCtHXqj4frmP0tmWS38eNo=",
         "owner": "nixos",
         "repo": "nixpkgs",
-        "rev": "4a3032bbaa0629e0d6991f9f56ac63dad5ad64c4",
+        "rev": "13e3f202d27e96a1e0fc3ad288899bb46add775b",
         "type": "github"
       },
       "original": {
@@ -100,18 +137,18 @@
     },
     "neovim": {
       "inputs": {
-        "flake-utils": "flake-utils",
+        "flake-utils": "flake-utils_3",
         "nixpkgs": [
           "nixpkgs"
         ]
       },
       "locked": {
         "dir": "contrib",
-        "lastModified": 1642010204,
-        "narHash": "sha256-VfYBgGwBnzdjugb4InBWHLkNv58S6ECyKD6kBBUpN48=",
+        "lastModified": 1642453919,
+        "narHash": "sha256-wGf/RCpNv/PGEx6wHWgyCP0FkG5kaVvWvId7uiKcay4=",
         "owner": "neovim",
         "repo": "neovim",
-        "rev": "39a35dd006e793c4ff4e09436c8fc268c4415bcf",
+        "rev": "fcf5dd34fdfde3a6632b96a88f66c1053cba08d1",
         "type": "github"
       },
       "original": {
@@ -123,11 +160,11 @@
     },
     "nixpkgs": {
       "locked": {
-        "lastModified": 1642008389,
-        "narHash": "sha256-nWYdmvmBOXYFktxe7ffwc8ESJQkIqTrzyCIZJk+Sir0=",
+        "lastModified": 1642373004,
+        "narHash": "sha256-AZ1fTklT9OkLFtmZ8qMbQ2Uf1dF0+np3WjnTIIquApA=",
         "owner": "nixos",
         "repo": "nixpkgs",
-        "rev": "4f0b53702b8fdeea4c68fe34bdf9ce90817910fb",
+        "rev": "b13052a35a63e1ea9eba916ffe48886ab7af58ce",
         "type": "github"
       },
       "original": {
@@ -137,29 +174,6 @@
         "type": "github"
       }
     },
-    "nixpkgs-extra": {
-      "inputs": {
-        "flake-compat": "flake-compat",
-        "flake-utils": "flake-utils_2",
-        "nixpkgs": [
-          "nixpkgs"
-        ]
-      },
-      "locked": {
-        "lastModified": 1641015751,
-        "narHash": "sha256-jzudZWz2T+6Y1v8IxzQ9Hb3D41926idQFW+ntqD0kOc=",
-        "ref": "main",
-        "rev": "92192e9c0b2c75c714498e595c147b3ade7459ee",
-        "revCount": 6,
-        "type": "git",
-        "url": "https://git.sr.ht/~boppy/nixpkgs-extra"
-      },
-      "original": {
-        "ref": "main",
-        "type": "git",
-        "url": "https://git.sr.ht/~boppy/nixpkgs-extra"
-      }
-    },
     "phocus": {
       "flake": false,
       "locked": {
@@ -178,11 +192,12 @@
     },
     "root": {
       "inputs": {
+        "chaotic-nixpkgs": "chaotic-nixpkgs",
+        "flake-utils": "flake-utils_2",
         "home-manager": "home-manager",
         "master": "master",
         "neovim": "neovim",
         "nixpkgs": "nixpkgs",
-        "nixpkgs-extra": "nixpkgs-extra",
         "phocus": "phocus",
         "rust-overlay": "rust-overlay",
         "sops-nix": "sops-nix",
@@ -191,17 +206,17 @@
     },
     "rust-overlay": {
       "inputs": {
-        "flake-utils": "flake-utils_3",
+        "flake-utils": "flake-utils_4",
         "nixpkgs": [
           "nixpkgs"
         ]
       },
       "locked": {
-        "lastModified": 1641868896,
-        "narHash": "sha256-R2hG3EqLSASjdzJlhn1leRmBwmatrzIyKXRaBfwbAPg=",
+        "lastModified": 1642387353,
+        "narHash": "sha256-CmpIo2whHN1ESXuKl9lL9CRJVK8YuEfV2JURFqmWNmw=",
         "owner": "oxalica",
         "repo": "rust-overlay",
-        "rev": "84c58400556c1c5fa796cbc3215ba5bbd3bd848f",
+        "rev": "c76db6730b6bc150c49c9dcefc2323785516d1dc",
         "type": "github"
       },
       "original": {
diff --git a/flake.nix b/flake.nix
index eecd9ee..ebcd2ab 100644
--- a/flake.nix
+++ b/flake.nix
@@ -7,9 +7,12 @@
     master.url = "github:nixos/nixpkgs/master";
 
     # https://github.com/nix-community/home-manager/issues/2546 
-    home-manager.url = "github:nix-community/home-manager?rev=9de77227d7780518cfeaee5a917970247f3ecc56";
+    home-manager.url = "github:nix-community/home-manager";
     home-manager.inputs.nixpkgs.follows = "nixpkgs";
 
+    flake-utils.url = "github:numtide/flake-utils";
+    flake-utils.inputs.nixpkgs.follows = "nixpkgs";
+
     sops-nix.url = "github:Mic92/sops-nix";
     sops-nix.inputs.nixpkgs.follows = "nixpkgs";
 
@@ -20,29 +23,26 @@
     rust-overlay.inputs.nixpkgs.follows = "nixpkgs";
 
     # https://github.com/NixOS/nix/pull/5342
-    nixpkgs-extra.url = "git+https://git.sr.ht/~boppy/nixpkgs-extra?ref=main";
-    nixpkgs-extra.inputs.nixpkgs.follows = "nixpkgs";
+    chaotic-nixpkgs.url = "git+https://git.sr.ht/~boppy/chaotic-nixpkgs?ref=main";
+    chaotic-nixpkgs.inputs.nixpkgs.follows = "nixpkgs";
 
     phocus = { url = "git+https://git.sr.ht/~boppy/phocus"; flake = false; };
     wallpapers = { url = "git+https://git.sr.ht/~boppy/wall?ref=main"; flake = false; };
   };
 
-  outputs = { self, nixpkgs, ... } @ inputs:
-    {
-      nixosModules = import ./nixos/modules;
-      nixosConfigurations = import ./nixos/configurations inputs;
+  outputs = { self, nixpkgs, flake-utils, sops-nix, ... } @ inputs:
+  {
+
+      nixosConfigurations = import ./nixos inputs;
 
-      homeModules = import ./home/modules;
-      homeConfigurations = import ./home/configurations inputs;
+      homeConfigurations = import ./home inputs;
 
       packages.x86_64-linux = (import ./packages inputs)
-        // self.lib.nixosConfigurationsAsPackages.x86_64-linux
-        // self.lib.homeConfigurationsAsPackages.x86_64-linux;
+      // self.lib.nixosConfigurationsAsPackages.x86_64-linux
+      // self.lib.homeConfigurationsAsPackages.x86_64-linux;
 
       checks = self.packages;
 
       lib = import ./lib inputs;
-
-      non-flake = (import ./packages/non-flake inputs);
     };
 }
diff --git a/home/configurations/boopy@alpha.nix b/home/alpha/boopy.nix
index 237eb11..237eb11 100644
--- a/home/configurations/boopy@alpha.nix
+++ b/home/alpha/boopy.nix
diff --git a/home/configurations/default.nix b/home/configurations/default.nix
deleted file mode 100644
index ac44363..0000000
--- a/home/configurations/default.nix
+++ /dev/null
@@ -1,5 +0,0 @@
-{ self, ... } @ inputs:
-
-{
-  "boopy@alpha" = self.lib.mkHome "boopy" "alpha" "x86_64-linux" inputs.nixpkgs "22.05";
-}
diff --git a/home/default.nix b/home/default.nix
new file mode 100644
index 0000000..62e6aea
--- /dev/null
+++ b/home/default.nix
@@ -0,0 +1,22 @@
+{ self, nixpkgs, ... } @ inputs:
+
+{
+  "boopy@alpha" = self.lib.mkHome {
+    username = "boopy";
+    hostname = "alpha";
+    system = "x86_64-linux";
+    pkgs = import nixpkgs { system = "x86_64-linux"; overlays = [ inputs.rust-overlay.overlay ]; };
+
+    extraModules = [
+      ./profiles
+      ./profiles/base
+      ./profiles/browsing
+      ./profiles/development
+      ./profiles/messaging
+      ./profiles/multimedia
+      ./profiles/research
+    ];
+
+    version = "22.05";
+  };
+}
diff --git a/home/modules/default.nix b/home/modules/default.nix
deleted file mode 100644
index b096729..0000000
--- a/home/modules/default.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{
-  "profiles" = import ./profiles;
-  "profiles/base" = import ./profiles/base;
-  "profiles/browsing" = import ./profiles/browsing;
-  "profiles/development" = import ./profiles/development;
-  "profiles/messaging" = import ./profiles/messaging;
-  "profiles/multimedia" = import ./profiles/multimedia;
-  "profiles/research" = import ./profiles/research;
-
-  "programs/nixpkgs" = import ./programs/nixpkgs;
-  "programs/zshell" = import ./programs/zshell;
-  "programs/spotify-tui" = import ./programs/spotify-tui;
-
-  "misc/home" = import ./misc/home;
-  "misc/neotheme" = import ./misc/neotheme;
-}
diff --git a/home/modules/misc/home/default.nix b/home/modules/misc/home/default.nix
deleted file mode 100644
index 80232e7..0000000
--- a/home/modules/misc/home/default.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-{ config, pkgs, lib, nixpkgs, self, ... }:
-
-{
-  profiles.base.enable = true;
-  fonts.fontconfig.enable = true;
-
-
-  home = {
-    stateVersion = "22.05";
-  };
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/home/modules/profiles/base/config/waybar-settings-new.nix b/home/modules/profiles/base/config/waybar-settings-new.nix
deleted file mode 100644
index 4b55a05..0000000
--- a/home/modules/profiles/base/config/waybar-settings-new.nix
+++ /dev/null
@@ -1,68 +0,0 @@
-{
-  # DISCLAIMER! On 22.05, do NOT use this until https://github.com/nix-community/home-manager/issues/2546 is solved.
-  layer = "bottom";
-  position = "top";
-  height = 17;
-  modules-left = [ "sway/workspaces" "sway/language" "cpu" "memory" ];
-  modules-center = [ "clock" ];
-  modules-right = [ "custom/weather" "pulseaudio" "network" ];
-
-  "sway/workspaces" = {
-    all-outputs = true;
-
-    persistent_workspaces = {
-      "α" = [ ];
-      "β" = [ ];
-      "γ" = [ ];
-      "δ" = [ ];
-      "ε" = [ ];
-      "ζ" = [ ];
-      "η" = [ ];
-      "θ" = [ ];
-      "ι" = [ ];
-      "κ" = [ ];
-    };
-  };
-
-  "sway/language" = {
-    format = " {long}";
-  };
-
-  "clock" = {
-    interval = 10;
-    format = "{:  %m/%d/%Y %I:%M %p}";
-  };
-
-  "cpu" = {
-    interval = 5;
-    format = "  {load}%   {usage}%";
-  };
-
-  "custom/weather" = {
-    format = "  {}";
-    exec = "curl 'wttr.in/?format='%t+-+%x+%C++%w'&M'";
-    interval = 3600;
-  };
-
-  "network" = {
-    interface = "enp4s0";
-    format = "  {ifname}";
-    format-wifi = "  {essid}";
-    format-ethernet = "  {ifname} {ipaddr}";
-    format-disconnected = "  Disconnected";
-    max-length = 50;
-  };
-
-  "pulseaudio" = {
-    format = "{icon} {volume}%";
-    format-muted = "婢  Muted";
-    format-source = "";
-    format-source-muted = "Muted";
-    format-icons.default = [ " " " " " " ];
-  };
-
-  "memory" = {
-    interval = 5;
-    format = " {used:0.1f}G / {total:0.1f}G ({percentage}%)";
-  };
-}
diff --git a/home/modules/profiles/base/config/waybar-settings.nix b/home/modules/profiles/base/config/waybar-settings.nix
deleted file mode 100644
index fb691c0..0000000
--- a/home/modules/profiles/base/config/waybar-settings.nix
+++ /dev/null
@@ -1,56 +0,0 @@
-{ neotheme }:
-
-with neotheme.colors;
-{
-  layer = "bottom";
-  position = "top";
-  height = 21;
-  modules-left = [ "pulseaudio" "custom/seperator" "cpu" "custom/seperator" "memory" ];
-  modules-center = [ "sway/workspaces" ];
-  modules-right = [ "clock" ];
-
-  modules = {
-    "sway/workspaces" = {
-      all-outputs = true;
-      persistent_workspaces = {
-        "α" = [ ];
-        "β" = [ ];
-        "γ" = [ ];
-        "δ" = [ ];
-        "ε" = [ ];
-        "ζ" = [ ];
-        "η" = [ ];
-        "θ" = [ ];
-        "ι" = [ ];
-        "κ" = [ ];
-      };
-    };
-
-    "clock" = {
-      interval = 10;
-      format = "<span foreground='#${color5}'></span> {:%A, %b %d %H:%M}";
-    };
-
-    "cpu" = {
-      interval = 5;
-      format = "<span foreground='#${color2}'></span> {usage:3}%";
-    };
-
-    "pulseaudio" = {
-      format = "<span foreground='#${color4}'>{icon}</span> {volume}%";
-      format-muted = "ﱝ  Muted";
-      format-icons.default = [ " " " " " " ];
-    };
-
-    "memory" = {
-      interval = 5;
-      format = "<span foreground='#${color3}'>﬙</span> {used:0.2f}GiB";
-    };
-
-    "custom/seperator" = {
-      format = "|";
-      interval = "once";
-      tooltip = false;
-    };
-  };
-}
diff --git a/home/modules/profiles/multimedia/default.nix b/home/modules/profiles/multimedia/default.nix
deleted file mode 100644
index 47cc1a9..0000000
--- a/home/modules/profiles/multimedia/default.nix
+++ /dev/null
@@ -1,44 +0,0 @@
-{ config, lib, pkgs, ... }:
-let cfg = config.profiles.multimedia;
-in
-{
-  options.profiles.multimedia = {
-    enable = lib.mkEnableOption
-      "A profile that enables the system to be used for consuming multimedia contents.";
-  };
-
-  config = lib.mkIf cfg.enable {
-    home.packages = with pkgs; [ spotify playerctl ];
-
-    # services.spotifyd = {
-    #   enable = true;
-    #
-    #   package = (pkgs.spotifyd.override { withMpris = true; });
-    #
-    #   settings = {
-    #     global = {
-    #       username = "9nko3f7puya1e5bbo9c5ifddy";
-    #       password_cmd = "${pkgs.pass}/bin/pass www/spotify.com | head -n1";
-    #     };
-    #   };
-    # };
-    #
-    # programs.spotify-tui = {
-    #   enable = true;
-    #
-    #   settings = {
-    #     theme = {
-    #       active = "Cyan";
-    #       banner = "LightCyan";
-    #     };
-    #
-    #     behavior = {
-    #       seek_milliseconds = 5000;
-    #       volume_increment = 10;
-    #     };
-    #   };
-    # };
-
-    nixpkgs.allowedUnfree = [ "spotify" "spotify-unwrapped" ];
-  };
-}
diff --git a/home/modules/profiles/base/config/dunst.nix b/home/profiles/base/config/dunst.nix
index 60ed15f..60ed15f 100644
--- a/home/modules/profiles/base/config/dunst.nix
+++ b/home/profiles/base/config/dunst.nix
diff --git a/home/modules/profiles/base/config/foot.nix b/home/profiles/base/config/foot.nix
index 08a38e7..08a38e7 100644
--- a/home/modules/profiles/base/config/foot.nix
+++ b/home/profiles/base/config/foot.nix
diff --git a/home/modules/profiles/base/config/sway.nix b/home/profiles/base/config/sway.nix
index 00dae28..00dae28 100644
--- a/home/modules/profiles/base/config/sway.nix
+++ b/home/profiles/base/config/sway.nix
diff --git a/home/profiles/base/config/waybar-settings.nix b/home/profiles/base/config/waybar-settings.nix
new file mode 100644
index 0000000..089fefb
--- /dev/null
+++ b/home/profiles/base/config/waybar-settings.nix
@@ -0,0 +1,54 @@
+{ neotheme }:
+
+with neotheme.colors;
+{
+  layer = "bottom";
+  position = "top";
+  height = 21;
+  modules-left = [ "pulseaudio" "custom/seperator" "cpu" "custom/seperator" "memory" ];
+  modules-center = [ "sway/workspaces" ];
+  modules-right = [ "clock" ];
+
+  "sway/workspaces" = {
+    all-outputs = true;
+    persistent_workspaces = {
+      "α" = [ ];
+      "β" = [ ];
+      "γ" = [ ];
+      "δ" = [ ];
+      "ε" = [ ];
+      "ζ" = [ ];
+      "η" = [ ];
+      "θ" = [ ];
+      "ι" = [ ];
+      "κ" = [ ];
+    };
+  };
+
+  "clock" = {
+    interval = 10;
+    format = "<span foreground='#${color5}'></span> {:%A, %b %d %H:%M}";
+  };
+
+  "cpu" = {
+    interval = 5;
+    format = "<span foreground='#${color2}'></span> {usage:3}%";
+  };
+
+  "pulseaudio" = {
+    format = "<span foreground='#${color4}'>{icon}</span> {volume}%";
+    format-muted = "ﱝ  Muted";
+    format-icons.default = [ " " " " " " ];
+  };
+
+  "memory" = {
+    interval = 5;
+    format = "<span foreground='#${color3}'>﬙</span> {used:0.2f}GiB";
+  };
+
+  "custom/seperator" = {
+    format = "|";
+    interval = "once";
+    tooltip = false;
+  };
+}
diff --git a/home/modules/profiles/base/config/waybar-style.nix b/home/profiles/base/config/waybar-style.nix
index e3f30f6..0901a6a 100644
--- a/home/modules/profiles/base/config/waybar-style.nix
+++ b/home/profiles/base/config/waybar-style.nix
@@ -70,7 +70,7 @@ with neotheme.colors;
   }
 
   #custom-seperator {
-    color: #${bright0};
+    color: #${alt1};
     background-color: #${background};
     border-bottom: 1px solid #${bright0};
   }
diff --git a/home/modules/profiles/base/default.nix b/home/profiles/base/default.nix
index 3d75618..7b62442 100644
--- a/home/modules/profiles/base/default.nix
+++ b/home/profiles/base/default.nix
@@ -5,14 +5,19 @@ let
   neotheme = config.neotheme;
 
   inherit (self.packages.x86_64-linux) neovim iosevka-pure-bin phocus;
-
-  inherit (self.non-flake) wallpapers;
 in
 {
+  imports = [
+    ../../modules/programs/nixpkgs
+    ../../modules/programs/zshell
+    ../../modules/misc/neotheme
+  ];
+
   options.profiles.base.enable = lib.mkEnableOption
     "The base profile, should be always enabled";
 
   config = lib.mkIf cfg.enable {
+
     home.sessionVariables = rec {
       EDITOR = "nvim";
       VISUAL = "nvim";
@@ -54,12 +59,13 @@ in
         bright7 = "e4e4db";
       };
 
-      wallpaper = "${wallpapers}/nixos/nix-glow-fg-d4ae80.png";
+      wallpaper = "${self.inputs.wallpapers}/nixos/nix-glow-fg-d4ae80.png";
     };
 
     home.keyboard.layout = "us";
     home.packages = [
       pkgs.hydra-check
+      pkgs.sops
       neovim
 
       # Fonts
@@ -74,6 +80,8 @@ in
       (pkgs.nerdfonts.override { fonts = [ "Iosevka" "JetBrainsMono" ]; })
     ];
 
+    fonts.fontconfig.enable = true;
+
 
     wayland.windowManager.sway = {
       enable = true;
diff --git a/home/modules/profiles/base/p10k-config/p10k.zsh b/home/profiles/base/p10k-config/p10k.zsh
index aa6bc2c..aa6bc2c 100644
--- a/home/modules/profiles/base/p10k-config/p10k.zsh
+++ b/home/profiles/base/p10k-config/p10k.zsh
diff --git a/home/modules/profiles/browsing/default.nix b/home/profiles/browsing/default.nix
index 86f3cc1..86f3cc1 100644
--- a/home/modules/profiles/browsing/default.nix
+++ b/home/profiles/browsing/default.nix
diff --git a/home/modules/profiles/browsing/qutebrowser-settings.nix b/home/profiles/browsing/qutebrowser-settings.nix
index 0d7fa07..4486d0f 100644
--- a/home/modules/profiles/browsing/qutebrowser-settings.nix
+++ b/home/profiles/browsing/qutebrowser-settings.nix
@@ -8,7 +8,7 @@ let
   base04 = "#090a10";
   base05 = "#cbc0ab";
   base06 = "#e0d6bd";
-  base07 = "#27282e";
+  base07 = "#4f5058";
   base08 = "#b17f81";
   base09 = "#e9b189";
   base0A = "#d4ae80";
@@ -292,13 +292,13 @@ in
   colors.tabs.selected.odd.fg = base05;
 
   # Background color of selected odd tabs.
-  colors.tabs.selected.odd.bg = base02;
+  colors.tabs.selected.odd.bg = base07;
 
   # Foreground color of selected even tabs.
   colors.tabs.selected.even.fg = base05;
 
   # Background color of selected even tabs.
-  colors.tabs.selected.even.bg = base02;
+  colors.tabs.selected.even.bg = base07;
 
   # Background color for webpages if unset (or empty to use the theme's
   # color).
diff --git a/home/modules/profiles/default.nix b/home/profiles/default.nix
index af9d9a8..af9d9a8 100644
--- a/home/modules/profiles/default.nix
+++ b/home/profiles/default.nix
diff --git a/home/modules/profiles/development/default.nix b/home/profiles/development/default.nix
index 75f482f..b0b8309 100644
--- a/home/modules/profiles/development/default.nix
+++ b/home/profiles/development/default.nix
@@ -2,8 +2,6 @@
 
 let
   cfg = config.profiles.development;
-
-  inherit (self.packages.x86_64-linux) rust-nightly;
 in
 {
   options.profiles.development = {
@@ -68,14 +66,16 @@ in
 
     home.packages = [
       pkgs.bfg-repo-cleaner
+      pkgs.diffoscopeMinimal
       # Fix gpg not recognizing foot terminfo
       pkgs.foot.terminfo
+      pkgs.jq
+      pkgs.nixpkgs-fmt
+      pkgs.nixpkgs-review
       pkgs.ripgrep
       pkgs.rust-analyzer
-      rust-nightly
+      (pkgs.rust-bin.nightly.latest.default.override { extensions = [ "rust-src" ]; })
       pkgs.tig
-      pkgs.silver-searcher
-      pkgs.diffoscopeMinimal
     ];
 
     services.gpg-agent = {
diff --git a/home/modules/profiles/messaging/default.nix b/home/profiles/messaging/default.nix
index 76dc0fc..a25f4e1 100644
--- a/home/modules/profiles/messaging/default.nix
+++ b/home/profiles/messaging/default.nix
@@ -2,6 +2,8 @@
 let cfg = config.profiles.messaging;
 in
 {
+  imports = [ ../../modules/programs/nixpkgs ];
+  
   options.profiles.messaging = {
     enable = lib.mkEnableOption
       "A profile that enables the system to communicate via internet.";
@@ -9,6 +11,7 @@ in
 
   config = lib.mkIf cfg.enable {
     home.packages = with pkgs; [ discord-canary aerc weechat element slack ];
+    
     nixpkgs.allowedUnfree = [ "discord-canary" "slack" ];
   };
 }
diff --git a/home/profiles/multimedia/default.nix b/home/profiles/multimedia/default.nix
new file mode 100644
index 0000000..0554258
--- /dev/null
+++ b/home/profiles/multimedia/default.nix
@@ -0,0 +1,49 @@
+{ config, lib, pkgs, ... }:
+let cfg = config.profiles.multimedia;
+in
+{
+    imports = [
+      ../../modules/programs/nixpkgs
+      ../../modules/programs/spotify-tui
+    ];
+
+  options.profiles.multimedia = {
+    enable = lib.mkEnableOption
+      "A profile that enables the system to be used for consuming multimedia contents.";
+  };
+
+  config = lib.mkIf cfg.enable {
+    home.packages = with pkgs; [ playerctl ];
+
+    services.spotifyd = {
+      enable = true;
+
+      package = (pkgs.spotifyd.override { withMpris = true; });
+
+      settings = {
+        global = {
+          username = "9nko3f7puya1e5bbo9c5ifddy";
+          password_cmd = "cat /run/secrets/spotify-password"; # DISCLAIMER: this expects the `spotify` secret to be present (sops-nix)
+        };
+      };
+    };
+
+    programs.spotify-tui = {
+      enable = true;
+
+      settings = {
+        theme = {
+          active = "Cyan";
+          banner = "LightCyan";
+        };
+
+        behavior = {
+          seek_milliseconds = 5000;
+          volume_increment = 10;
+        };
+      };
+    };
+
+    nixpkgs.allowedUnfree = [ "spotify" "spotify-unwrapped" ];
+  };
+}
diff --git a/home/modules/profiles/research/default.nix b/home/profiles/research/default.nix
index 5741400..0c57f06 100644
--- a/home/modules/profiles/research/default.nix
+++ b/home/profiles/research/default.nix
@@ -2,6 +2,8 @@
 let cfg = config.profiles.research;
 in
 {
+  imports = [ ../../modules/programs/nixpkgs ];
+  
   options.profiles.research = {
     enable = lib.mkEnableOption
       "A profile that enables the system to be used for researching various topics.";
diff --git a/lib/mk_home.nix b/lib/mk_home.nix
index 7abe42a..52acc96 100644
--- a/lib/mk_home.nix
+++ b/lib/mk_home.nix
@@ -1,20 +1,23 @@
 { self, home-manager, ... } @ inputs:
 
-username: hostname: system: nixpkgs: version:
+{ username, hostname, system, pkgs, version, extraModules }:
 let
   args = inputs;
-  entrypoint = "${self}/home/configurations/${username}@${hostname}.nix";
+  entrypoint = "${self}/home/${hostname}/${username}.nix";
 in
 home-manager.lib.homeManagerConfiguration {
   inherit username system;
   homeDirectory = "/home/${username}";
   stateVersion = version;
-  pkgs = nixpkgs.legacyPackages.${system};
+  pkgs = pkgs;
 
   configuration = { lib, ... }: {
     _module = { inherit args; };
+
+    profiles.base.enable = true;
+
     imports = [
       entrypoint
-    ] ++ __attrValues self.homeModules;
+    ] ++ lib.optionals (extraModules != null) extraModules;
   };
 }
diff --git a/lib/mk_system.nix b/lib/mk_system.nix
index ee0037b..d6a6d79 100644
--- a/lib/mk_system.nix
+++ b/lib/mk_system.nix
@@ -1,11 +1,11 @@
 { self, ... } @ args:
 
-name: nixpkgs:
+{ name, nixpkgs, extraModules }:
 nixpkgs.lib.nixosSystem (
   let
-    configFolder = "${self}/nixos/configurations";
-    entryPoint = "${configFolder}/${name}.nix";
-    hardware = "${configFolder}/hardware/${name}.nix";
+    configFolder = "${self}/nixos";
+    entryPoint = "${configFolder}/${name}/configuration.nix";
+    hardware = "${configFolder}/${name}/hardware-configuration.nix";
   in
   {
     system = "x86_64-linux";
@@ -20,6 +20,8 @@ nixpkgs.lib.nixosSystem (
       }
       entryPoint
       hardware
-    ] ++ __attrValues self.nixosModules;
+      ../nixos/modules/flake.nix
+      ../nixos/modules/nix.nix
+    ] ++ nixpkgs.lib.optionals (extraModules != null) extraModules;
   }
 )
diff --git a/nixos/.sops.yaml b/nixos/.sops.yaml
new file mode 100644
index 0000000..0f34ef1
--- /dev/null
+++ b/nixos/.sops.yaml
@@ -0,0 +1,9 @@
+keys:
+  - &user_boopy EE731799CAE9F76B048BDF71F05C1C600B728A18
+  - &host_alpha e1965a67a09b4b20fcea3b57432b5757b7eb1fa4
+creation_rules:
+  - path_regex: alpha/secrets/[^/]+\.yaml$
+    key_groups:
+      - pgp:
+        - *host_alpha
+        - *user_boopy
diff --git a/nixos/configurations/alpha.nix b/nixos/alpha/configuration.nix
index d7fe368..54ec24f 100644
--- a/nixos/configurations/alpha.nix
+++ b/nixos/alpha/configuration.nix
@@ -23,7 +23,7 @@
 
     efiSupport = true;
     configurationLimit = 10;
-    device = "nodev";
+    devices = [ "nodev" ];
     useOSProber = true;
     # device = "/dev/disk/by-uuid/7905-2E41";
     extraEntries = ''
@@ -36,6 +36,7 @@
     '';
   };
 
+  networking.hostName = "alpha";
   networking.networkmanager.enable = true;
   networking.useDHCP = false;
   networking.firewall.enable = true;
@@ -50,6 +51,7 @@
   environment.systemPackages = with pkgs; [ gcc ];
 
   services.openssh.enable = true;
+  services.openssh.passwordAuthentication = false;
 
   sound.enable = true;
   services.pipewire = {
@@ -121,6 +123,9 @@
 
   virtualisation.libvirtd.enable = true;
 
+  sops.defaultSopsFile = ./secrets/secrets.yaml;
+  sops.secrets.spotify-password.owner = "boopy";
+
   users.users = {
     boopy = {
       isNormalUser = true;
diff --git a/nixos/configurations/hardware/alpha.nix b/nixos/alpha/hardware-configuration.nix
index 3e99ea9..3e99ea9 100644
--- a/nixos/configurations/hardware/alpha.nix
+++ b/nixos/alpha/hardware-configuration.nix
diff --git a/nixos/alpha/secrets/secrets.yaml b/nixos/alpha/secrets/secrets.yaml
new file mode 100644
index 0000000..f1abf24
--- /dev/null
+++ b/nixos/alpha/secrets/secrets.yaml
@@ -0,0 +1,52 @@
+spotify-password: ENC[AES256_GCM,data:tmzSh7Cf9fmL4PIdrV1dMz0=,iv:tLnKsQ2qEEZbGmuavMqiAXczlsZh21JU4tWWhhZP3OY=,tag:egoGT/V8AxIfcaVV0/ddtg==,type:str]
+sops:
+    kms: []
+    gcp_kms: []
+    azure_kv: []
+    hc_vault: []
+    age: []
+    lastmodified: "2022-01-15T16:15:09Z"
+    mac: ENC[AES256_GCM,data:1uhM/dHYwkdWoF90gbqdX+y1LgCkY0xFrC/tGQtm6tk0/X9Q9yq7se646IUVwhyZDP4+PRA1DhmjJTOwFxRWpXLPtRbPgcAGjNoMjP/n8HhDiDr5dUJWLsuHg4vB9MGA8UnEewUdYjZiR+7+x6iULcnRojR06Uzy1D47f6tQqZ8=,iv:yTY9blxNtbvYjOVidtLeTzuDfWpN+AgLtkAC/D+VV+Q=,tag:fIR+NVF9YkghhMJTOpGrPw==,type:str]
+    pgp:
+        - created_at: "2022-01-15T16:14:51Z"
+          enc: |
+            -----BEGIN PGP MESSAGE-----
+
+            hQIMA0MrV1e36x+kAQ/+N5pvwngEyucZTGlNZV1yachrUEkylK84bfJPwCn5JMWY
+            mBhdhgBZ5DEmseA2pny6mDyid6EQjKB/akIDnW2ZTaBposdDlJUw4S7wqO+vtuLM
+            9L1jFg+y9xn9H2HzIyaglBN0cLQIPqZtu72yriV3bAu7wPLd3J+5fq/ohPV4GrsL
+            CVs0h8t/n/BkJ6q0s7gTBe2+tvB78fsLZwSpSwc5fzXdaZTRBCopEqT+3DO/shX3
+            qOsP3zvbUIKvdIXsfGhwtfpuPD3qg42HoyI+CmedjoG1DkPX0jLiu44K+EJJr9n1
+            jQ9Ms/jc4But5DW+EyWm9rkMGinMY+cEENKcJ/8LVuUzud/KFsJhJnEAi23U705+
+            om7Gte+UOLE+Z5LDaLNKNJ51mHcl/JS+ze74mafkcyrbQsCXgicyS47VxPltVtnX
+            P6u/NQmrvWlnWGw1QLHVjOzN5FEedAWvUaS4kQABG/LFobMx6M9dPucKUBAkOhXy
+            ZvcJDUN4XbIIxnfM8bQ9ijYAC5+axhonY95UX9OCwiErXC7rawa1J8mJTdGmxFIK
+            MVV2yfBoqGyhQduq/j7ScPfGkY/pC7NtFtphwjocQkVDO6SO/o1zYEAzgqpOKYzP
+            1piFC7Z0MUnOYu0omhXXt2UGIxmxl4DbPSq3hZVfTzjjVlPp3wr6EmI6eUO2o6nS
+            WAG60D7zdhWEJF7LrNqg0abwbsqUUMGOzdSUA89AfoQIK3mZ0hDl4fzklPMxpqio
+            K5gNpvazqLGDLQXXjByoPXg8sFZXm3Isoq1WbrdkRonmjYJCIhGzdt4=
+            =ntAB
+            -----END PGP MESSAGE-----
+          fp: e1965a67a09b4b20fcea3b57432b5757b7eb1fa4
+        - created_at: "2022-01-15T16:14:51Z"
+          enc: |
+            -----BEGIN PGP MESSAGE-----
+
+            hQIMAzBHloZFtyD7AQ//YazK3vEkUC9A8gtjn7mst91PL57bBEFOsgp0MXYR4U9m
+            +Ro9qA98vF6PIcBLA9yfixpbiT+JVUTJPHrS8j0aegocVgUTNlrh7qPMU0w220oF
+            e+6P9XmEh4w1rSy03F5Ch7AVZ/o9aUEFKSMud7Zl5oPk2v7JqgqtHy7SHdlDa6JL
+            PQftiu9rozzOM+7UmRWA1pzi2JX03Md6qLGaPpMyM0AhdZuf/bLV8zpcKRIBWmkF
+            n5LE0blIYv/9yvowXgZQaDj2eejWzKWm0Zpd9Cw3MsuJHG1TLOgyjhpdV9raMg+k
+            BE8kBN+EwUy4CTKzeBeyGenY5mn7ll+x/vGo3aa2Shywalkr6mSmnH5B8FuO2c2U
+            S1hwrpoTJjsTiQzCnxVEm+Jv1uRAfoOQwJMt2Br0MM3iVCrm+/mGNv5K4GC96MqN
+            FPfGt1tsUViZ0xbbVbJ2ULAZUpBHzK7XTFcobnuHMRSjQ16QO8mIAN0ROEzTl/ng
+            7gVRxV2X9f+9aChQ14bmoovjPqVbxl09B3cYPrvXvd0x7V0FGUTHWexXZBOg9OOc
+            zG9VTDBiEy26G9a7XOMGNAIwNPxULCa7uKRql2UvtrDZf4CZx3H7dnJKAKXmTbx2
+            WjxQ2N0au8oVEkMK6TFUdOBuPGJq/skNXOU0S9kCBhcrA81pwF3Q6I42gml2GiHS
+            XgEgxy2EntotByYJ88UmB6y6WSROfTVGJGykJ0QnU6bAJErss3BmE45yYo6ymI9X
+            kRLyz6YManX2UMUfDrlumeqRFFYkdx+7kdqvgc8vLcGjrCIGsPoEpMltj0A2+M4=
+            =dGjP
+            -----END PGP MESSAGE-----
+          fp: EE731799CAE9F76B048BDF71F05C1C600B728A18
+    unencrypted_suffix: _unencrypted
+    version: 3.7.1
diff --git a/nixos/configurations/default.nix b/nixos/configurations/default.nix
deleted file mode 100644
index 8b84279..0000000
--- a/nixos/configurations/default.nix
+++ /dev/null
@@ -1,5 +0,0 @@
-{ self, nixpkgs, ... } @ inputs:
-
-{
-  alpha = self.lib.mkSystem "alpha" nixpkgs;
-}
diff --git a/nixos/default.nix b/nixos/default.nix
new file mode 100644
index 0000000..211f3d5
--- /dev/null
+++ b/nixos/default.nix
@@ -0,0 +1,14 @@
+{ self, nixpkgs, ... } @ inputs:
+
+{
+  alpha = self.lib.mkSystem {
+    name = "alpha";
+    nixpkgs = nixpkgs;
+    extraModules = [
+      inputs.sops-nix.nixosModules.sops
+      ./modules/security.nix
+      ./modules/cachix
+      ./alpha/configuration.nix
+    ];
+  };
+}
diff --git a/nixos/secrets/keys/hosts/alpha.asc b/nixos/secrets/keys/hosts/alpha.asc
new file mode 100644
index 0000000..41a45b3
--- /dev/null
+++ b/nixos/secrets/keys/hosts/alpha.asc
@@ -0,0 +1,28 @@
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+
+xsFNBAAAAAABEADXplBJ88spBzpK908jDYx4PJPpmBi9yXXmH0CZwmsLLO8jBMa2
+0+4Q2NY9+vZ2BFe3TFr3qp8QINxec5cZvIvuaMdEAXcQ7OYZJR+ijnG7u/Gvhwh6
+G764dGFe7SBIV6jxYCU1NTDzKgb2RvJHP03Tp8Zg8YBcF4WbMTe4WQmiPhGvebMt
+Mw23ZxYj37nBhwDURi4ji293Aree+6GSIALxdIm7uMJlH5N4WlMm+jWyX70dlOrx
+fGa6gus3kCnTKetBPLwDyablIgLbEvPX4r3GGSd37sV8PCyIoDWfjxINQu5P2f8x
+H4kL+cqFs7ds8zo7rROsXLCLzsOKSoicCcMfTBeXT2DN0uQfysJI65Rvfolxn0h9
+UGBKEqcMcAl9lluJoF4C3ZUKREFtwiy6FezDZ2tT5Tpp1O5eWqaroHd3HRxgsnIT
+GXbSTlpyZVNQOHp9WoC6lzyLYPGARKOYjwJy3aMTJold4r97TgQQ2sWop5EZ9kg9
+k2zBlLbf6+1OPYMUG6OTTjjt4FMne4gbQ9+9LTfRa+zT4RDEGYgLoWadzPuTIhwm
+RHtnpv0pe+OBRQnkvnFEl6dR6/rKbsUNQBIaliPXUxsfrrcjThoXMO4ecBfdwzFi
+3ql7fyOX0/DXRj/tQ1PxXzfPp3IiZVsh7MKemH94/KHeTFLS9leZmtz6wQARAQAB
+zSlyb290IChJbXBvcnRlZCBmcm9tIFNTSCkgPHJvb3RAbG9jYWxob3N0PsLBYgQT
+AQgAFgUCAAAAAAkQQytXV7frH6QCGw8CGQEAABpqEAAdM9PfVFV+MJ81eoEAXlJg
+2cE8TGcb6chOWW9CJAHv54aQxbPs18055vqOmrVgWWNMTdIs+50TlMKt9/9qLUjH
+22HljRZi2W4ct1Itre+ID74yhrDYeAhNoCtN5Exz18r6Ef+HGkANWs60O9g32v/B
+FDamVW+cGorp0XhfZiMRHQAwvOKib+ovGvwI6Llkp3mJam381DWW5/rPnm4e04ze
+2QvNOm/PhbKxdFS10iSz7tABp3NfEDG2eZykywRm/DSJwJn3JcnrFXqmfRXm1ANE
+rvNr/ISHnmPLmiMdzpG2PdT9Lssmz9Oz9ZSkIgGJQwaifh7F6Y1TAXloEjRW/6vw
+EST1+um1EAZ1vhucR6RM+S3WeYZ9jr4TMJ6PdhtVTlyPcMBSLKYJ1TlBaDruAmc7
+anplewF5VAKyMc6x0iuEVa3GL/iw+Tphuq5HPqc+2IF2OQvfWbxAKOZjdQpluJ7x
+AA8qHgSyImlv/VVkoegt7W0mA0DKJTdnhHA4HXT4gKyB68xyAUXyddJ1qP1YD6ou
+wwmArjQuLPQ352rVGs9mc+Djq3BgBXunvmnaG6FDE6J+slelubfrGF+0s9oCxip7
+HR52nhWteSGNT7ZGjYdEkhQGWAUgxJZlawxZqOXR/er2bi+zTcgoErND9cccEbXi
+ptZcqbdR0qUMDKPk22Svuw==
+=49eP
+-----END PGP PUBLIC KEY BLOCK-----
\ No newline at end of file
diff --git a/nixos/secrets/keys/users/boopy.asc b/nixos/secrets/keys/users/boopy.asc
new file mode 100644
index 0000000..5580dab
--- /dev/null
+++ b/nixos/secrets/keys/users/boopy.asc
@@ -0,0 +1,51 @@
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+
+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
+=pcnT
+-----END PGP PUBLIC KEY BLOCK-----
diff --git a/packages/default.nix b/packages/default.nix
index 1702c35..93f451f 100644
--- a/packages/default.nix
+++ b/packages/default.nix
@@ -1,13 +1,13 @@
 { self, neovim, rust-overlay, ... } @ inputs:
 let
   pkgs = inputs.nixpkgs.legacyPackages.x86_64-linux;
-  extra = inputs.nixpkgs-extra.packages.x86_64-linux;
+  chaoticPkgs = inputs.chaotic-nixpkgs.packages.x86_64-linux;
 
   rustPkgs = import inputs.nixpkgs { system = "x86_64-linux"; overlays = [ rust-overlay.overlay ]; };
 in
 {
   "neovim" = neovim.packages.x86_64-linux.neovim;
-  "iosevka-pure-bin" = extra.iosevka-pure-bin;
+  "iosevka-pure-bin" = chaoticPkgs.iosevka-pure-bin;
   "phocus" = pkgs.callPackage ./phocus { src = inputs.phocus; };
-  "rust-nightly" = rustPkgs.rust-bin.nightly.latest.default.override { extensions = [ "rust-src"]; };
+  "rust-nightly" = rustPkgs.rust-bin.nightly.latest.default.override { extensions = [ "rust-src" ]; };
 }
diff --git a/packages/non-flake/default.nix b/packages/non-flake/default.nix
deleted file mode 100644
index 8ed430c..0000000
--- a/packages/non-flake/default.nix
+++ /dev/null
@@ -1,5 +0,0 @@
-{ self, ... } @ inputs:
-
-{
-  "wallpapers" = inputs.wallpapers;
-}