diff options
| -rw-r--r-- | flake.nix | 15 | ||||
| -rw-r--r-- | parts/default.nix | 7 | ||||
| -rw-r--r-- | parts/dev.nix | 10 | ||||
| -rw-r--r-- | parts/lib/configs.nix | 26 | ||||
| -rw-r--r-- | parts/lib/default.nix | 6 | ||||
| -rw-r--r-- | parts/lib/utils/default.nix | 3 | ||||
| -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.nix | 17 | ||||
| -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.nix | 22 | ||||
| -rw-r--r-- | parts/users/seth/darwin.nix (renamed from users/seth/darwin.nix) | 2 | ||||
| -rw-r--r-- | parts/users/seth/default.nix | 11 | ||||
| -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.nix | 30 | ||||
| -rw-r--r-- | secrets/secrets.nix | 17 | ||||
| -rw-r--r-- | users/default.nix | 29 | ||||
| -rw-r--r-- | users/seth/default.nix | 42 | ||||
| -rw-r--r-- | users/seth/module.nix | 7 |
119 files changed, 141 insertions, 158 deletions
@@ -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 - ]; -} |
