summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--flake.nix15
-rw-r--r--parts/default.nix7
-rw-r--r--parts/dev.nix10
-rw-r--r--parts/lib/configs.nix26
-rw-r--r--parts/lib/default.nix6
-rw-r--r--parts/lib/utils/default.nix3
-rw-r--r--parts/modules/darwin/base/default.nix (renamed from modules/darwin/base/default.nix)0
-rw-r--r--parts/modules/darwin/base/nix.nix (renamed from modules/darwin/base/nix.nix)0
-rw-r--r--parts/modules/darwin/base/packages.nix (renamed from modules/darwin/base/packages.nix)0
-rw-r--r--parts/modules/darwin/default.nix (renamed from modules/darwin/default.nix)0
-rw-r--r--parts/modules/darwin/desktop/default.nix (renamed from modules/darwin/desktop/default.nix)0
-rw-r--r--parts/modules/darwin/desktop/homebrew.nix (renamed from modules/darwin/desktop/homebrew.nix)0
-rw-r--r--parts/modules/default.nix (renamed from modules/default.nix)0
-rw-r--r--parts/modules/nixos/base/default.nix (renamed from modules/nixos/base/default.nix)0
-rw-r--r--parts/modules/nixos/base/documentation.nix (renamed from modules/nixos/base/documentation.nix)0
-rw-r--r--parts/modules/nixos/base/locale.nix (renamed from modules/nixos/base/locale.nix)0
-rw-r--r--parts/modules/nixos/base/network.nix (renamed from modules/nixos/base/network.nix)0
-rw-r--r--parts/modules/nixos/base/nix.nix (renamed from modules/nixos/base/nix.nix)0
-rw-r--r--parts/modules/nixos/base/packages.nix (renamed from modules/nixos/base/packages.nix)0
-rw-r--r--parts/modules/nixos/base/root.nix (renamed from modules/nixos/base/root.nix)0
-rw-r--r--parts/modules/nixos/base/security.nix (renamed from modules/nixos/base/security.nix)0
-rw-r--r--parts/modules/nixos/base/systemd.nix (renamed from modules/nixos/base/systemd.nix)0
-rw-r--r--parts/modules/nixos/base/upgrade-diff.nix (renamed from modules/nixos/base/upgrade-diff.nix)0
-rw-r--r--parts/modules/nixos/default.nix (renamed from modules/nixos/default.nix)0
-rw-r--r--parts/modules/nixos/desktop/audio.nix (renamed from modules/nixos/desktop/audio.nix)0
-rw-r--r--parts/modules/nixos/desktop/budgie/default.nix (renamed from modules/nixos/desktop/budgie/default.nix)0
-rw-r--r--parts/modules/nixos/desktop/default.nix (renamed from modules/nixos/desktop/default.nix)0
-rw-r--r--parts/modules/nixos/desktop/fonts.nix (renamed from modules/nixos/desktop/fonts.nix)0
-rw-r--r--parts/modules/nixos/desktop/gnome/default.nix (renamed from modules/nixos/desktop/gnome/default.nix)0
-rw-r--r--parts/modules/nixos/desktop/plasma/default.nix (renamed from modules/nixos/desktop/plasma/default.nix)0
-rw-r--r--parts/modules/nixos/features/tailscale.nix (renamed from modules/nixos/features/tailscale.nix)2
-rw-r--r--parts/modules/nixos/features/virtualisation.nix (renamed from modules/nixos/features/virtualisation.nix)0
-rw-r--r--parts/modules/nixos/hardware/default.nix (renamed from modules/nixos/hardware/default.nix)0
-rw-r--r--parts/modules/nixos/hardware/nvidia.nix (renamed from modules/nixos/hardware/nvidia.nix)0
-rw-r--r--parts/modules/nixos/hardware/ssd.nix (renamed from modules/nixos/hardware/ssd.nix)0
-rw-r--r--parts/modules/nixos/server/acme.nix (renamed from modules/nixos/server/acme.nix)2
-rw-r--r--parts/modules/nixos/server/default.nix (renamed from modules/nixos/server/default.nix)4
-rw-r--r--parts/modules/nixos/server/secrets.nix (renamed from modules/nixos/server/secrets.nix)2
-rw-r--r--parts/modules/nixos/server/services/cloudflared.nix (renamed from modules/nixos/server/services/cloudflared.nix)2
-rw-r--r--parts/modules/nixos/server/services/default.nix (renamed from modules/nixos/server/services/default.nix)0
-rw-r--r--parts/modules/nixos/server/services/hercules.nix (renamed from modules/nixos/server/services/hercules.nix)2
-rw-r--r--parts/modules/nixos/server/services/promtail.nix (renamed from modules/nixos/server/services/promtail.nix)0
-rw-r--r--parts/modules/shared/base/default.nix (renamed from modules/shared/base/default.nix)0
-rw-r--r--parts/modules/shared/base/documentation.nix (renamed from modules/shared/base/documentation.nix)0
-rw-r--r--parts/modules/shared/base/locale.nix (renamed from modules/shared/base/locale.nix)0
-rw-r--r--parts/modules/shared/base/nix.nix (renamed from modules/shared/base/nix.nix)0
-rw-r--r--parts/modules/shared/base/packages.nix (renamed from modules/shared/base/packages.nix)0
-rw-r--r--parts/modules/shared/default.nix (renamed from modules/shared/default.nix)0
-rw-r--r--parts/secrets/secrets.nix17
-rw-r--r--parts/secrets/shared/rootPassword.age (renamed from secrets/shared/rootPassword.age)0
-rw-r--r--parts/secrets/shared/sethPassword.age (renamed from secrets/shared/sethPassword.age)0
-rw-r--r--parts/secrets/systems/atlas/binaryCache.age (renamed from secrets/hosts/atlas/binaryCache.age)0
-rw-r--r--parts/secrets/systems/atlas/cloudflareApiKey.age (renamed from secrets/hosts/atlas/cloudflareApiKey.age)0
-rw-r--r--parts/secrets/systems/atlas/cloudflaredCreds.age (renamed from secrets/hosts/atlas/cloudflaredCreds.age)0
-rw-r--r--parts/secrets/systems/atlas/clusterToken.age (renamed from secrets/hosts/atlas/clusterToken.age)0
-rw-r--r--parts/secrets/systems/atlas/miniflux.age (renamed from secrets/hosts/atlas/miniflux.age)0
-rw-r--r--parts/secrets/systems/atlas/rootPassword.age (renamed from secrets/hosts/atlas/rootPassword.age)0
-rw-r--r--parts/secrets/systems/atlas/secretsJson.age (renamed from secrets/hosts/atlas/secretsJson.age)0
-rw-r--r--parts/secrets/systems/atlas/tailscaleAuthKey.age (renamed from secrets/hosts/atlas/tailscaleAuthKey.age)0
-rw-r--r--parts/secrets/systems/atlas/userPassword.age (renamed from secrets/hosts/atlas/userPassword.age)0
-rw-r--r--parts/systems/atlas/default.nix (renamed from hosts/atlas/default.nix)0
-rw-r--r--parts/systems/atlas/hardware-configuration.nix (renamed from hosts/atlas/hardware-configuration.nix)0
-rw-r--r--parts/systems/atlas/miniflux.nix (renamed from hosts/atlas/miniflux.nix)2
-rw-r--r--parts/systems/atlas/nginx.nix (renamed from hosts/atlas/nginx.nix)0
-rw-r--r--parts/systems/caroline/default.nix (renamed from hosts/caroline/default.nix)0
-rw-r--r--parts/systems/default.nix (renamed from hosts/default.nix)0
-rw-r--r--parts/systems/glados-wsl/default.nix (renamed from hosts/glados-wsl/default.nix)0
-rw-r--r--parts/systems/glados/boot.nix (renamed from hosts/glados/boot.nix)0
-rw-r--r--parts/systems/glados/default.nix (renamed from hosts/glados/default.nix)0
-rw-r--r--parts/systems/glados/hardware-configuration.nix (renamed from hosts/glados/hardware-configuration.nix)0
-rw-r--r--parts/systems/profiles.nix (renamed from hosts/profiles.nix)35
-rw-r--r--parts/systems/turret/default.nix (renamed from hosts/turret/default.nix)0
-rw-r--r--parts/systems/turret/files/etc/config/dhcp (renamed from hosts/turret/files/etc/config/dhcp)0
-rw-r--r--parts/systems/turret/files/etc/config/dropbear (renamed from hosts/turret/files/etc/config/dropbear)0
-rw-r--r--parts/systems/turret/files/etc/config/firewall (renamed from hosts/turret/files/etc/config/firewall)0
-rw-r--r--parts/systems/turret/files/etc/config/https-dns-proxy (renamed from hosts/turret/files/etc/config/https-dns-proxy)0
-rw-r--r--parts/systems/turret/files/etc/config/luci (renamed from hosts/turret/files/etc/config/luci)0
-rw-r--r--parts/systems/turret/files/etc/config/network (renamed from hosts/turret/files/etc/config/network)0
-rw-r--r--parts/systems/turret/files/etc/config/rpcd (renamed from hosts/turret/files/etc/config/rpcd)0
-rw-r--r--parts/systems/turret/files/etc/config/system (renamed from hosts/turret/files/etc/config/system)0
-rw-r--r--parts/systems/turret/files/etc/config/ucitrack (renamed from hosts/turret/files/etc/config/ucitrack)0
-rw-r--r--parts/systems/turret/files/etc/config/uhttpd (renamed from hosts/turret/files/etc/config/uhttpd)0
-rw-r--r--parts/systems/turret/files/etc/config/wireless (renamed from hosts/turret/files/etc/config/wireless)0
-rw-r--r--parts/systems/turret/files/etc/dropbear/authorized_keys (renamed from hosts/turret/files/etc/dropbear/authorized_keys)0
-rw-r--r--parts/users/default.nix22
-rw-r--r--parts/users/seth/darwin.nix (renamed from users/seth/darwin.nix)2
-rw-r--r--parts/users/seth/default.nix11
-rw-r--r--parts/users/seth/desktop/budgie/default.nix (renamed from users/seth/desktop/budgie/default.nix)0
-rw-r--r--parts/users/seth/desktop/default.nix (renamed from users/seth/desktop/default.nix)0
-rw-r--r--parts/users/seth/desktop/gnome/default.nix (renamed from users/seth/desktop/gnome/default.nix)0
-rw-r--r--parts/users/seth/desktop/plasma/default.nix (renamed from users/seth/desktop/plasma/default.nix)0
-rw-r--r--parts/users/seth/home.nix (renamed from users/seth/home.nix)4
-rw-r--r--parts/users/seth/programs/chromium.nix (renamed from users/seth/programs/chromium.nix)0
-rw-r--r--parts/users/seth/programs/default.nix (renamed from users/seth/programs/default.nix)0
-rw-r--r--parts/users/seth/programs/firefox/arkenfox.nix (renamed from users/seth/programs/firefox/arkenfox.nix)0
-rw-r--r--parts/users/seth/programs/firefox/default.nix (renamed from users/seth/programs/firefox/default.nix)0
-rw-r--r--parts/users/seth/programs/git.nix (renamed from users/seth/programs/git.nix)0
-rw-r--r--parts/users/seth/programs/gpg.nix (renamed from users/seth/programs/gpg.nix)0
-rw-r--r--parts/users/seth/programs/mangohud.nix (renamed from users/seth/programs/mangohud.nix)0
-rw-r--r--parts/users/seth/programs/neovim/.luarc.json (renamed from users/seth/programs/neovim/.luarc.json)0
-rw-r--r--parts/users/seth/programs/neovim/config/init.lua (renamed from users/seth/programs/neovim/config/init.lua)0
-rw-r--r--parts/users/seth/programs/neovim/config/keybinds.lua (renamed from users/seth/programs/neovim/config/keybinds.lua)0
-rw-r--r--parts/users/seth/programs/neovim/config/plugins/general.lua (renamed from users/seth/programs/neovim/config/plugins/general.lua)0
-rw-r--r--parts/users/seth/programs/neovim/config/plugins/init.lua (renamed from users/seth/programs/neovim/config/plugins/init.lua)0
-rw-r--r--parts/users/seth/programs/neovim/config/plugins/lsp.lua (renamed from users/seth/programs/neovim/config/plugins/lsp.lua)0
-rw-r--r--parts/users/seth/programs/neovim/config/plugins/ui.lua (renamed from users/seth/programs/neovim/config/plugins/ui.lua)0
-rw-r--r--parts/users/seth/programs/neovim/default.nix (renamed from users/seth/programs/neovim/default.nix)0
-rw-r--r--parts/users/seth/programs/ssh.nix (renamed from users/seth/programs/ssh.nix)0
-rw-r--r--parts/users/seth/programs/vim.nix (renamed from users/seth/programs/vim.nix)0
-rw-r--r--parts/users/seth/shell/bash.nix (renamed from users/seth/shell/bash.nix)0
-rw-r--r--parts/users/seth/shell/default.nix (renamed from users/seth/shell/default.nix)0
-rw-r--r--parts/users/seth/shell/fish.nix (renamed from users/seth/shell/fish.nix)0
-rw-r--r--parts/users/seth/shell/starship.toml (renamed from users/seth/shell/starship.toml)0
-rw-r--r--parts/users/seth/shell/zsh.nix (renamed from users/seth/shell/zsh.nix)0
-rw-r--r--parts/users/seth/system.nix30
-rw-r--r--secrets/secrets.nix17
-rw-r--r--users/default.nix29
-rw-r--r--users/seth/default.nix42
-rw-r--r--users/seth/module.nix7
119 files changed, 141 insertions, 158 deletions
diff --git a/flake.nix b/flake.nix
index 0ec03d7..f25864f 100644
--- a/flake.nix
+++ b/flake.nix
@@ -119,19 +119,8 @@
flake-utils.url = "github:numtide/flake-utils";
};
- outputs = {
- parts,
- pre-commit,
- ...
- } @ inputs:
+ outputs = {parts, ...} @ inputs:
parts.lib.mkFlake {inherit inputs;} {
- imports = [
- pre-commit.flakeModule
-
- ./hosts
- ./modules
- ./parts
- ./users
- ];
+ imports = [./parts];
};
}
diff --git a/parts/default.nix b/parts/default.nix
index fd41d6b..ac7bc08 100644
--- a/parts/default.nix
+++ b/parts/default.nix
@@ -1,8 +1,11 @@
-_: {
+{
imports = [
- ./dev.nix
./lib
+ ./modules
./overlays
+ ./systems
+ ./users
+ ./dev.nix
];
systems = [
diff --git a/parts/dev.nix b/parts/dev.nix
index 1ecb17e..0ca95aa 100644
--- a/parts/dev.nix
+++ b/parts/dev.nix
@@ -1,4 +1,12 @@
-{lib, ...}: {
+{
+ lib,
+ inputs,
+ ...
+}: {
+ imports = [
+ inputs.pre-commit.flakeModule
+ ];
+
perSystem = {
pkgs,
config,
diff --git a/parts/lib/configs.nix b/parts/lib/configs.nix
index a3c20a6..5392d9b 100644
--- a/parts/lib/configs.nix
+++ b/parts/lib/configs.nix
@@ -1,11 +1,6 @@
-{
- inputs,
- self,
- ...
-}: let
- inherit (builtins) attrNames mapAttrs;
+{inputs, ...}: let
+ inherit (builtins) mapAttrs;
inherit (inputs) nixpkgs hm;
- inherit (nixpkgs.lib) genAttrs optional;
mkSystemCfg = name: {
profile,
@@ -16,7 +11,7 @@
profile.builder {
inherit specialArgs system;
modules =
- [../../hosts/${name}]
+ [../systems/${name}]
++ (
if modules == profile.modules
then modules
@@ -25,8 +20,8 @@
};
mkHMCfg = name: {
- pkgs ? import nixpkgs {system = "x86_64-linux";},
- extraSpecialArgs ? inputs,
+ pkgs ? nixpkgs.legacyPackages."x86_64-linux",
+ extraSpecialArgs ? {inherit inputs;},
modules ? [],
}:
hm.lib.homeManagerConfiguration {
@@ -34,23 +29,16 @@
modules =
[
- self.homeManagerModules.${name}
- ../../users/${name}/home.nix
+ ../users/${name}/home.nix
{
_module.args.osConfig = {};
programs.home-manager.enable = true;
}
]
- ++ optional pkgs.stdenv.isDarwin ../../users/${name}/darwin.nix
++ modules;
};
in {
- inherit mkHMCfg mkSystemCfg;
- mapHMUsers = mapAttrs mkHMCfg;
-
mapSystems = mapAttrs mkSystemCfg;
-
- genHMModules = users:
- genAttrs (attrNames users) (name: import ../../users/${name}/module.nix);
+ mapHMUsers = mapAttrs mkHMCfg;
}
diff --git a/parts/lib/default.nix b/parts/lib/default.nix
index 5f99521..c499eec 100644
--- a/parts/lib/default.nix
+++ b/parts/lib/default.nix
@@ -1,6 +1,8 @@
-{withSystem, ...} @ args: {
+args: {
flake.lib = {
configs = import ./configs.nix args;
- utils = import ./utils ({inherit withSystem;} // args);
+ utils = {
+ nginx = import ./utils/nginx.nix args;
+ };
};
}
diff --git a/parts/lib/utils/default.nix b/parts/lib/utils/default.nix
deleted file mode 100644
index ad91841..0000000
--- a/parts/lib/utils/default.nix
+++ /dev/null
@@ -1,3 +0,0 @@
-args: {
- nginx = import ./nginx.nix args;
-}
diff --git a/modules/darwin/base/default.nix b/parts/modules/darwin/base/default.nix
index 42c0335..42c0335 100644
--- a/modules/darwin/base/default.nix
+++ b/parts/modules/darwin/base/default.nix
diff --git a/modules/darwin/base/nix.nix b/parts/modules/darwin/base/nix.nix
index c853650..c853650 100644
--- a/modules/darwin/base/nix.nix
+++ b/parts/modules/darwin/base/nix.nix
diff --git a/modules/darwin/base/packages.nix b/parts/modules/darwin/base/packages.nix
index 97fb77c..97fb77c 100644
--- a/modules/darwin/base/packages.nix
+++ b/parts/modules/darwin/base/packages.nix
diff --git a/modules/darwin/default.nix b/parts/modules/darwin/default.nix
index ed9c7e1..ed9c7e1 100644
--- a/modules/darwin/default.nix
+++ b/parts/modules/darwin/default.nix
diff --git a/modules/darwin/desktop/default.nix b/parts/modules/darwin/desktop/default.nix
index 1f71642..1f71642 100644
--- a/modules/darwin/desktop/default.nix
+++ b/parts/modules/darwin/desktop/default.nix
diff --git a/modules/darwin/desktop/homebrew.nix b/parts/modules/darwin/desktop/homebrew.nix
index 4a58ae9..4a58ae9 100644
--- a/modules/darwin/desktop/homebrew.nix
+++ b/parts/modules/darwin/desktop/homebrew.nix
diff --git a/modules/default.nix b/parts/modules/default.nix
index 4b3dddb..4b3dddb 100644
--- a/modules/default.nix
+++ b/parts/modules/default.nix
diff --git a/modules/nixos/base/default.nix b/parts/modules/nixos/base/default.nix
index ed0fb23..ed0fb23 100644
--- a/modules/nixos/base/default.nix
+++ b/parts/modules/nixos/base/default.nix
diff --git a/modules/nixos/base/documentation.nix b/parts/modules/nixos/base/documentation.nix
index 68a194f..68a194f 100644
--- a/modules/nixos/base/documentation.nix
+++ b/parts/modules/nixos/base/documentation.nix
diff --git a/modules/nixos/base/locale.nix b/parts/modules/nixos/base/locale.nix
index 7259ef2..7259ef2 100644
--- a/modules/nixos/base/locale.nix
+++ b/parts/modules/nixos/base/locale.nix
diff --git a/modules/nixos/base/network.nix b/parts/modules/nixos/base/network.nix
index 5bc90d1..5bc90d1 100644
--- a/modules/nixos/base/network.nix
+++ b/parts/modules/nixos/base/network.nix
diff --git a/modules/nixos/base/nix.nix b/parts/modules/nixos/base/nix.nix
index 3dcac11..3dcac11 100644
--- a/modules/nixos/base/nix.nix
+++ b/parts/modules/nixos/base/nix.nix
diff --git a/modules/nixos/base/packages.nix b/parts/modules/nixos/base/packages.nix
index 7390a40..7390a40 100644
--- a/modules/nixos/base/packages.nix
+++ b/parts/modules/nixos/base/packages.nix
diff --git a/modules/nixos/base/root.nix b/parts/modules/nixos/base/root.nix
index ecc5203..ecc5203 100644
--- a/modules/nixos/base/root.nix
+++ b/parts/modules/nixos/base/root.nix
diff --git a/modules/nixos/base/security.nix b/parts/modules/nixos/base/security.nix
index e13d1c7..e13d1c7 100644
--- a/modules/nixos/base/security.nix
+++ b/parts/modules/nixos/base/security.nix
diff --git a/modules/nixos/base/systemd.nix b/parts/modules/nixos/base/systemd.nix
index 2888c0b..2888c0b 100644
--- a/modules/nixos/base/systemd.nix
+++ b/parts/modules/nixos/base/systemd.nix
diff --git a/modules/nixos/base/upgrade-diff.nix b/parts/modules/nixos/base/upgrade-diff.nix
index 68be9af..68be9af 100644
--- a/modules/nixos/base/upgrade-diff.nix
+++ b/parts/modules/nixos/base/upgrade-diff.nix
diff --git a/modules/nixos/default.nix b/parts/modules/nixos/default.nix
index 3ae2f08..3ae2f08 100644
--- a/modules/nixos/default.nix
+++ b/parts/modules/nixos/default.nix
diff --git a/modules/nixos/desktop/audio.nix b/parts/modules/nixos/desktop/audio.nix
index c601563..c601563 100644
--- a/modules/nixos/desktop/audio.nix
+++ b/parts/modules/nixos/desktop/audio.nix
diff --git a/modules/nixos/desktop/budgie/default.nix b/parts/modules/nixos/desktop/budgie/default.nix
index 4605eb1..4605eb1 100644
--- a/modules/nixos/desktop/budgie/default.nix
+++ b/parts/modules/nixos/desktop/budgie/default.nix
diff --git a/modules/nixos/desktop/default.nix b/parts/modules/nixos/desktop/default.nix
index f0ab74c..f0ab74c 100644
--- a/modules/nixos/desktop/default.nix
+++ b/parts/modules/nixos/desktop/default.nix
diff --git a/modules/nixos/desktop/fonts.nix b/parts/modules/nixos/desktop/fonts.nix
index feedf07..feedf07 100644
--- a/modules/nixos/desktop/fonts.nix
+++ b/parts/modules/nixos/desktop/fonts.nix
diff --git a/modules/nixos/desktop/gnome/default.nix b/parts/modules/nixos/desktop/gnome/default.nix
index bfe3d20..bfe3d20 100644
--- a/modules/nixos/desktop/gnome/default.nix
+++ b/parts/modules/nixos/desktop/gnome/default.nix
diff --git a/modules/nixos/desktop/plasma/default.nix b/parts/modules/nixos/desktop/plasma/default.nix
index 2034802..2034802 100644
--- a/modules/nixos/desktop/plasma/default.nix
+++ b/parts/modules/nixos/desktop/plasma/default.nix
diff --git a/modules/nixos/features/tailscale.nix b/parts/modules/nixos/features/tailscale.nix
index dc688f6..5a00110 100644
--- a/modules/nixos/features/tailscale.nix
+++ b/parts/modules/nixos/features/tailscale.nix
@@ -15,7 +15,7 @@ in {
config = mkIf cfg.enable {
age.secrets = let
- baseDir = "${self}/secrets/hosts/${config.networking.hostName}";
+ baseDir = "${self}/parts/secrets/systems/${config.networking.hostName}";
in
mkIf cfg.ssh.enable {
tailscaleAuthKey.file = "${baseDir}/tailscaleAuthKey.age";
diff --git a/modules/nixos/features/virtualisation.nix b/parts/modules/nixos/features/virtualisation.nix
index 206a98e..206a98e 100644
--- a/modules/nixos/features/virtualisation.nix
+++ b/parts/modules/nixos/features/virtualisation.nix
diff --git a/modules/nixos/hardware/default.nix b/parts/modules/nixos/hardware/default.nix
index 1217b5a..1217b5a 100644
--- a/modules/nixos/hardware/default.nix
+++ b/parts/modules/nixos/hardware/default.nix
diff --git a/modules/nixos/hardware/nvidia.nix b/parts/modules/nixos/hardware/nvidia.nix
index dd371f2..dd371f2 100644
--- a/modules/nixos/hardware/nvidia.nix
+++ b/parts/modules/nixos/hardware/nvidia.nix
diff --git a/modules/nixos/hardware/ssd.nix b/parts/modules/nixos/hardware/ssd.nix
index 2995d93..2995d93 100644
--- a/modules/nixos/hardware/ssd.nix
+++ b/parts/modules/nixos/hardware/ssd.nix
diff --git a/modules/nixos/server/acme.nix b/parts/modules/nixos/server/acme.nix
index 56a81fa..69e02ac 100644
--- a/modules/nixos/server/acme.nix
+++ b/parts/modules/nixos/server/acme.nix
@@ -12,7 +12,7 @@ in {
};
config = mkIf cfg.enable {
- age.secrets.cloudflareApiKey.file = "${self}/secrets/hosts/${config.networking.hostName}/cloudflareApiKey.age";
+ age.secrets.cloudflareApiKey.file = "${self}/parts/secrets/systems/${config.networking.hostName}/cloudflareApiKey.age";
security.acme = {
acceptTerms = true;
diff --git a/modules/nixos/server/default.nix b/parts/modules/nixos/server/default.nix
index 9866cd0..acab4fc 100644
--- a/modules/nixos/server/default.nix
+++ b/parts/modules/nixos/server/default.nix
@@ -2,7 +2,7 @@
config,
lib,
pkgs,
- nixpkgs,
+ inputs,
...
}: let
cfg = config.server;
@@ -17,7 +17,7 @@ in {
];
config = mkIf cfg.enable {
- _module.args.unstable = nixpkgs.legacyPackages.${pkgs.system};
+ _module.args.unstable = inputs.nixpkgs.legacyPackages.${pkgs.stdenv.hostPlatform.system};
base = {
enable = true;
diff --git a/modules/nixos/server/secrets.nix b/parts/modules/nixos/server/secrets.nix
index 62654f3..2dc6083 100644
--- a/modules/nixos/server/secrets.nix
+++ b/parts/modules/nixos/server/secrets.nix
@@ -12,7 +12,7 @@ in {
};
config.age = let
- baseDir = "${self}/secrets/hosts/${config.networking.hostName}";
+ baseDir = "${self}/parts/secrets/systems/${config.networking.hostName}";
in
mkIf cfg.enable {
identityPaths = ["/etc/age/key"];
diff --git a/modules/nixos/server/services/cloudflared.nix b/parts/modules/nixos/server/services/cloudflared.nix
index 803e7da..2bf7907 100644
--- a/modules/nixos/server/services/cloudflared.nix
+++ b/parts/modules/nixos/server/services/cloudflared.nix
@@ -13,7 +13,7 @@ in {
config = mkIf cfg.enable {
age.secrets.cloudflaredCreds = {
- file = "${self}/secrets/hosts/${config.networking.hostName}/cloudflaredCreds.age";
+ file = "${self}/parts/secrets/systems/${config.networking.hostName}/cloudflaredCreds.age";
mode = "400";
owner = "cloudflared";
group = "cloudflared";
diff --git a/modules/nixos/server/services/default.nix b/parts/modules/nixos/server/services/default.nix
index 23f2542..23f2542 100644
--- a/modules/nixos/server/services/default.nix
+++ b/parts/modules/nixos/server/services/default.nix
diff --git a/modules/nixos/server/services/hercules.nix b/parts/modules/nixos/server/services/hercules.nix
index 4833791..b11a133 100644
--- a/modules/nixos/server/services/hercules.nix
+++ b/parts/modules/nixos/server/services/hercules.nix
@@ -15,7 +15,7 @@ in {
config = mkIf cfg.enable {
age.secrets = let
- baseDir = "${self}/secrets/hosts/${config.networking.hostName}";
+ baseDir = "${self}/parts/secrets/systems/${config.networking.hostName}";
hercArgs = {
mode = "400";
owner = "hercules-ci-agent";
diff --git a/modules/nixos/server/services/promtail.nix b/parts/modules/nixos/server/services/promtail.nix
index 63faf15..63faf15 100644
--- a/modules/nixos/server/services/promtail.nix
+++ b/parts/modules/nixos/server/services/promtail.nix
diff --git a/modules/shared/base/default.nix b/parts/modules/shared/base/default.nix
index e18de58..e18de58 100644
--- a/modules/shared/base/default.nix
+++ b/parts/modules/shared/base/default.nix
diff --git a/modules/shared/base/documentation.nix b/parts/modules/shared/base/documentation.nix
index ecc5813..ecc5813 100644
--- a/modules/shared/base/documentation.nix
+++ b/parts/modules/shared/base/documentation.nix
diff --git a/modules/shared/base/locale.nix b/parts/modules/shared/base/locale.nix
index ecae786..ecae786 100644
--- a/modules/shared/base/locale.nix
+++ b/parts/modules/shared/base/locale.nix
diff --git a/modules/shared/base/nix.nix b/parts/modules/shared/base/nix.nix
index 2c95933..2c95933 100644
--- a/modules/shared/base/nix.nix
+++ b/parts/modules/shared/base/nix.nix
diff --git a/modules/shared/base/packages.nix b/parts/modules/shared/base/packages.nix
index 38cd6e7..38cd6e7 100644
--- a/modules/shared/base/packages.nix
+++ b/parts/modules/shared/base/packages.nix
diff --git a/modules/shared/default.nix b/parts/modules/shared/default.nix
index 0199860..0199860 100644
--- a/modules/shared/default.nix
+++ b/parts/modules/shared/default.nix
diff --git a/parts/secrets/secrets.nix b/parts/secrets/secrets.nix
new file mode 100644
index 0000000..7ebc07a
--- /dev/null
+++ b/parts/secrets/secrets.nix
@@ -0,0 +1,17 @@
+let
+ main = [
+ "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJ5K+yLHuz4kyCkJDX2Gd/uGVNEJroIAU/h0f9E2Mapn getchoo-nix"
+ ];
+
+ atlas = ["ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBA861lnShM2ejpzn9arzhpw33I4XdtULfZWhMp/plvL root@atlas"] ++ main;
+in {
+ "shared/rootPassword.age".publicKeys = main;
+ "shared/sethPassword.age".publicKeys = main;
+
+ "systems/atlas/rootPassword.age".publicKeys = atlas;
+ "systems/atlas/userPassword.age".publicKeys = atlas;
+ "systems/atlas/miniflux.age".publicKeys = atlas;
+ "systems/atlas/tailscaleAuthKey.age".publicKeys = atlas;
+ "systems/atlas/cloudflaredCreds.age".publicKeys = atlas;
+ "systems/atlas/cloudflareApiKey.age".publicKeys = atlas;
+}
diff --git a/secrets/shared/rootPassword.age b/parts/secrets/shared/rootPassword.age
index 3770a2d..3770a2d 100644
--- a/secrets/shared/rootPassword.age
+++ b/parts/secrets/shared/rootPassword.age
diff --git a/secrets/shared/sethPassword.age b/parts/secrets/shared/sethPassword.age
index 4015d60..4015d60 100644
--- a/secrets/shared/sethPassword.age
+++ b/parts/secrets/shared/sethPassword.age
diff --git a/secrets/hosts/atlas/binaryCache.age b/parts/secrets/systems/atlas/binaryCache.age
index 4a5a4b8..4a5a4b8 100644
--- a/secrets/hosts/atlas/binaryCache.age
+++ b/parts/secrets/systems/atlas/binaryCache.age
diff --git a/secrets/hosts/atlas/cloudflareApiKey.age b/parts/secrets/systems/atlas/cloudflareApiKey.age
index e26a8a1..e26a8a1 100644
--- a/secrets/hosts/atlas/cloudflareApiKey.age
+++ b/parts/secrets/systems/atlas/cloudflareApiKey.age
diff --git a/secrets/hosts/atlas/cloudflaredCreds.age b/parts/secrets/systems/atlas/cloudflaredCreds.age
index 800dd96..800dd96 100644
--- a/secrets/hosts/atlas/cloudflaredCreds.age
+++ b/parts/secrets/systems/atlas/cloudflaredCreds.age
diff --git a/secrets/hosts/atlas/clusterToken.age b/parts/secrets/systems/atlas/clusterToken.age
index 5ca3074..5ca3074 100644
--- a/secrets/hosts/atlas/clusterToken.age
+++ b/parts/secrets/systems/atlas/clusterToken.age
diff --git a/secrets/hosts/atlas/miniflux.age b/parts/secrets/systems/atlas/miniflux.age
index 0be7920..0be7920 100644
--- a/secrets/hosts/atlas/miniflux.age
+++ b/parts/secrets/systems/atlas/miniflux.age
diff --git a/secrets/hosts/atlas/rootPassword.age b/parts/secrets/systems/atlas/rootPassword.age
index 9609bfa..9609bfa 100644
--- a/secrets/hosts/atlas/rootPassword.age
+++ b/parts/secrets/systems/atlas/rootPassword.age
diff --git a/secrets/hosts/atlas/secretsJson.age b/parts/secrets/systems/atlas/secretsJson.age
index c5fdf34..c5fdf34 100644
--- a/secrets/hosts/atlas/secretsJson.age
+++ b/parts/secrets/systems/atlas/secretsJson.age
diff --git a/secrets/hosts/atlas/tailscaleAuthKey.age b/parts/secrets/systems/atlas/tailscaleAuthKey.age
index 45758a1..45758a1 100644
--- a/secrets/hosts/atlas/tailscaleAuthKey.age
+++ b/parts/secrets/systems/atlas/tailscaleAuthKey.age
diff --git a/secrets/hosts/atlas/userPassword.age b/parts/secrets/systems/atlas/userPassword.age
index 3e658ba..3e658ba 100644
--- a/secrets/hosts/atlas/userPassword.age
+++ b/parts/secrets/systems/atlas/userPassword.age
diff --git a/hosts/atlas/default.nix b/parts/systems/atlas/default.nix
index 24cb139..24cb139 100644
--- a/hosts/atlas/default.nix
+++ b/parts/systems/atlas/default.nix
diff --git a/hosts/atlas/hardware-configuration.nix b/parts/systems/atlas/hardware-configuration.nix
index 00c6cd8..00c6cd8 100644
--- a/hosts/atlas/hardware-configuration.nix
+++ b/parts/systems/atlas/hardware-configuration.nix
diff --git a/hosts/atlas/miniflux.nix b/parts/systems/atlas/miniflux.nix
index a7886e6..5ed5d40 100644
--- a/hosts/atlas/miniflux.nix
+++ b/parts/systems/atlas/miniflux.nix
@@ -5,7 +5,7 @@
}: {
config = {
age.secrets = {
- miniflux.file = "${self}/secrets/hosts/${config.networking.hostName}/miniflux.age";
+ miniflux.file = "${self}/parts/secrets/systems/${config.networking.hostName}/miniflux.age";
};
services.miniflux = {
diff --git a/hosts/atlas/nginx.nix b/parts/systems/atlas/nginx.nix
index cdf483d..cdf483d 100644
--- a/hosts/atlas/nginx.nix
+++ b/parts/systems/atlas/nginx.nix
diff --git a/hosts/caroline/default.nix b/parts/systems/caroline/default.nix
index 43dc82f..43dc82f 100644
--- a/hosts/caroline/default.nix
+++ b/parts/systems/caroline/default.nix
diff --git a/hosts/default.nix b/parts/systems/default.nix
index e9ef9ba..e9ef9ba 100644
--- a/hosts/default.nix
+++ b/parts/systems/default.nix
diff --git a/hosts/glados-wsl/default.nix b/parts/systems/glados-wsl/default.nix
index 98b57ed..98b57ed 100644
--- a/hosts/glados-wsl/default.nix
+++ b/parts/systems/glados-wsl/default.nix
diff --git a/hosts/glados/boot.nix b/parts/systems/glados/boot.nix
index 4a9af4e..4a9af4e 100644
--- a/hosts/glados/boot.nix
+++ b/parts/systems/glados/boot.nix
diff --git a/hosts/glados/default.nix b/parts/systems/glados/default.nix
index de2c1d5..de2c1d5 100644
--- a/hosts/glados/default.nix
+++ b/parts/systems/glados/default.nix
diff --git a/hosts/glados/hardware-configuration.nix b/parts/systems/glados/hardware-configuration.nix
index a7ff9e9..a7ff9e9 100644
--- a/hosts/glados/hardware-configuration.nix
+++ b/parts/systems/glados/hardware-configuration.nix
diff --git a/hosts/profiles.nix b/parts/systems/profiles.nix
index 9bf9d9f..277d3c1 100644
--- a/hosts/profiles.nix
+++ b/parts/systems/profiles.nix
@@ -1,8 +1,9 @@
{
inputs,
self,
+ ...
}: let
- specialArgs = inputs // {inherit inputs;};
+ specialArgs = {inherit inputs self;};
in {
personal = {
system = "x86_64-linux";
@@ -13,15 +14,15 @@ in {
agenix.nixosModules.default
hm.nixosModules.home-manager
nur.nixosModules.nur
-
self.nixosModules.default
- ../users/seth
+
+ ../users/seth/system.nix
{
age = {
identityPaths = ["/etc/age/key"];
secrets = let
- baseDir = "${self}/secrets/shared";
+ baseDir = "${self}/parts/secrets/shared";
in {
rootPassword.file = "${baseDir}/rootPassword.age";
sethPassword.file = "${baseDir}/sethPassword.age";
@@ -30,6 +31,12 @@ in {
base.enable = true;
system.stateVersion = "23.11";
+
+ home-manager = {
+ useGlobalPkgs = true;
+ useUserPackages = true;
+ extraSpecialArgs = specialArgs;
+ };
}
];
};
@@ -39,21 +46,27 @@ in {
inherit specialArgs;
modules = with inputs; [
hm.darwinModules.home-manager
-
- ../users/seth
self.darwinModules.default
+ ../users/seth/system.nix
+
{
base.enable = true;
desktop.enable = true;
system.stateVersion = 4;
- home-manager.users.seth = {
- imports = [
- ../users/seth/darwin.nix
- ];
+ home-manager = {
+ useGlobalPkgs = true;
+ useUserPackages = true;
+ extraSpecialArgs = specialArgs;
- getchoo.desktop.enable = false;
+ users.seth = {
+ imports = [
+ ../users/seth/darwin.nix
+ ];
+
+ getchoo.desktop.enable = false;
+ };
};
}
];
diff --git a/hosts/turret/default.nix b/parts/systems/turret/default.nix
index faac3d2..faac3d2 100644
--- a/hosts/turret/default.nix
+++ b/parts/systems/turret/default.nix
diff --git a/hosts/turret/files/etc/config/dhcp b/parts/systems/turret/files/etc/config/dhcp
index 4a471cf..4a471cf 100644
--- a/hosts/turret/files/etc/config/dhcp
+++ b/parts/systems/turret/files/etc/config/dhcp
diff --git a/hosts/turret/files/etc/config/dropbear b/parts/systems/turret/files/etc/config/dropbear
index 2139ba0..2139ba0 100644
--- a/hosts/turret/files/etc/config/dropbear
+++ b/parts/systems/turret/files/etc/config/dropbear
diff --git a/hosts/turret/files/etc/config/firewall b/parts/systems/turret/files/etc/config/firewall
index b9a4647..b9a4647 100644
--- a/hosts/turret/files/etc/config/firewall
+++ b/parts/systems/turret/files/etc/config/firewall
diff --git a/hosts/turret/files/etc/config/https-dns-proxy b/parts/systems/turret/files/etc/config/https-dns-proxy
index e5623ad..e5623ad 100644
--- a/hosts/turret/files/etc/config/https-dns-proxy
+++ b/parts/systems/turret/files/etc/config/https-dns-proxy
diff --git a/hosts/turret/files/etc/config/luci b/parts/systems/turret/files/etc/config/luci
index 8eb8a9b..8eb8a9b 100644
--- a/hosts/turret/files/etc/config/luci
+++ b/parts/systems/turret/files/etc/config/luci
diff --git a/hosts/turret/files/etc/config/network b/parts/systems/turret/files/etc/config/network
index c71cf98..c71cf98 100644
--- a/hosts/turret/files/etc/config/network
+++ b/parts/systems/turret/files/etc/config/network
diff --git a/hosts/turret/files/etc/config/rpcd b/parts/systems/turret/files/etc/config/rpcd
index 176c643..176c643 100644
--- a/hosts/turret/files/etc/config/rpcd
+++ b/parts/systems/turret/files/etc/config/rpcd
diff --git a/hosts/turret/files/etc/config/system b/parts/systems/turret/files/etc/config/system
index ee3415f..ee3415f 100644
--- a/hosts/turret/files/etc/config/system
+++ b/parts/systems/turret/files/etc/config/system
diff --git a/hosts/turret/files/etc/config/ucitrack b/parts/systems/turret/files/etc/config/ucitrack
index bb4cdbc..bb4cdbc 100644
--- a/hosts/turret/files/etc/config/ucitrack
+++ b/parts/systems/turret/files/etc/config/ucitrack
diff --git a/hosts/turret/files/etc/config/uhttpd b/parts/systems/turret/files/etc/config/uhttpd
index cb2ff71..cb2ff71 100644
--- a/hosts/turret/files/etc/config/uhttpd
+++ b/parts/systems/turret/files/etc/config/uhttpd
diff --git a/hosts/turret/files/etc/config/wireless b/parts/systems/turret/files/etc/config/wireless
index c8bb9d7..c8bb9d7 100644
--- a/hosts/turret/files/etc/config/wireless
+++ b/parts/systems/turret/files/etc/config/wireless
diff --git a/hosts/turret/files/etc/dropbear/authorized_keys b/parts/systems/turret/files/etc/dropbear/authorized_keys
index 495c605..495c605 100644
--- a/hosts/turret/files/etc/dropbear/authorized_keys
+++ b/parts/systems/turret/files/etc/dropbear/authorized_keys
diff --git a/parts/users/default.nix b/parts/users/default.nix
new file mode 100644
index 0000000..a639abe
--- /dev/null
+++ b/parts/users/default.nix
@@ -0,0 +1,22 @@
+{
+ lib,
+ config,
+ inputs,
+ self,
+ ...
+}: let
+ inherit (self.lib.configs) mapHMUsers;
+ inherit (inputs) nixpkgs;
+
+ pkgsFor = lib.genAttrs config.systems (
+ system:
+ import nixpkgs {
+ system = "x86_64-linux";
+ overlays = with inputs; [nur.overlay getchoo.overlays.default];
+ }
+ );
+in {
+ flake.homeConfigurations = mapHMUsers {
+ seth.pkgs = pkgsFor."x86_64-linux";
+ };
+}
diff --git a/users/seth/darwin.nix b/parts/users/seth/darwin.nix
index 4240dec..74e6489 100644
--- a/users/seth/darwin.nix
+++ b/parts/users/seth/darwin.nix
@@ -1,6 +1,4 @@
{pkgs, ...}: {
- imports = [./home.nix];
-
home.packages = with pkgs; [
discord
iterm2
diff --git a/parts/users/seth/default.nix b/parts/users/seth/default.nix
new file mode 100644
index 0000000..997a6c3
--- /dev/null
+++ b/parts/users/seth/default.nix
@@ -0,0 +1,11 @@
+{inputs, ...}: {
+ imports = with inputs; [
+ ./desktop
+ ./programs
+ ./shell
+ arkenfox.hmModules.arkenfox
+ nix-index-database.hmModules.nix-index
+ ];
+
+ home.stateVersion = "23.11";
+}
diff --git a/users/seth/desktop/budgie/default.nix b/parts/users/seth/desktop/budgie/default.nix
index 7eced2b..7eced2b 100644
--- a/users/seth/desktop/budgie/default.nix
+++ b/parts/users/seth/desktop/budgie/default.nix
diff --git a/users/seth/desktop/default.nix b/parts/users/seth/desktop/default.nix
index bdcef3d..bdcef3d 100644
--- a/users/seth/desktop/default.nix
+++ b/parts/users/seth/desktop/default.nix
diff --git a/users/seth/desktop/gnome/default.nix b/parts/users/seth/desktop/gnome/default.nix
index ff2d1d4..ff2d1d4 100644
--- a/users/seth/desktop/gnome/default.nix
+++ b/parts/users/seth/desktop/gnome/default.nix
diff --git a/users/seth/desktop/plasma/default.nix b/parts/users/seth/desktop/plasma/default.nix
index 4f59528..4f59528 100644
--- a/users/seth/desktop/plasma/default.nix
+++ b/parts/users/seth/desktop/plasma/default.nix
diff --git a/users/seth/home.nix b/parts/users/seth/home.nix
index e242a3e..a3d9cce 100644
--- a/users/seth/home.nix
+++ b/parts/users/seth/home.nix
@@ -3,6 +3,8 @@
pkgs,
...
}: {
+ imports = [./.];
+
home = let
username = "seth";
inherit (pkgs.stdenv) isLinux isDarwin;
@@ -14,7 +16,5 @@
then "/home/${username}"
else "/Users/${username}"
);
-
- stateVersion = "23.11";
};
}
diff --git a/users/seth/programs/chromium.nix b/parts/users/seth/programs/chromium.nix
index e313235..e313235 100644
--- a/users/seth/programs/chromium.nix
+++ b/parts/users/seth/programs/chromium.nix
diff --git a/users/seth/programs/default.nix b/parts/users/seth/programs/default.nix
index 93ba8f5..93ba8f5 100644
--- a/users/seth/programs/default.nix
+++ b/parts/users/seth/programs/default.nix
diff --git a/users/seth/programs/firefox/arkenfox.nix b/parts/users/seth/programs/firefox/arkenfox.nix
index 3da3a25..3da3a25 100644
--- a/users/seth/programs/firefox/arkenfox.nix
+++ b/parts/users/seth/programs/firefox/arkenfox.nix
diff --git a/users/seth/programs/firefox/default.nix b/parts/users/seth/programs/firefox/default.nix
index 82ba80d..82ba80d 100644
--- a/users/seth/programs/firefox/default.nix
+++ b/parts/users/seth/programs/firefox/default.nix
diff --git a/users/seth/programs/git.nix b/parts/users/seth/programs/git.nix
index ec92f8d..ec92f8d 100644
--- a/users/seth/programs/git.nix
+++ b/parts/users/seth/programs/git.nix
diff --git a/users/seth/programs/gpg.nix b/parts/users/seth/programs/gpg.nix
index f4f1a33..f4f1a33 100644
--- a/users/seth/programs/gpg.nix
+++ b/parts/users/seth/programs/gpg.nix
diff --git a/users/seth/programs/mangohud.nix b/parts/users/seth/programs/mangohud.nix
index 1ab8bb0..1ab8bb0 100644
--- a/users/seth/programs/mangohud.nix
+++ b/parts/users/seth/programs/mangohud.nix
diff --git a/users/seth/programs/neovim/.luarc.json b/parts/users/seth/programs/neovim/.luarc.json
index 23b9ee2..23b9ee2 100644
--- a/users/seth/programs/neovim/.luarc.json
+++ b/parts/users/seth/programs/neovim/.luarc.json
diff --git a/users/seth/programs/neovim/config/init.lua b/parts/users/seth/programs/neovim/config/init.lua
index 854f26c..854f26c 100644
--- a/users/seth/programs/neovim/config/init.lua
+++ b/parts/users/seth/programs/neovim/config/init.lua
diff --git a/users/seth/programs/neovim/config/keybinds.lua b/parts/users/seth/programs/neovim/config/keybinds.lua
index 7dab12e..7dab12e 100644
--- a/users/seth/programs/neovim/config/keybinds.lua
+++ b/parts/users/seth/programs/neovim/config/keybinds.lua
diff --git a/users/seth/programs/neovim/config/plugins/general.lua b/parts/users/seth/programs/neovim/config/plugins/general.lua
index f9a0c2c..f9a0c2c 100644
--- a/users/seth/programs/neovim/config/plugins/general.lua
+++ b/parts/users/seth/programs/neovim/config/plugins/general.lua
diff --git a/users/seth/programs/neovim/config/plugins/init.lua b/parts/users/seth/programs/neovim/config/plugins/init.lua
index 95883c7..95883c7 100644
--- a/users/seth/programs/neovim/config/plugins/init.lua
+++ b/parts/users/seth/programs/neovim/config/plugins/init.lua
diff --git a/users/seth/programs/neovim/config/plugins/lsp.lua b/parts/users/seth/programs/neovim/config/plugins/lsp.lua
index e776ed4..e776ed4 100644
--- a/users/seth/programs/neovim/config/plugins/lsp.lua
+++ b/parts/users/seth/programs/neovim/config/plugins/lsp.lua
diff --git a/users/seth/programs/neovim/config/plugins/ui.lua b/parts/users/seth/programs/neovim/config/plugins/ui.lua
index 3a0cc2e..3a0cc2e 100644
--- a/users/seth/programs/neovim/config/plugins/ui.lua
+++ b/parts/users/seth/programs/neovim/config/plugins/ui.lua
diff --git a/users/seth/programs/neovim/default.nix b/parts/users/seth/programs/neovim/default.nix
index 2a186ac..2a186ac 100644
--- a/users/seth/programs/neovim/default.nix
+++ b/parts/users/seth/programs/neovim/default.nix
diff --git a/users/seth/programs/ssh.nix b/parts/users/seth/programs/ssh.nix
index 080a60e..080a60e 100644
--- a/users/seth/programs/ssh.nix
+++ b/parts/users/seth/programs/ssh.nix
diff --git a/users/seth/programs/vim.nix b/parts/users/seth/programs/vim.nix
index 0f81cfb..0f81cfb 100644
--- a/users/seth/programs/vim.nix
+++ b/parts/users/seth/programs/vim.nix
diff --git a/users/seth/shell/bash.nix b/parts/users/seth/shell/bash.nix
index f9a1afa..f9a1afa 100644
--- a/users/seth/shell/bash.nix
+++ b/parts/users/seth/shell/bash.nix
diff --git a/users/seth/shell/default.nix b/parts/users/seth/shell/default.nix
index 5f7e24c..5f7e24c 100644
--- a/users/seth/shell/default.nix
+++ b/parts/users/seth/shell/default.nix
diff --git a/users/seth/shell/fish.nix b/parts/users/seth/shell/fish.nix
index 7488b40..7488b40 100644
--- a/users/seth/shell/fish.nix
+++ b/parts/users/seth/shell/fish.nix
diff --git a/users/seth/shell/starship.toml b/parts/users/seth/shell/starship.toml
index 94a2922..94a2922 100644
--- a/users/seth/shell/starship.toml
+++ b/parts/users/seth/shell/starship.toml
diff --git a/users/seth/shell/zsh.nix b/parts/users/seth/shell/zsh.nix
index 23d5813..23d5813 100644
--- a/users/seth/shell/zsh.nix
+++ b/parts/users/seth/shell/zsh.nix
diff --git a/parts/users/seth/system.nix b/parts/users/seth/system.nix
new file mode 100644
index 0000000..f3957c7
--- /dev/null
+++ b/parts/users/seth/system.nix
@@ -0,0 +1,30 @@
+{
+ config,
+ lib,
+ pkgs,
+ ...
+}: {
+ users.users.seth = let
+ inherit (pkgs.stdenv.hostPlatform) isLinux isDarwin;
+ in
+ lib.recursiveUpdate
+ {
+ shell = pkgs.fish;
+ home =
+ if isDarwin
+ then "/Users/seth"
+ else "/home/seth";
+ }
+ (lib.optionalAttrs isLinux {
+ extraGroups = ["wheel"];
+ isNormalUser = true;
+ hashedPasswordFile = config.age.secrets.sethPassword.path;
+ });
+
+ programs.fish.enable = true;
+
+ home-manager.users.seth = {
+ imports = [./.];
+ nixpkgs.overlays = config.nixpkgs.overlays;
+ };
+}
diff --git a/secrets/secrets.nix b/secrets/secrets.nix
deleted file mode 100644
index 7c02845..0000000
--- a/secrets/secrets.nix
+++ /dev/null
@@ -1,17 +0,0 @@
-let
- main = [
- "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJ5K+yLHuz4kyCkJDX2Gd/uGVNEJroIAU/h0f9E2Mapn getchoo-nix"
- ];
-
- atlas = ["ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBA861lnShM2ejpzn9arzhpw33I4XdtULfZWhMp/plvL root@atlas"] ++ main;
-in {
- "shared/rootPassword.age".publicKeys = main;
- "shared/sethPassword.age".publicKeys = main;
-
- "hosts/atlas/rootPassword.age".publicKeys = atlas;
- "hosts/atlas/userPassword.age".publicKeys = atlas;
- "hosts/atlas/miniflux.age".publicKeys = atlas;
- "hosts/atlas/tailscaleAuthKey.age".publicKeys = atlas;
- "hosts/atlas/cloudflaredCreds.age".publicKeys = atlas;
- "hosts/atlas/cloudflareApiKey.age".publicKeys = atlas;
-}
diff --git a/users/default.nix b/users/default.nix
deleted file mode 100644
index 47d35bd..0000000
--- a/users/default.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{
- inputs,
- self,
- ...
-}: let
- inherit (self.lib.configs) genHMModules mapHMUsers;
- inherit (inputs) arkenfox getchoo nixpkgs nix-index-database nur;
-
- users = let
- seth = system: {
- pkgs = import nixpkgs {
- inherit system;
- overlays = [nur.overlay getchoo.overlays.default];
- };
-
- modules = [
- nix-index-database.hmModules.nix-index
- arkenfox.hmModules.arkenfox
- ];
- };
- in {
- seth = seth "x86_64-linux";
- };
-in {
- flake = {
- homeConfigurations = mapHMUsers users;
- homeManagerModules = genHMModules users;
- };
-}
diff --git a/users/seth/default.nix b/users/seth/default.nix
deleted file mode 100644
index 2e7e106..0000000
--- a/users/seth/default.nix
+++ /dev/null
@@ -1,42 +0,0 @@
-{
- config,
- lib,
- pkgs,
- arkenfox,
- nix-index-database,
- ...
-}: {
- users.users.seth = let
- inherit (pkgs.stdenv) isLinux isDarwin;
- in
- lib.recursiveUpdate {
- shell = pkgs.fish;
- home = lib.optionalString (isLinux || isDarwin) (
- if isLinux
- then "/home/seth"
- else "/Users/seth"
- );
- } (lib.optionalAttrs pkgs.stdenv.isLinux {
- extraGroups = lib.optional pkgs.stdenv.isLinux "wheel";
- isNormalUser = true;
- hashedPasswordFile = config.age.secrets.sethPassword.path;
- });
-
- programs.fish.enable = true;
-
- home-manager = {
- useGlobalPkgs = true;
- useUserPackages = true;
- };
-
- home-manager.users.seth = {
- imports = [
- ./home.nix
- ./module.nix
- arkenfox.hmModules.arkenfox
- nix-index-database.hmModules.nix-index
- ];
-
- nixpkgs.overlays = config.nixpkgs.overlays;
- };
-}
diff --git a/users/seth/module.nix b/users/seth/module.nix
deleted file mode 100644
index 9a9a12d..0000000
--- a/users/seth/module.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-_: {
- imports = [
- ./desktop
- ./programs
- ./shell
- ];
-}