From 61d35cbc2a628bfa63460c2e2b203a52d7b49e32 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Mon, 26 Feb 2024 16:12:11 +0000 Subject: [PATCH 01/22] Limit dendrite connections --- hosts/linode/synapse.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hosts/linode/synapse.nix b/hosts/linode/synapse.nix index 86f1fba..b10e16b 100644 --- a/hosts/linode/synapse.nix +++ b/hosts/linode/synapse.nix @@ -109,7 +109,7 @@ return 200 '${builtins.toJSON client}'; global = { database = { connection_string = conn; - max_open_conns = 90; + max_open_conns = 25; max_idle_conns = 5; conn_max_lifetime = -1; }; From 01961ca374f54a264f0751ccab4755c36cf39607 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Mon, 26 Feb 2024 11:39:56 -0600 Subject: [PATCH 02/22] Change from Gnome to Sway --- flake.lock | 6 +-- home/gui/chat.nix | 19 -------- home/gui/default.nix | 42 ----------------- home/gui/firefox.nix | 49 -------------------- home/home.nix | 7 ++- home/hosts/jude/default.nix | 2 + home/modules/default.nix | 2 + home/modules/gui.nix | 89 +++++++++++++++++++++++++++++++++++++ home/modules/sway.nix | 71 +++++++++++++++++++++++++++++ hosts/default.nix | 10 +---- hosts/jude/default.nix | 3 +- modules/nixos/default.nix | 1 + modules/nixos/gnome.nix | 1 - modules/nixos/sway.nix | 42 +++++++++++++++++ 14 files changed, 217 insertions(+), 127 deletions(-) delete mode 100644 home/gui/chat.nix delete mode 100644 home/gui/default.nix delete mode 100644 home/gui/firefox.nix create mode 100644 home/modules/gui.nix create mode 100644 home/modules/sway.nix create mode 100644 modules/nixos/sway.nix diff --git a/flake.lock b/flake.lock index 8f347a7..debc007 100644 --- a/flake.lock +++ b/flake.lock @@ -406,11 +406,11 @@ }, "nixunstable": { "locked": { - "lastModified": 1707092692, - "narHash": "sha256-ZbHsm+mGk/izkWtT4xwwqz38fdlwu7nUUKXTOmm4SyE=", + "lastModified": 1708475490, + "narHash": "sha256-g1v0TsWBQPX97ziznfJdWhgMyMGtoBFs102xSYO4syU=", "owner": "nixos", "repo": "nixpkgs", - "rev": "faf912b086576fd1a15fca610166c98d47bc667e", + "rev": "0e74ca98a74bc7270d28838369593635a5db3260", "type": "github" }, "original": { diff --git a/home/gui/chat.nix b/home/gui/chat.nix deleted file mode 100644 index 913e0e0..0000000 --- a/home/gui/chat.nix +++ /dev/null @@ -1,19 +0,0 @@ -{ pkgs, lib, ... }: - -let - darwinPkgs = []; - x86Pkgs = with pkgs; [ - discord - element-desktop - slack - ]; - armPkgs = with pkgs; [ - element-desktop - ]; -in { - home.packages = ( if ( pkgs.stdenv.hostPlatform.isDarwin ) then darwinPkgs else - ( if ( lib.hasPrefix "aarch64" pkgs.system ) then armPkgs else - ( if ( lib.hasPrefix "x86_64" pkgs.system ) then x86Pkgs else [] ) - ) - ); -} diff --git a/home/gui/default.nix b/home/gui/default.nix deleted file mode 100644 index e81d251..0000000 --- a/home/gui/default.nix +++ /dev/null @@ -1,42 +0,0 @@ -{ pkgs, ... }: - -let - excludes = systems: opts: ( - if ( builtins.all (x: pkgs.system != x) systems ) then opts else [] - ); - -in -{ - imports = [ - ./chat.nix - ./firefox.nix - ]; - - # These packages are Linux only - home.packages = with pkgs; ( excludes ["x86_64-darwin" "aarch64-darwin"] - [ - cdrtools - vlc - x265 - ]) ++ - - # x86_64-linux only - ( excludes ["x86_64-darwin" "aarch64-darwin" "aarch64-linux"] - [ - bitwarden - endeavour - gnucash - jellyfin-media-player - libreoffice - #logseq - nextcloud-client - ]) ++ - - # Items that are not supported on ARM/Linux - ( excludes ["aarch64-linux"] - [ - onlyoffice-bin - synology-drive-client - zoom-us - ]); -} diff --git a/home/gui/firefox.nix b/home/gui/firefox.nix deleted file mode 100644 index 36859a6..0000000 --- a/home/gui/firefox.nix +++ /dev/null @@ -1,49 +0,0 @@ -{ lib, pkgs, ... }: - -let - # For now, we ignore this and don't install it - ffPkgs = if ( pkgs.stdenv.hostPlatform.isDarwin ) - then pkgs.firefox-bin - else pkgs.firefox-wayland.override { cfg.enableGnomeExtensions = true; }; - - vars = { - MOZ_ENABLE_WAYLAND = "1"; - XDG_CURRENT_DESKTOP = "sway"; - }; -in with lib; -{ - programs.firefox = { - enable = (! pkgs.stdenv.hostPlatform.isDarwin); - package = ffPkgs; - profiles = { - default = { - settings = { - "app.update.auto" = false; - "browser.ctrlTab.sortByRecentlyUsed" = true; - "browser.startup.page" = 3; - "browser.startup.homepage" = "https://thehellings.com"; - "doh-rollout.doorhanger-decision" = "UIDisabled"; - "doh-rollout.doneFirstRun" = true; - "signon.rememberSignons" = false; - }; - extensions = with pkgs.nur.repos.rycee.firefox-addons; [ - bitwarden - bypass-paywalls-clean - gsconnect - foxyproxy-standard - multi-account-containers - plasma-integration - octotree - refined-github - tree-style-tab - ublock-origin - unpaywall - ]; - }; - }; - }; - - programs.bash.sessionVariables = vars; - - programs.xonsh.sessionVariables = vars; -} diff --git a/home/home.nix b/home/home.nix index cc236e2..12527fa 100644 --- a/home/home.nix +++ b/home/home.nix @@ -1,4 +1,4 @@ -{ pkgs, lib, gui, gnome, +{ pkgs, lib, inputs, host ? "most", ...}: @@ -15,11 +15,9 @@ ./vim.nix ./xonsh.nix ./hosts/${host} - ] ++ ( if gui then [ ./gui ] else []); + ]; - greg.gnome = gnome; - programs.tmux = { enable = true; keyMode = "vi"; @@ -54,5 +52,6 @@ tree unzip wget + zip ]; } diff --git a/home/hosts/jude/default.nix b/home/hosts/jude/default.nix index c6ee00f..8ef40e8 100644 --- a/home/hosts/jude/default.nix +++ b/home/hosts/jude/default.nix @@ -9,4 +9,6 @@ fluffychat logseq ]; + greg.gui = true; + greg.sway = true; } diff --git a/home/modules/default.nix b/home/modules/default.nix index 81d29d5..05e118f 100644 --- a/home/modules/default.nix +++ b/home/modules/default.nix @@ -3,7 +3,9 @@ { imports = [ ./gnome.nix + ./gui.nix ./python.nix + ./sway.nix ./xonsh.nix ]; } diff --git a/home/modules/gui.nix b/home/modules/gui.nix new file mode 100644 index 0000000..f04b79d --- /dev/null +++ b/home/modules/gui.nix @@ -0,0 +1,89 @@ +{ config, pkgs, lib, ... }: + +let + cfg = config.greg.gui; + + excludes = systems: opts: ( + if ( builtins.all (x: pkgs.system != x) systems ) then opts else [] + ); + + # For now, we ignore this and don't install it + ffPkgs = if ( pkgs.stdenv.hostPlatform.isDarwin ) + then pkgs.firefox-bin + else pkgs.firefox-wayland.override { cfg.enableGnomeExtensions = true; }; + + vars = { + MOZ_ENABLE_WAYLAND = "1"; + XDG_CURRENT_DESKTOP = "sway"; + }; +in { + options.greg.gui = lib.mkEnableOption "Enable GUI programs"; + + config = (lib.mkIf cfg { + # These packages are Linux only + home.packages = with pkgs; ( excludes ["x86_64-darwin" "aarch64-darwin"] + [ + cdrtools + element-desktop + vlc + x265 + ]) ++ + + # x86_64-linux only + ( excludes ["x86_64-darwin" "aarch64-darwin" "aarch64-linux"] + [ + bitwarden + discord + endeavour + gnucash + jellyfin-media-player + libreoffice + #logseq + nextcloud-client + slack + ]) ++ + + # Items that are not supported on ARM/Linux + ( excludes ["aarch64-linux"] + [ + onlyoffice-bin + synology-drive-client + zoom-us + ]); + + programs.firefox = { + enable = (! pkgs.stdenv.hostPlatform.isDarwin); + package = ffPkgs; + profiles = { + default = { + settings = { + "app.update.auto" = false; + "browser.ctrlTab.sortByRecentlyUsed" = true; + "browser.startup.page" = 3; + "browser.startup.homepage" = "https://thehellings.com"; + "doh-rollout.doorhanger-decision" = "UIDisabled"; + "doh-rollout.doneFirstRun" = true; + "signon.rememberSignons" = false; + }; + extensions = with pkgs.nur.repos.rycee.firefox-addons; [ + bitwarden + bypass-paywalls-clean + gsconnect + foxyproxy-standard + multi-account-containers + plasma-integration + octotree + refined-github + tree-style-tab + ublock-origin + unpaywall + ]; + }; + }; + }; + + # This is supposed to be in support of Firefox, but I dunno... + programs.bash.sessionVariables = vars; + programs.xonsh.sessionVariables = vars; + }); +} diff --git a/home/modules/sway.nix b/home/modules/sway.nix new file mode 100644 index 0000000..b289277 --- /dev/null +++ b/home/modules/sway.nix @@ -0,0 +1,71 @@ +{ config, pkgs, lib, ... }: + +let + cfg = config.greg.sway; +in { + options.greg.sway = lib.mkEnableOption "Enable Sway support and settings"; + + config = (lib.mkIf cfg { + programs.swaylock.enable = true; + + wayland.windowManager.sway = { + enable = true; + config = rec { + #fonts.size = 10.0; + keybindings = lib.mkOptionDefault { + "Mod3+l" = "${pkgs.swaylock}/bin/swaylock"; + }; + modifier = "Mod1"; + output = { + "Samsung Electric Company S24E650 H4ZN600985" = { + mode = "1920x1200"; + transform = "90"; + pos = "0 0"; + }; + "ViewSonic Corporation VA2252 Series VMT201800925" = { + mode = "1920x1080"; + pos = "200 1920"; + }; + }; + terminal = "${pkgs.alacritty}/bin/alacritty"; + startup = [ + { command = "firefox"; } + ]; + }; + extraOptions = [ + "--unsupported-gpu" + ]; + extraSessionCommands = '' + export WLR_NO_HARDWARE_CURSORS=1 + ''; + systemd.enable = true; + wrapperFeatures = { + base = true; + gtk = true; + }; + }; + + home.pointerCursor = { + name = "Adwaita"; + package = pkgs.gnome.adwaita-icon-theme; + size = 12; + x11 = { + enable = true; + defaultCursor = "Adwaita"; + }; + }; + + home.packages = with pkgs; [ + arj + dpkg + kate + kget + krename + krusader + p7zip + plocate + rpm + xxdiff + ]; + }); +} diff --git a/hosts/default.nix b/hosts/default.nix index 6e2973d..77d2aad 100644 --- a/hosts/default.nix +++ b/hosts/default.nix @@ -8,8 +8,6 @@ let machine = { channel ? inputs.nixstable, extraMods ? [], - gnome ? false, - gui ? false, name, system ? "x86_64-linux", hm ? inputs.hm @@ -28,7 +26,7 @@ let home-manager.useUserPackages = true; home-manager.users.greg = import ../home/home.nix; home-manager.extraSpecialArgs = { - inherit gnome gui inputs overlays; + inherit inputs overlays; home = "/home/greg"; host = name; }; @@ -41,11 +39,7 @@ let }; in { genesis = machine { name = "genesis"; }; - jude = unstable { - name = "jude"; - gnome = true; - gui = true; - }; + jude = unstable { name = "jude"; }; icdm-root = unstable { name = "icdm-root"; }; linode = machine { name = "linode"; }; mm = unstable { name = "mm"; }; diff --git a/hosts/jude/default.nix b/hosts/jude/default.nix index 3ac3f9c..df8d19c 100644 --- a/hosts/jude/default.nix +++ b/hosts/jude/default.nix @@ -27,7 +27,7 @@ }; greg = { tailscale.enable = true; - gnome.enable = true; + sway.enable = true; kde.enable = false; }; @@ -89,6 +89,7 @@ pulse.enable = true; wireplumber.enable = true; }; + locate.enable = true; xserver.videoDrivers = [ "nvidia" ]; }; hardware = { diff --git a/modules/nixos/default.nix b/modules/nixos/default.nix index 1a886ef..ad807e1 100644 --- a/modules/nixos/default.nix +++ b/modules/nixos/default.nix @@ -12,6 +12,7 @@ ./proxy.nix ./router.nix ./rpi4.nix + ./sway.nix ./tailscale.nix ]; diff --git a/modules/nixos/gnome.nix b/modules/nixos/gnome.nix index aa9fc4c..b5e8c95 100644 --- a/modules/nixos/gnome.nix +++ b/modules/nixos/gnome.nix @@ -38,7 +38,6 @@ in with lib; { }; programs.dconf.enable = true; - programs.sway.enable = true; # Gives us Wayland xdg.portal = { enable = true; wlr.enable = true; # Enables screen sharing in Wayland diff --git a/modules/nixos/sway.nix b/modules/nixos/sway.nix new file mode 100644 index 0000000..7f92df9 --- /dev/null +++ b/modules/nixos/sway.nix @@ -0,0 +1,42 @@ +{ config, pkgs, lib, ... }: + +let + cfg = config.greg.sway; + +in with lib; { + options = { + greg.sway.enable = mkEnableOption "Enable my default Gnome3 setup"; + }; + + config = mkIf cfg.enable { + services = { + accounts-daemon.enable = true; + + pipewire = { + enable = true; + alsa.enable = true; + audio.enable = true; + jack.enable = true; + pulse.enable = true; + wireplumber.enable = true; + }; + + xserver = { + enable = true; + displayManager.gdm = { + enable = true; + autoSuspend = false; + banner = "Welcome to Greg's JUDE machine. Do I know you?"; + wayland = true; + }; + layout = "us"; + }; + }; + + programs.sway = { + enable = true; # Will be enabled through home-manager + wrapperFeatures.gtk = true; + }; + security.pam.services.swaylock = {}; + }; +} From ab39520f23c9857265189d88a6bd18891fc5cd00 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Mon, 26 Feb 2024 15:42:34 -0600 Subject: [PATCH 03/22] More options in Sway --- home/modules/sway.nix | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/home/modules/sway.nix b/home/modules/sway.nix index b289277..ceedf2f 100644 --- a/home/modules/sway.nix +++ b/home/modules/sway.nix @@ -2,18 +2,29 @@ let cfg = config.greg.sway; + file_browser = { + pkg = pkgs.krusader; + path = "${pkgs.krusader}/bin/krusader"; + }; in { options.greg.sway = lib.mkEnableOption "Enable Sway support and settings"; config = (lib.mkIf cfg { programs.swaylock.enable = true; - wayland.windowManager.sway = { + wayland.windowManager.sway = let + mod = config.wayland.windowManager.sway.config.modifier; + in { enable = true; config = rec { #fonts.size = 10.0; keybindings = lib.mkOptionDefault { - "Mod3+l" = "${pkgs.swaylock}/bin/swaylock"; + "Mod4+l" = "exec ${pkgs.swaylock}/bin/swaylock -c 000000"; + "Mod4+h" = "exec ${pkgs.qpwgraph}/bin/qpwgraph -x /home/greg/sound/headphones.qpwgraph -m"; + "Mod4+m" = "exec ${pkgs.qpwgraph}/bin/qpwgraph -x /home/greg/sound/monitor.qpwgraph -m"; + "Mod4+b" = "exec ${pkgs.qpwgraph}/bin/qpwgraph -x /home/greg/sound/both.qpwgraph -m"; + + "${mod}+Shift+Return" = file_browser.path; }; modifier = "Mod1"; output = { @@ -61,10 +72,13 @@ in { kate kget krename - krusader + file_browser.pkg p7zip plocate rpm + qpwgraph + xorg.xev + xorg.xmodmap xxdiff ]; }); From 19e0eca73e7cd93fec1260e28262f5b6f1a8fc8a Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Tue, 27 Feb 2024 01:10:52 -0600 Subject: [PATCH 04/22] Fix new name for sway --- modules/nixos/sway.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/nixos/sway.nix b/modules/nixos/sway.nix index 7f92df9..221d037 100644 --- a/modules/nixos/sway.nix +++ b/modules/nixos/sway.nix @@ -29,7 +29,7 @@ in with lib; { banner = "Welcome to Greg's JUDE machine. Do I know you?"; wayland = true; }; - layout = "us"; + xkb.layout = "us"; }; }; From 590bc367c129b396d9155b4c6f3c3fce633fb0e1 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Tue, 27 Feb 2024 01:11:02 -0600 Subject: [PATCH 05/22] Set default configuration for Sway --- home/modules/sway.nix | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/home/modules/sway.nix b/home/modules/sway.nix index ceedf2f..dc3b6e7 100644 --- a/home/modules/sway.nix +++ b/home/modules/sway.nix @@ -6,6 +6,23 @@ let pkg = pkgs.krusader; path = "${pkgs.krusader}/bin/krusader"; }; + term = "${pkgs.alacritty}/bin/alacritty"; + msg = "${pkgs.sway}/bin/swaymsg"; + sleep = "${pkgs.coreutils}/bin/sleep"; + workstation1 = pkgs.writeScriptBin "workstation1" (builtins.concatStringsSep "\n" [ + "${msg} \"workspace 1 ; exec ${pkgs.firefox}/bin/firefox ; split horizontal ; exec ${pkgs.element-desktop}/bin/element-desktop \"" + "${sleep} 1" + "${msg} '[app_id=\"firefox\"]' move left" + "${msg} '[instance=\"element\"]' \"layout tabbed ; exec ${term} \"" + "${msg} '[app_id=\"firefox\"]' move left" + "${sleep} 0.3" + "${msg} '[app_id=\"Alacritty\" workspace=\"1\"]' move right" + "${msg} '[app_id=\"firefox\"]' resize grow width 300 px" + ]); + workstation2 = pkgs.writeScriptBin "workstation2" (builtins.concatStringsSep "\n" [ + "${sleep} 5" + "${msg} \"workspace 2 ; exec ${term} ; layout tabbed\"" + ]); in { options.greg.sway = lib.mkEnableOption "Enable Sway support and settings"; @@ -38,9 +55,10 @@ in { pos = "200 1920"; }; }; - terminal = "${pkgs.alacritty}/bin/alacritty"; + terminal = term; startup = [ - { command = "firefox"; } + { command = "${workstation1}/bin/workstation1"; } + { command = "${workstation2}/bin/workstation2"; } ]; }; extraOptions = [ From f0a9f4d24ccce3fcfdf895c630b8c02c1d431e5e Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Tue, 27 Feb 2024 17:14:28 +0000 Subject: [PATCH 06/22] Rekey matrix.age file --- secrets/matrix.age | 44 +++++++++++++++++++++++--------------------- 1 file changed, 23 insertions(+), 21 deletions(-) diff --git a/secrets/matrix.age b/secrets/matrix.age index 142d1f3..03c8f1a 100644 --- a/secrets/matrix.age +++ b/secrets/matrix.age @@ -1,22 +1,24 @@ age-encryption.org/v1 --> ssh-ed25519 mOmPfg naa6X0Zmc6UonWPsV+0o2T6r4NK9Is59nNKAhyQe6kQ -nIfC1xihuWrHJGqNvi7bx29/6iCCeqMn0IZizsn5Myk --> ssh-ed25519 YJiRbw 2O4ee3yE7oAyhFJo1rcYgl7XVfq4McSU7Aa7s2S7uCc -N6WIoeFMpDF5cqEUMnt4jEj3C+owEKaChSNpMBfGh/U --> ssh-ed25519 aY2AXA JSVBx7OiHFrbMfTgfiFutJwq148ox6B2CLtbqdY5vDQ -PrQN39VlkwZmWfVKRLo3GBXN7JVyPrWB3a26IEFekTk --> ssh-ed25519 Nl/5yA ICPSHRR9mCg+YlPwwUdDO5Gqnn1TDSegKFliy0fWXz0 -Bp2OeVMa+Q0tW8dlXqwvHNwNHeEuav9sAq/UHXkpjmw --> ssh-ed25519 GdLgCQ kR+4I6F7Q9z/B8g/p6xho0Bc5Woc07dFKGB3cfx5gDw -LqEeG4V+5s3cZJ/kziQcDnOtEwGC637gMdRpzqdykbc --> ssh-ed25519 tOH/HQ /tyTWEWWd3F9EUHhxkd25XYmMJCCf8ACireHna9Sc04 -V9KKPlU5YnmD0ZB8/9Pr1tZlCu4s08IWD66l1+WHpUk --> ssh-ed25519 FpzvfQ Pe8IUrRsPGnjGqD5EnDC7H0fAEcnvzgd3eohlFWlb0I -9D6b8Lqp4I5y4c2CyoPGRjy8gQ/6fFGVcDfF43XCY8s --> ssh-ed25519 kdPvzQ lXYEEJLoWLeYTB4uhsrRW1nfYLpcomtcJCxw5RiOkl0 -7gYwwv/boikbmci1lv5EvHC96prmhZRwfgwZL9lgeh0 --> iJG-grease UrVh*]>| -hy6sCBNQOTDvFWsybMwC5QvKOS+JzDztL6HaxA518v6MBjdSc7BXmyFYusRpOVGZ -xQ9aSPo ---- /hGH+HgUfiwlhKVI1LEn/+CcF2i8EYYN0Ip4ntouDuk -WIu+^,Z.yԢf*2i!#VLZ) 27QbB(>X/&)rx[ \ No newline at end of file +-> ssh-ed25519 mOmPfg 1DKp6nIVScuZkzb88Q14frSqKfiZKEv1rR3QIJEONRQ +Gj+IoxoMTAZn8rCX8qrqqWLSPPzky15CnJZelc266JE +-> ssh-ed25519 YJiRbw 4x7QLu0ziUPQhkMioZoe3R44rKE76+IiLVWbRFXqrnI +QQzkCPrwny5ENJPNvUveHUT/5SzTXxxLGPFCj/KOU2Q +-> ssh-ed25519 aY2AXA yJKbrGUYnrSESceNkSCSlu9gwdT5f0OrZ25u/Se/ABs +yMKUKdSPNSbWi0qv15DkLYHej0QUMLHvnuHKkRdO+x0 +-> ssh-ed25519 Nl/5yA 8HhCDnaZkjDmu45dsiEXOsEBOIz1sptIQ8XBsBHbLhw +bTOZAXft5L7zknVDUuWc3du2Wp98hFhpnLXgb/Fl4WU +-> ssh-ed25519 GdLgCQ n/dGa8GtrmO52ke5IzavX7nKgumNgcRWWWT2hDnX5iU +F83n4rkKXhF5ti5glpnPo9roNvhTxLqqy5DMiriLc2w +-> ssh-ed25519 tOH/HQ 2EyLLxU4SSWjHEyC8DIn/mofUrfzfwR4q7mdmxygBFM +iJVLBkrqPCwD/YJxbRQZumSr7eEfXlAsG/7xa+azXAo +-> ssh-ed25519 FpzvfQ KhvdHoKvhYBYZLe9qkrJzbIuBHyF2EtjSZtvVHQq61E +LHccYBJ5La45iIahP4HXhHJ4VzOqrolgkxjXRJCPWqo +-> ssh-ed25519 kdPvzQ 7b86oYaMjIpXKAKKsfyqgDJ9bxyxo2i9Au08omWBTm0 +2m7C5YyovPXyx2umEo21pn8Np/Jhg+U/qjBhTALaYHU +-> P-grease IW&6 +SjzM6l+nqvnQtxLNm/8uoHRhi1eVx/B4oyHyFmWnioaUoQsRM/ni9nB9r1A79K9O +c5AZWmIVOiAexzg6kw +--- 9rG38rTELXv2MctNMzMkbF5fk8ObgoImtFgfD/S0Qh4 +~_^y0V)[ak<6FsT>D +jLg-ED"[r,y7kZ +7Հ"x7Ir\6; \ No newline at end of file From 8f437ccb21fc637fe297d46b35faf03a3fe8014f Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Tue, 27 Feb 2024 18:47:24 +0000 Subject: [PATCH 07/22] Rekey all the things --- flake.lock | 72 ++++++++++---------- flake.nix | 5 +- secrets/3proxy.age | 39 +++++------ secrets/drone.age | 38 +++++------ secrets/gitlab/cert.age | Bin 2894 -> 2804 bytes secrets/gitlab/db.age | 38 +++++------ secrets/gitlab/docker-auth.age | 39 +++++------ secrets/gitlab/jws.age | 38 +++++------ secrets/gitlab/key.age | Bin 4347 -> 4254 bytes secrets/gitlab/myself-podman-runner-reg.age | Bin 1385 -> 1218 bytes secrets/gitlab/myself-qemu-runner-reg.age | Bin 1458 -> 1410 bytes secrets/gitlab/myself-shell-runner-reg.age | Bin 1130 -> 1068 bytes secrets/gitlab/myself-vbox-runner-reg.age | Bin 1521 -> 1364 bytes secrets/gitlab/otp.age | Bin 1199 -> 1039 bytes secrets/gitlab/secret.age | 39 +++++------ secrets/jude-forgejo-runner.age | 39 +++++------ secrets/linode-forgejo-runner.age | 41 +++++------ secrets/matrix.age | 42 ++++++------ secrets/nextcloudadmin.age | 38 +++++------ 19 files changed, 222 insertions(+), 246 deletions(-) diff --git a/flake.lock b/flake.lock index debc007..bc32b3f 100644 --- a/flake.lock +++ b/flake.lock @@ -4,14 +4,17 @@ "inputs": { "darwin": "darwin", "home-manager": "home-manager", - "nixpkgs": "nixpkgs" + "nixpkgs": [ + "nixunstable" + ], + "systems": "systems" }, "locked": { - "lastModified": 1701216516, - "narHash": "sha256-jKSeJn+7hZ1dZdiH1L+NWUGT2i/BGomKAJ54B9kT06Q=", + "lastModified": 1707830867, + "narHash": "sha256-PAdwm5QqdlwIqGrfzzvzZubM+FXtilekQ/FA0cI49/o=", "owner": "ryantm", "repo": "agenix", - "rev": "13ac9ac6d68b9a0896e3d43a082947233189e247", + "rev": "8cb01a0e717311680e0cbca06a76cbceba6f3ed6", "type": "github" }, "original": { @@ -28,11 +31,11 @@ ] }, "locked": { - "lastModified": 1673295039, - "narHash": "sha256-AsdYgE8/GPwcelGgrntlijMg4t3hLFJFCRF3tL5WVjA=", + "lastModified": 1700795494, + "narHash": "sha256-gzGLZSiOhf155FW7262kdHo2YDeugp3VuIFb4/GGng0=", "owner": "lnl7", "repo": "nix-darwin", - "rev": "87b9d090ad39b25b2400029c64825fc2a8868943", + "rev": "4b9b83d5a92e8c1fbfd8eb27eda375908c11ec4d", "type": "github" }, "original": { @@ -81,7 +84,7 @@ }, "flake-utils": { "inputs": { - "systems": "systems" + "systems": "systems_2" }, "locked": { "lastModified": 1694529238, @@ -99,7 +102,7 @@ }, "flake-utils_2": { "inputs": { - "systems": "systems_2" + "systems": "systems_3" }, "locked": { "lastModified": 1705309234, @@ -117,7 +120,7 @@ }, "flake-utils_3": { "inputs": { - "systems": "systems_3" + "systems": "systems_4" }, "locked": { "lastModified": 1689068808, @@ -135,7 +138,7 @@ }, "haumea": { "inputs": { - "nixpkgs": "nixpkgs_2" + "nixpkgs": "nixpkgs" }, "locked": { "lastModified": 1685133229, @@ -202,11 +205,11 @@ ] }, "locked": { - "lastModified": 1682203081, - "narHash": "sha256-kRL4ejWDhi0zph/FpebFYhzqlOBrk0Pl3dzGEKSAlEw=", + "lastModified": 1703113217, + "narHash": "sha256-7ulcXOk63TIT2lVDSExj7XzFx09LpdSAPtvgtM7yQPE=", "owner": "nix-community", "repo": "home-manager", - "rev": "32d3e39c491e2f91152c84f8ad8b003420eab0a1", + "rev": "3bfaacf46133c037bb356193bd2f1765d9dc82c1", "type": "github" }, "original": { @@ -297,7 +300,7 @@ "home-manager": "home-manager_2", "nix-flake-tests": "nix-flake-tests", "nixneovimplugins": "nixneovimplugins", - "nixpkgs": "nixpkgs_3", + "nixpkgs": "nixpkgs_2", "nmd": "nmd", "nmt": "nmt" }, @@ -342,22 +345,6 @@ } }, "nixpkgs": { - "locked": { - "lastModified": 1677676435, - "narHash": "sha256-6FxdcmQr5JeZqsQvfinIMr0XcTyTuR7EXX0H3ANShpQ=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "a08d6979dd7c82c4cef0dcc6ac45ab16051c1169", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_2": { "locked": { "lastModified": 1681001314, "narHash": "sha256-5sDnCLdrKZqxLPK4KA8+f4A3YKO/u6ElpMILvX0g72c=", @@ -372,7 +359,7 @@ "type": "github" } }, - "nixpkgs_3": { + "nixpkgs_2": { "locked": { "lastModified": 1705496572, "narHash": "sha256-rPIe9G5EBLXdBdn9ilGc0nq082lzQd0xGGe092R/5QE=", @@ -390,11 +377,11 @@ }, "nixstable": { "locked": { - "lastModified": 1705641746, - "narHash": "sha256-D6c2aH8HQbWc7ZWSV0BUpFpd94ImFyCP8jFIsKQ4Slg=", + "lastModified": 1708831307, + "narHash": "sha256-0iL/DuGjiUeck1zEaL+aIe2WvA3/cVhp/SlmTcOZXH4=", "owner": "nixos", "repo": "nixpkgs", - "rev": "d2003f2223cbb8cd95134e4a0541beea215c1073", + "rev": "5bf1cadb72ab4e77cb0b700dab76bcdaf88f706b", "type": "github" }, "original": { @@ -556,6 +543,21 @@ "type": "github" } }, + "systems_4": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, "wsl": { "inputs": { "flake-compat": "flake-compat", diff --git a/flake.nix b/flake.nix index 2e49c9b..019a845 100644 --- a/flake.nix +++ b/flake.nix @@ -5,7 +5,10 @@ description = "Greg's machines!"; inputs = { - agenix.url = "github:ryantm/agenix"; + agenix = { + url = "github:ryantm/agenix"; + inputs.nixpkgs.follows = "nixunstable"; + }; darwin = { url = "github:lnl7/nix-darwin/master"; inputs.nixpkgs.follows = "nixunstable"; diff --git a/secrets/3proxy.age b/secrets/3proxy.age index 1bd4ecf..173197d 100644 --- a/secrets/3proxy.age +++ b/secrets/3proxy.age @@ -1,22 +1,19 @@ age-encryption.org/v1 --> ssh-ed25519 mOmPfg GK3pWt/pGBmZBDxtz9p2yCE0r9mKZfw2nUBuz0C1Lj8 -Ng6yctVSNN2bDhVC7NxyJlrFHr72aM4nsFb5JrF+f4k --> ssh-ed25519 YJiRbw 5loX0JGTDoHEDiw+lQ7FHjDTYDHUp9RTpWPAFknUPHs -ICR+JwA34Uv+OWteN9x9QYyYg/rzvJSoTP2G4cPoiQo --> ssh-ed25519 aY2AXA vDhADJHQnXw+mCWqnwZ8c+nmMSzW6Lsp30Atn99CKR0 -LWHKqQkYnlClhlsIra39Z3LPCwhCgAHy6S4wAaCUKFs --> ssh-ed25519 Nl/5yA EdPvtg40BH8myVXONns0E2Nclv2jenX7uaBR1Ibw8CQ -oT04xxYo50xB4DaYbKRotAShX2pbSyeT00545+eEaWo --> ssh-ed25519 GdLgCQ QJCB33L9Aow2G32XyuK/Rx8G/Nq0x43bp+uPYZu2QzU -Bm5wykmKFn4RhHeNq2IRWobe0Kxm2UgoE0jJLwrzuMA --> ssh-ed25519 tOH/HQ j3hgRxHOgDUo+og3rRsimh1rKDYfsxI8glxhJpyw3is -/+xrS2iVbrRKd0WKclQz/gXDh5MQc+7u+L4lT1aj7VQ --> ssh-ed25519 FpzvfQ 4W3mHei1YzB8JYM8dCXh0YmyrbvJPfd6ng/6nqidHDw -UKneBBrT45XOPAaCA8vAIM2tguO+GDQlUyhA5XKytXo --> ssh-ed25519 kdPvzQ qxZe91vbHOrvi1OFK+V+t0ZIl5b2yjjLPVz+dLivVHw -Acen1YgVJJo5pW8prFn+U7jkBy6HES2iHIgKpNtQd5Y --> !-grease n q34 L4% -0iWB4nX4CflthHMz3/l+nmtQ/eCPbCDGw5P533vTxaKap9K2z+Yd2uMEdWw/uTnM -kWJtie4FxQ+jL5ApYdeUAFts6XnBGVUnbE8PsNjU19GPB0hjqiO/KEQ2 ---- Swg2l7QelpCAMMxAKWHQTGMHs+zxbm+RVXBIMfUWSqg -擊#ޱ.q"s_^fGd+/O)'c.1wAZrzr/) \ No newline at end of file +-> ssh-ed25519 mOmPfg gumFVDhQh1AGitpxIits9R6Vjm91ZizKG+FhDZjYRFM +wRzhgUUJp5RAA2teqQeowvZcTkycHPk22X006MPTfxE +-> ssh-ed25519 YJiRbw SQevbHb7VyGn6MMJs3IBhz0Rymy8b7OuP4Fj/rEYjSA +PeB0i8IId0RNILuW1g2RC08CVaACm+zCjQJkDR56qGs +-> ssh-ed25519 aY2AXA g997hboApB18f+r6j8FBCAgCg3nEa9vBdrFWQ83J6jc +ECAbekA5M5oM8J58X+ouEmLcKnfOqYF1a0/UX0YCNNM +-> ssh-ed25519 Nl/5yA unK0RFaggliR++d/9pyKsL6f2amxHdo2Gn65pKHgKCs +w/UX6dqejaqgrdVOTaRVMOyS4rwaNuc/5TbHed4TrhQ +-> ssh-ed25519 GdLgCQ Fe27fkX2BeHTGct/Pm2nLG10hl5c4tE4PA9Cwggj/g0 ++XK+8POGfNZQEQmRYC5lLIWRO5thPxTicM0onkpgGPQ +-> ssh-ed25519 tOH/HQ oIFm+9sttK0BInsCS+xS34DAdbDYbIBpsNmSVT+PUkk +u/4noQOR9wnR5dO1tqpRk7+wCVpwcRnwclg26TOzF4M +-> ssh-ed25519 FpzvfQ rPbTDyT5eg+n5qlmHvy2Zu9A/JLKTrBIIk0jwdeUdUI +F8D5VJIplhXcqfTzlUhk2GlwRkBmPIiOee980H0VJLM +-> ssh-ed25519 kdPvzQ ky3n+PXUHZOXiXNa4+MBaLmSMW6H2z/NBX+H9QHVKhE +wR2DfcF5CgOXBsbQxHKVcZLU+uo1Vt3berKpWoMo/FA +--- Zrbuy61RBb9S64+YAaGcXNn+i+v/qEkJjXRrDBBKEKY + eU|:rCv*~8[)VG @K ssh-ed25519 mOmPfg zbxL24+v+GwXjE6RnxO1HetUZRTgMPYhl4XIpr4uBio -SOWOXvkgQcS9lbCTD34qoQTfd6cfM3ImLp122HryeV8 --> ssh-ed25519 YJiRbw UBuxNngD0uF39xMt2o8E6xbe+hzJXCLgvR7sgxxyVFE -ZNH5Y7U2XtAoGN74RojIHK4cqhMKo6gUjqIvnQ4BFQ0 --> ssh-ed25519 aY2AXA xG0S3hoDMdM8LaEB3nXIQYwPrOmxMLd9X844zNRXGx4 -lCORshZVIAxbxNFLC5dHef57e+4qYRFaTb/kvpeNR+o --> ssh-ed25519 Nl/5yA jL9J2tU5n+pvh/sOwHmLZHuv4VNv8RLKbV1tGgdISyE -4pKqcJ7pHXNL8KXlMQs3iiA/ZMulpsl4uqX3bDBqAMI --> ssh-ed25519 GdLgCQ ypdeJ+3uGqcJbiHtvVrzye4enHZKosI2NC6Kj7Etjww -WlA9eaX2sE/s8zGtkoJT3Pxc/o0DPCe5DppyBSu/gJQ --> ssh-ed25519 tOH/HQ rc4VxBQqMed+H+KT3P8XlCMn6dGcw08G7MtKOcLGBQU -4aVKbAQ+ffb4WGNw88mMcndj1AV/8LPh7tV/DMpp42U --> ssh-ed25519 FpzvfQ Pj0kOpEdohxqBt7N/IsbvxtrpfA2ykFNV14yZ+jy5Sw -67Fd5u1nGJPOSo0EDbz/a0cuLrSCprNaMrlEJmY0jf8 --> ssh-ed25519 kdPvzQ JwvrS5pgnjYhUFYyc6i3ynViM+PXQnoShs/UqY25lAE -rnXbZ8Rwrwfq9OuBR0YCKZlQVq2Yp9T+vN/2atGPGyo --> sT@-)-grease (Rl{64q n -nzqh3H9Kftzt4WQkdGvPAFWVi/O9H1BUpywP//JxXtSn ---- asK33tfF2/Uih7HBjGxoPqEavxUf4Nkyfj0Fx2L9i3Y -oT S 2RܔiQzV} 3#kr#:q-fu$oo!.[j$d J;"BLkOJe%x+E]i]'t\bUB\r6#E8/QSv;>;{o'ڸ8mrmV'Cw\7?YS1xPlHGڇ \ No newline at end of file +-> ssh-ed25519 mOmPfg a/HBnYXJf5QIYG3Ae+zY1RC5h4hZAQxcSSdPaF6jnz4 +HQZL34u8+E90tDiibjl3s1u/r9kcJr1kgy4FfxpT0ak +-> ssh-ed25519 YJiRbw nR7/5rfzldmzxEoB4dsQ6xGq3X90/hwq5QyJujgXy1A +of3Eq1wxX38s1ppgFIh66GxLxCUmDAehQZW4CzFW7yE +-> ssh-ed25519 aY2AXA CIJoy+53jRKWolJFyrpd0XrmOI/QndZACi5+bCPIMgc +fxpujFwXP1Su6km60SSeVUFfjIZiCZcVuYUVI0loekU +-> ssh-ed25519 Nl/5yA OFps6JGLt5E8aRbMHV1BvkI8v8zrmdZif9CxvuEm42g +zKzYVCaMzQ7P4ifPTK4E/UQm7nDWNWjtdzotDDoUjMI +-> ssh-ed25519 GdLgCQ qdpCc0l3wbND8ssvO5xtKANEPPklhjU1Nc/Xi9LRc3I +inyYeeRtEyYeyPGPzfQb+OD/7HFKEX+4AID9C7Tngz8 +-> ssh-ed25519 tOH/HQ mp1M+TSqAKvWziITtnAGHU/Tse2otlJgZsax/QWAWzI +tY0lwlgkf+FvaGSfMYbXHSyAzwjYAhXKy0qj0b/MVfY +-> ssh-ed25519 FpzvfQ gsvn9fNoKrqZPLLsDB9esZQYHCbpJem1/yW8LPav3EE +jOQL8IVicRilon2+ixX0KZiJEvrz6Cw2A1ZqgRxwDlI +-> ssh-ed25519 kdPvzQ RSFeUTsui0eJN5u0UjCIDuNpztR5l6Ka+vpCmodA2W0 +SdCHx7fX1YomoT9Oi7zHPF8QhYnpyQBrpQCUmRov8jE +--- ME8bm1x1Kc5HMs1iXRk9hI5X+NjpErxfohb109i7F/M +T:ZUˀ)QXG;> Yzzj?>+R^XO%!@yiͫF L@*]12_ѓ57y((OME!/DYv4׾KPLq4~c"Ѷe~P3 lC \ No newline at end of file diff --git a/secrets/gitlab/cert.age b/secrets/gitlab/cert.age index 5f746a0eec887ca119950a5bbd3050a7febb1e18..b790fbc75a6bc7c34635e7fc8b3ac13e7b0161da 100644 GIT binary patch literal 2804 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 K`abz37W@zT=;NjU literal 2894 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 diff --git a/secrets/gitlab/db.age b/secrets/gitlab/db.age index ddadf66..d60ccc6 100644 --- a/secrets/gitlab/db.age +++ b/secrets/gitlab/db.age @@ -1,21 +1,19 @@ age-encryption.org/v1 --> ssh-ed25519 mOmPfg rO6ZgQ1fx0HyrrXjID9yWlB+F+7OmKXy73Hx2TflmAs -48jX2PYU3HZ5A4e6COG1iX4z+iyHT54op/6pwgLzdPA --> ssh-ed25519 YJiRbw l0vxtLrtMHRbTVm91M0JkaXOdUWhmbSo2KTw+1NQhQM -bfrVU1DXqEHHsC/WxWexGdXaarO94VoS/c05Xe3FQZU --> ssh-ed25519 aY2AXA ztbbZZgZCeb1dflXXuX9t337kosoEjuHOdqHHW7aKl4 -+h51ok6ReX8JNf9Mej4gEzWyCYQ3ex3Sej2ItLKKuaI --> ssh-ed25519 Nl/5yA 7yonsTK0Wzh0KMbsRiui8btzabQszKFzUoJxjZnVH0M -i2E/8nKX8vYY+CyxayQzT3mXrXuP5DesdAbHdXh80JA --> ssh-ed25519 GdLgCQ LufpIEDSbEn9syefFQOIwTa500EHr8tyWjFeKWm4/y4 -DuDAXT1wtKsIRL1W5o/O4DytCLuKzAR5zcTezM1Gp1g --> ssh-ed25519 tOH/HQ phvLcGJGTUenkx3VswZUs6Xc9G2G81pbom43HFoM/QI -bapMhUoEMv5/jCumAL54L2OT1Zg+hlaKqnKHg50QvGA --> ssh-ed25519 FpzvfQ 3PePdoAaUGl9Qq88XIyRs9obSUhe0QfHySS6vbptOXg -3tL0kYRwIqS+L66TUWP1LOf0eHBbvBPI5lrjpXj2/2g --> ssh-ed25519 kdPvzQ +Ibjaf78ClsJzG9oC3FJ1D3U4FLZTTbxFGnQH1Lqxl4 -/pRam0JQWd5yIMNxEz9yhSli0nweUTqzX6RFOnkXEpE --> 1Q='-C:-grease -92SOHBvWXi1ouiVRj18Bn9xoDNiL2g ---- Jg+OTJQi36S6rcx1Lj5/NLImTJmf077PmbKG8+zTA+o -T%KM_R R3EtipoP_罣$ 0F Qe6+ ayxsy'k8*\=sãQC \ No newline at end of file +-> ssh-ed25519 mOmPfg caaT+VREuqBSbCt7Nv+gAyZgcr6kITpslJjqUn4AoFQ +iOFZnm7shGu9q362G0KSUeJqfT3uunJ3VE1NQxihx5w +-> ssh-ed25519 YJiRbw Jnr26oIvPnKlU6qoWgG7o79CKzYeQ92vRkBeUFiD7j8 +JVG00d1wPYTB0SEhv/DR25pkJcK5KHbhtt0JtJ2fDh4 +-> ssh-ed25519 aY2AXA UzWTN6JGfaw96atZLsSnJAxyKq4cYyxeTKnBbeNTgD8 +WLR1F9yTZxZF67DXzWLqqulnWyVpSq5FGWv1kX4IC3I +-> ssh-ed25519 Nl/5yA l/JQbZH6JY0UNPk5YtLl6zwoIe627u68tSjxwt/N6Cg +BzpKvweac6lKB/YgGF0tUxEFzmJZSWqiD4XQ8ApPb2s +-> ssh-ed25519 GdLgCQ hlYrhTQUwaTx5YAFIf++QuqJL8dJjJJ4q2FN1glVBD4 +yFG60mKri3M7s1tUvVOv08XPeDIpKChiOmOCWCXxflo +-> ssh-ed25519 tOH/HQ QIGaHNqrVi81W549YNnYN5mfrM1Ci6hieVDYqU6cjzo +BdKS4IaE5lGHQv3I+m6K+HDM157YF2COE5ZC6d7XBm4 +-> ssh-ed25519 FpzvfQ X9ZUHxbN1JN2WTm9nip791WnP2yoLyFBKedvEeI1ihE +IdWZjOBQNFnv2FRlE/OIu15+wk8Pc/ac6d8NWEzFTkU +-> ssh-ed25519 kdPvzQ 9h1fd/Z4WWs3LUfZToK2VD97a04iXPWEX38mN7SQJTs +eioXC6/f9NVuUyJAUlbU18ARfQ9fSCetyl7sd8+2gH8 +--- mQK+grHzDNowE61Xip34q+sg7Y9dkX9b1vFP0N+nKtw +Sxg)b8"<p;v[${ܟτ elRv)¥aw\Y3e/f֘PaEcr/ٰ6I \ No newline at end of file diff --git a/secrets/gitlab/docker-auth.age b/secrets/gitlab/docker-auth.age index 38c1637..5438ee9 100644 --- a/secrets/gitlab/docker-auth.age +++ b/secrets/gitlab/docker-auth.age @@ -1,22 +1,19 @@ age-encryption.org/v1 --> ssh-ed25519 mOmPfg QXPxLsHDv2J5RH8+UjtFMQo4yFdaNfuV6yD1KAz1Rxc -2ll7H/WKCI47w4oPL+9nOaWguHfDEc5Q6AmBHduGurE --> ssh-ed25519 YJiRbw 8Ai1osukJoUNvAJ4zHGudZUxU/w9uiNdkSSjp8GTIGI -iHhF6rrDbB+PujlvHP2N5K4Zzc3R0jJ2851DJO/xx1g --> ssh-ed25519 aY2AXA oiNt/hR1iC8sgXvB712J+fWNbFux7+uMEA4BNbobsik -Al83/ckzsB+YS9s7PkrsQy171fzQTJdhdlR7TTIfnCU --> ssh-ed25519 Nl/5yA /LzefcwM2rezBx4wQmRXdKOkQpV1v0qcSonwY4C8FRI -w1irgyi4qfnumSE9bpaliYK0qjPh6gbufjJRVejjYwk --> ssh-ed25519 GdLgCQ FX20+pHJNuGQcVXjA87j440vhLi7qfcuvNPHg/pT2hA -G/yNOLdwZ7+4xf60kC75gQuxW0Y603D3DodXGlrRfY8 --> ssh-ed25519 tOH/HQ E9GVFDmP0GVJf78RkYae7TOl/An2V0kqvaC37yAz8mM -GI18IUsUWNk4dHqnrHAwpZSb5Kcz3Fp78y8lgO/29c4 --> ssh-ed25519 FpzvfQ Xzp8i9u4O8hmutU397Fe0n1pxlB17Glyaii9p3H0gRU -/ppiXFk8ulxHdT1GGak5gSAPa7hm1tZfsOAiZVLRCwg --> ssh-ed25519 kdPvzQ RolZ/ogYFdcY2beH/0N8pIr89JeKJpbplpULm8cDnGc -seuEqk/aubrxZ/+vFmW4VjtG7Mlbk6zbB9EWSyB6WZU --> !5/_-grease -aIxpVrzd/gX7Zj8bDUCFAQAcaK4Xhoc2+27wt6bpexkuRacFCd1gjvXJG2LfLaGA -FkpsQoAktFhm6AzHLPXDPOPAw2e5aHNEqQ ---- xlcSP0mtqnMV4OL8J1CK/Rq/OKDxZDphNXbNx/nuwbQ -rEg*ȂnS5:'n/[TNyHU8[ajֆTncIR9ڰ8COBʅ*BHTpE ֤Ep<2ͥ&vہ.q z<66p2N:_(% '9@C \ No newline at end of file +-> ssh-ed25519 mOmPfg o+i2oELghwEnsYN0//DougkC/3VAP6lVl0VYH7cELyQ +yL2FJ/MkSuJrB0J4iK1EVdG21RWc3M4NmVU8TncI7dw +-> ssh-ed25519 YJiRbw XojJl236Ed5WUnda48abwixlYyuaoQx9QzYiQNl8o30 +3PA6fnnWVHqTAmQtrYEE4KBcvGGjaPl6MwKIqoeNHTk +-> ssh-ed25519 aY2AXA lwiy/CDfOwsutQrEvE9+tbMiYMSmivICPE+P3CcDsic +wqZ+kQ659tMEKZXuNUuISjeWuFV4lTX9QNgUTtg28Hg +-> ssh-ed25519 Nl/5yA uzDbFGonniZv3yYPo8wVHhPM8xhCB72osiFF7qlkwQY +lsbg26Hru9WKvjN9DedhBdXzHczTv3FgBH9GqfvzfUo +-> ssh-ed25519 GdLgCQ IMBKcmHmJQSjemBjpRd8codzvji7CWWVymf94RnMAEo +YfwvLEz+hESvvevoYp9YW5GL2mg6ss1Sn83/nLHRhCE +-> ssh-ed25519 tOH/HQ K5bPrUnHPIjkCyZUnK36zrtSSBBRYaHKWIYDyW07v0M +AHSM8WuLySrHAhy7h2Vr1XU6r7O6xRdYPS8djxBys2s +-> ssh-ed25519 FpzvfQ WLZ2OiarCBQolnpS7dTkQhiZY9/P8CpZ1fHYm2nwAR4 +ettuJbEGuxXUqT9Kb7J89aw6TdtUckeLXItfANrg+T0 +-> ssh-ed25519 kdPvzQ G/pyPAn05PtGcAi8WCf/mbBAX1eOlABC3Wy4Md/X9yw +n8pWfPKC4DSPZiEJZ9ysZupIFyF5RMM+Dx5savwPcO8 +--- H/MbLtj0T3VfZhz+7LTPkp3SRuCDCR94KSW+8RThjtg +y^Y @o1 XN7Bԁd ]v{R b|&٫@*_NC̉<ҋ^~)Lƞ~nn=` DQ|2c}66C ssh-ed25519 mOmPfg i3txbBg4kys8cMeRiRehJSbfLhidIqsCyVIeNDgA3iI -nQzlncqSBf2Ov7pbUmjxRmzWPsgRrCMLdNbOA7815mw --> ssh-ed25519 YJiRbw hKFHmcJ/OpAX6sJcUZs/g/i4fS+08c9hjMxMsvJNfBc -Ni2EGHXBPTT1AkaNLi5vTnK5iD2j3W3jWDHmcCAhATk --> ssh-ed25519 aY2AXA hUyGC7tKrk/gb2RHboIsfmR2N9lqCbfrH9sCj6QoPEU -Zcx6hv9A/MTOzPUOHHDQN2EU+lPA6iMmIQe2ZpuNxpg --> ssh-ed25519 Nl/5yA w2alcZRWKvtVCgTU4gDE0dV8EbOnasWXRSHxLmG9Fwc -4E5nyu6kvsNlreebEDyMXdJWVG794ALu46DmbK5kyt4 --> ssh-ed25519 GdLgCQ yPWhFRh4u8HZrg8JGrwFELng3Fd8Mqdcs+6SZ+KIQjg -cbwe12qwFFX5WLfeEW8J4dFpfJHn03s5dTR0Kk2ADa0 --> ssh-ed25519 tOH/HQ AG+CKGCyKhhzsU0o4KK2lRvbmcfubzQ2f/wx/Ip1ojc -BQzVeyY8xPb762aWihrxNvRgH4NFWZitFLEsS6kTRUg --> ssh-ed25519 FpzvfQ /C44Mro81QRF4k8pHX0iQl2Y4Y/AguV5IDWCUydXpQ4 -QI17IQqzyx0t4Us2YdOghjUZ9vnFdnpryYwL/T0Njj0 --> ssh-ed25519 kdPvzQ /NkVwO2FouBiK5XEaq2Tnfac7XboO+sgqeUbT/EU70Q -HsIdyJSBVJCztDTwh/bE+iIqC6d5igIteLlemnUy79w --> "f+UjYRr-grease -vMyb24U ---- 3zwcLiZPsyoSxNlBP1M+Lx0g0OF6XnwL+QzCZj0yBTU -uV oc39s݀ŷ8Mx1&q ,FWӓ \'~jsjʚ4 :¿h!,# \ No newline at end of file +-> ssh-ed25519 mOmPfg +AQucM3UKlPSQEuMeLrSNxTaaQEy3/UK7tkVcRLSOjQ +IyuZ7uge2289rcvv6h2v2EpSuvWVh99efHtp/O6nOxA +-> ssh-ed25519 YJiRbw XvndQNeilAtp+1lz0qYYYggzvlTFU26JHJj7yR7yuzg +kyBVgxE3B+MQfMigDRWZxzc/RV8L54JWC7hW5fVoMIo +-> ssh-ed25519 aY2AXA Htvv8ViIkwOIkN1CGUklqqZDTNYVnYyMUikXYnomDCU +RfZKVRlh2Qar/m4IzjquC87FYp+bQ+wGsPVqOkmT8KM +-> ssh-ed25519 Nl/5yA ZomFN8WBHiFzwFoG4+kdPl7kV7hAS07drhXDfxyuFTI +xq2twoXHAai5RtyB6UQOOlpvWGvzLLNfgCBn+l9FACo +-> ssh-ed25519 GdLgCQ BjVso6KSvH1okq/Ucnjb7XocitOnr44Q12UnOpJoFAI +MfCjPTfLVB3r4h+2g9ifwMEIJCR8r0PCs0N2o9zE8lc +-> ssh-ed25519 tOH/HQ N4NTG8AKJlzXbPvSNGpJd3sCxCIyyj/YslQMRKAZ6Qc +FahZm0D8B5XkoQMUIOQNKMlSgqBpom93p3iQzfY4vv0 +-> ssh-ed25519 FpzvfQ IKtadkCB0HTyYGfRfMEjGsgmRy77eMMjnrghnSmy8EA +uiH9DBaZkUlaGXF36B039wnMeblcmBLgx5viyAKcRCs +-> ssh-ed25519 kdPvzQ spix5owlBRQMduXTXXZz5fXJcl8yUF0bPhOPAH3HrVE +dzoBsymQWkX1DwKQgU/RdWzi8wPI3RPrUZs+YsHMrwg +--- E/Wc/V1+eYPFRC+A+hnHRLfv9elXPWHNxQIzqHSo6ok +Ȁ6<.ֈMXESjDXtKoI87+gX\87M~A4"c_Bb \ No newline at end of file diff --git a/secrets/gitlab/key.age b/secrets/gitlab/key.age index a86267eaeb28c205415077da7c1658b730c01127..3af97f6b9c329f66618cd10865abb51992e9060a 100644 GIT binary patch delta 4192 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 YB($GK-1;?@XYi#Y8?|KmlGwKTKZW;oQUCw| literal 4347 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 PVJ5%CmVbYa2Q>a4GC;xy diff --git a/secrets/gitlab/myself-podman-runner-reg.age b/secrets/gitlab/myself-podman-runner-reg.age index 08f045391578e463444f25fce8386f44174fdc3d..71044e924dbf6e9e3155146264ce54d4101acb9d 100644 GIT binary patch literal 1218 zcmZ9~?aR~z003~1Fg%D7lAs>*K1feFAMbX%mmO-h-R`#C?)JXhZjY6_-QI4u?e4Z` zw+TtngQ7$wA@*Xg7)WnWWc83JLXaR8g(yVi8x%y~hq6Q}^Yi@$zb`+{G8PP9pQNM6 z3H&X=#LC5BX5rCn7}^U)zfdZH)vU*OtZ8K{x&c6m77QjB9Xm=35h!#B#zG;`cuOG| zsq76Ztxnu=Y4sADbFs*S{&)$o4Hs&QGJXlYW=(tF)fj|Yka1ak-Diak_)pl|hkq0%7+I*D2I zG|b>$UgL*#52=N`Uh^Z!>Wg)`Iq}6DZvu>=bOoCc9i@}wX0?bRa>Q-TRoQl*8d#x) z;}T~IZ4Vb308g5(8FR(m9b&188Bx;)!whpfj~(bLQV?Uxp<1p5Of-1R7h@hbbW}7F zyi(EYU@mFTYK_tE*yOS(l2&>MWCF30gCea{^#>i0B8R;iqmI~Ocf{t#PLFT)Bq;;t zt8O=iWq}tQoOI(7FXqU6kXRUk5Zp)ue7j6CAShz>S#aLs8CWkNAD770%v+08$&XvS-qup=uB{j=|E#(ih$~n8dDsg%Dh_f zJ(+U!%)-J#b~30tB~%S)G!&>MPc%DFBm~`&rTun{zyT?<`T)t?cl4{}wGVIq zG{fCh#)tHt<}zx3`OJeyg`ZDiuHK~1&%vu!>wf;D+||z;JD)pt VQeOPQM$i6p;P_+f?>w|0`5zN^vN-?% literal 1385 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 literal 1458 zcmZY8{g2ZG0LJlnrvxW2LIhu;WCDo?qdCFy>x4DyItF@y>*JDTid<%Woy@V z!{a!F5FmjFB49W}ln~wm67C2hcR>*p3=k257eqJ^kXHeDF+hm=>-iUa@_mwr$#9LF zm@ZdkH7AKvrE8W<|+1a;zN$0gqW|6)-+ycG;0oqMAv9aN3`cgE_z3ONH`i zh|zPl5)oBoUEvi`cKf_eQ`!i-dD2KZ>0oQ1O-T}EMn{?*x+BMIU=Q-`M8_`3R);FN-ZT{wZu?{mGu?!NG_+w$!e|D0=3|fDiB7&WH^-|74ivL zkr8D`$RsUxA(mF{WrzY{$mz_*RbSi-T2(PUSYv3rH{ms>c)*?X$SkJ&NLM&ZhlzA0 zR&mr443PAbu-j=5@tU{f7Hx_tTlOds!OPimF-elpsz;7HF+7aJG!$1EGRHCu!xeeh zQGo|*(V`Wsdd&fW_j9Z$d6Pi^@YiJ39py<#(`Ai{!2#0JBKz|eT%twXYeG=ahuU3Q zFXVB{ndqw0v9k9sf`=i1UpO|+K)1C)Hh7!R~YC?>1pg6yiQ zwBvtEs;!6>!OgUuuayM^5e+C@awW-P3xh^W`FH^I8Wx22=~IygqLP14M#}ANe*rc$~BG0%{fO&A`&26U~r0)Av&j% zQftvKX<$WQ45O88fs^rKk@DDZQ-PL?WGasaRZm>x^>7tz1Ck}MWUuAaunJqmA{249 z1u9qx9jp~tOsnB$nG>@<7IHXC7Ti-NSr$*JC|HA7PE2IVBIl3O&NOTT#f;NrrFk0D zt-4-N%AlB1TwE_w(TaqTSN?rWW22eXi%b9_Z74;EG1yL!ZDb;b5w&m%_XjO_Gp~iM z;b7ceMkQ14lfALKGuG5?%hD^>4P8I}5%20be0}3p=1|AzCfFP2KyKHd~7V+ysYO=|G?bdZ{OLts?oN!e&N*( zyXL0S`5oJy)o)pzSLgYSm#yp2^GB}ii99+!r#h;k_lG&_plQ?Iw8Lkbq_gB>aOB7n zmp(eOe_&zHkm|t0?62(MQ~1cE^H20$Y#K8D$NaJHpRI40xVyi*y|3O<_rcQ(6Whx3 z;Hxqo)@lZWTEajQCR&F4H8EHI=c3GY~Rm&u2El&8#v&|(+%L>mIC!t3Ro@t{Oo!K#|{+l|zGF4Dg$NHak zZFx-W9dltn@shad!Ro$Q2bS&?uJv3WE8GRwJU43CJ!)X_?WVegXI`HiiScU}edw6A WbHUq7UYYPD40NB%^>VgXH~#|+WH1Q; diff --git a/secrets/gitlab/myself-shell-runner-reg.age b/secrets/gitlab/myself-shell-runner-reg.age index 5f40ae9f391813b9263b148081d9c452d1bbadd7..c2e2c3de28fb0f2ac02f43437d23bb7a866c8af5 100644 GIT binary patch literal 1068 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 JefIrd{{faBTLu6C literal 1199 zcmZA0y9?uV0KjoP@!+!PAP#~Ma1bmtZJM^}fl8XBNt0jFykCo?Y2Iy<=AC%zBI4k7 zi*Psyf*=T@;O%mwliVx{;-I5K8OsmUKzSe9mR`x9nG6XP3vnf+SHGMD25M(ZF zdec2RQ3Qk;@6aic0%fiVP*v(&!PWVRaU}LKs?Q3w1%a;&1r;fTEt*2mk)4V1+wxj- zZIrMG*ki4^*XI_!C?laC@==}Pd2HZqn=kh20+-pXl=q8>Qf@fP$7}2gTIVzE_p)io@g9(smBmD+`^oP^^pml}7~f@q%4z%mIX?4A)5E zx+>RqJvz-f2M_~C$|Yfsury%QN-<}%v#o30aR{MPzF23J#m#C1n>llU%KF6=?NG*6 z-F_MZL~BL~#m4=PxYnv2i?A}hpi*5UsXZ@TEDjqIIK4(RTGt!X+|@n;c-i_V(o1w9{zFn<2$?OetQ0; i8xKFd^|txNkJC3F-M@MF#ao|jh^N1L0Dph)v;P3K!H|al diff --git a/secrets/gitlab/secret.age b/secrets/gitlab/secret.age index 8a3af70..1aaeed7 100644 --- a/secrets/gitlab/secret.age +++ b/secrets/gitlab/secret.age @@ -1,22 +1,19 @@ age-encryption.org/v1 --> ssh-ed25519 mOmPfg alVMwX3LTPV4G+6r8sJLERuhfMwCOx2H1KWDeK+x0BM -BGLALZmuxEhkALmc4k4nKmKpMG3tnNUG5ZEcg02TfYs --> ssh-ed25519 YJiRbw eQfyrNgt9BzOSvRhAxkSF7/jRYKO2V6mJYXLi08MzBQ -tND7GrNpJvKMdyCO/GDl60N/DV28/Bqj+ABeqFu/rzQ --> ssh-ed25519 aY2AXA kwEE/PjqR5ZcqDWA/4XSO4I6w3/UPRQ5o915mCliM0E -T2eTHl9OlZZpmKsAHMKq+OAMdh6RGEwpHN5LjYYk14Y --> ssh-ed25519 Nl/5yA LL4eKX65OYl4E5dDwFJh6YQsvqDvdQWlS6V+0aCsGF0 -WgzVk4uJD74aSbWpmYvrS/5XB7yRq+/cbdzMkGc/QwM --> ssh-ed25519 GdLgCQ TYLolMYjIGKxn8SZhZaKoXRDH62JPNkHJdRay6jAgHo -cf1lyY7B3zxYul/E34RURRH5tVyXGOePrPLGI5EoDPQ --> ssh-ed25519 tOH/HQ F0OuN5mx8dLMNnHog91hYHcPrX4AUjHQZ8W8OvMSH0Q -EQ8xoyJ6prBuM0MLdAVH5EuifeYTnhS/I83ORVOGAlM --> ssh-ed25519 FpzvfQ 9otTwhJLxkvAthUzUW26kI6YTrgTsX+LEmU/u+vN9TU -I/ES96SFUk3qKpHf7F5eQskoZszeKLCj2UrmYqAKE+k --> ssh-ed25519 kdPvzQ xwPHflv3uUfYh3IBB53iGuzu8lxzHl9KqKAlEli7JjU -adJoFwW0LJPSD9NIUxnQ2tww8q3IdZ/VVPtZGNQkCcM --> t^-grease >nLc 7;r - -2SRpXFQuowUucRkj0CCGEfLdC4jkmlczWKhUEHQXbCkXeGDqkZ76P3iRv5pR2RTr -UMBsSpgw ---- Li2EZT53n0yvyijOReHtPEeKdr/G5tgxNiWSHOEc+DU -0=TCuQ1uւH#Zb)٢ . Fڻ85^4+]1Vx">>XǒOlͅIH_gk2IK \ No newline at end of file +-> ssh-ed25519 mOmPfg 1S+O/4h+KtXv/KT7jumzZjbVRjI5fWWP9s2qpYWNNiM +rI4PYkwXE2nLWAxxjREBswKb9N/ZmU26D91XtmcL1gQ +-> ssh-ed25519 YJiRbw aXG0M0Nfa0zt01LpXqynqrxbbTT8AlyZYrNKVOPHhXA +mWE7ed0KNPcE7ZR1r1KdBAxHM29F46GxwFw7w0R9awA +-> ssh-ed25519 aY2AXA iC9GKmK60/1kHYZyN3DoILqsvPZUDWY5F31kTefOc34 +gdkASIQcUvogORDIhHdT/wo+0jP53VIqeYCRzPmAU8o +-> ssh-ed25519 Nl/5yA gG0I+WlVA1jfcQ+WlrgzlfpsvxzOOLr280Fx9s+sNRw +9Vlh1tJ2ucjXEzFKjamj7/tDGsBrg5+VYdYHhX8GPio +-> ssh-ed25519 GdLgCQ Pf9rjnx2w6QZJ+sA1pOD090ODdVBLjDbWD573CZTj3U +WFPlHf7MVKLAC4zyggvr2yqbMYq5LBsO1nW2/eT/2fA +-> ssh-ed25519 tOH/HQ j61wyz9nJqfXtw9q+XhqJI7XLGjwO1ecWDXYvpzxlzM +5y/197ptsDvrSFlaRtb9KbEDp9FKN3y1ggNTo0LZGss +-> ssh-ed25519 FpzvfQ QA3+JlcexQQCzy60UqJ12n5WrgXj6/raiYvezsftDUQ +4hzapxkfBUgtSy8jv8xaH8qO6c5/U8hSfgsOWTCXtqY +-> ssh-ed25519 kdPvzQ lTiMAWCoQ7wSNSWTzJ7wgt/SPXcq7rTHli3cZKEH3zI +IqnTB97pG06TE/H7EelI7lRejDDmeeNAmlcA3iXcmsw +--- dMfqSq2yC7lsn66dsfNVyhcIlYeKMvsc+asI5Olvz7k +>~5蠻(IOܴSvztt؛EߡB]t5 mgM({]ՒKqdA"N,Ba'4S5 \ No newline at end of file diff --git a/secrets/jude-forgejo-runner.age b/secrets/jude-forgejo-runner.age index 2cba722..2460e84 100644 --- a/secrets/jude-forgejo-runner.age +++ b/secrets/jude-forgejo-runner.age @@ -1,22 +1,19 @@ age-encryption.org/v1 --> ssh-ed25519 mOmPfg SvoyePmHEM5S1jcMnSKlyn6VIhtpNmo8U5FLMQEqLkY -kb+6T/x8Su4ChxlxFmzIBONZP9O+OynZaUszoMtRi4o --> ssh-ed25519 YJiRbw Lypda+39VpPTk3RIE6/tTW5xHaz5fV3kgYco/9fhZTE -ZTWUKH2KcJg92DUAnPm7F+oJO3bzAf9i9WAoKRbLawI --> ssh-ed25519 aY2AXA zj4umVz81BVUTlisgY9TUiaKMqo+MUqjXB0feq55pQs -kG8cVYhW+dQpu9SuPQ2At6uZs74X+fuizSMLcAY6XxM --> ssh-ed25519 Nl/5yA 45REm8ToI5/X0zqq/2UGQtN5Pt+H4kAgk9L5Fr0oJ2g -4ufpVW2Id3SEXf5/mitmCDe2p0rpr+CDH/baUi+H/VU --> ssh-ed25519 GdLgCQ zk6WHFIPbeckBRfAAZSlpwSxYrZGA9pm8a17niYog3o -UVdJYx0XoLY02/rwBtBZt/3Gv1ag4nHtOPGqC4FN688 --> ssh-ed25519 tOH/HQ IlkfUx++5GYUsvguEJx5O+2/neLHuYz1pqtkUzxU0C8 -cveY90ehDlzyRaJ3BC51vjeUGt9SVovLCl5cvGr4woc --> ssh-ed25519 FpzvfQ xyYX67TIvE/3vaZ7l6Z9kPzLcx5kq7/QuJvk3efvrVs -qNv6268mxxS5vf0pttwV33ZQSb9iyAeD8GbizCS8/Cg --> ssh-ed25519 kdPvzQ LK99udJQoIsRpbCvK4vU+36rVdFOWyEkmKoqERZ+MT4 -8odn2hQrlnEhB1nSQ/m+cakRt1WOnvve8gQRXhFWmb8 --> #Y\jh4z2-grease z.^0&} z -4bvzwQHJLGP5UHJ3Vn1ynJ9QDAMYuYSTRGrwh87ojRgvU2dTWCH2aPVTZzzlrJNW -KJt8DGZdpsdgBBfxoea6R3QG0SdCXwfdaTpdPl95nusJ9XiwULXUZu4YNUQ ---- HLmADQL0JyjOHt+2MQFil13NbkZMfOz7A+oJyG826Kw -&U>ʥiW%ri,[Z[p`"Y=5ƟO(K`6LV;lp; \ No newline at end of file +-> ssh-ed25519 mOmPfg K6Tqt2eXhT43F169JniKrDrYRVCKCrFA6Z7w7zMmtWc +s8JOykA0uHzGQUjmVKD4Mfa12D3o8ULmGHclIoIJxx0 +-> ssh-ed25519 YJiRbw 5BBlKKWqAXGzRyVkpRnCqETAGrJ5hN/QAuNYtQBoL2I +vEZX6Ly4xRLBEzTeS6m8N91tXFb5CUyUjo3ZHVrcU+4 +-> ssh-ed25519 aY2AXA 1zkBmsRv5e9JtzBDbupGH0fFXLoHyV3+lN7KKHT5ijI +bDzhYIt1U0p6skGCoLwgieyqws4mpUY4R82OUGKOKlQ +-> ssh-ed25519 Nl/5yA vE5TG6Lxl56NcifIv50jKOOXxjHyTZSic/BqldWfGFY +ouAh0pn+/SbI3BCxwV3b31+yiYVWTP6Mb8jlYdC5yDk +-> ssh-ed25519 GdLgCQ 0x4oqqbxZfIJG1x2zGucs/LHEDGJR6F6aon6Skt2rBI +/YDY532syqyPZRws7OivDoothd5J0J7kxosE2YSBIaU +-> ssh-ed25519 tOH/HQ ZzryJKit7FlTZ0Lom9kZArMjy1wjDhdcwXqvaDVmRlk +yrY97YDIw6Gy6fbZlwxsQFzq52eOGYmKmAb8hpMUUZ0 +-> ssh-ed25519 FpzvfQ GBGhluq7QukQduAaYUHlyua1/M2M/8aKHYSktaBsQg8 +JqdcuHL3TEf4MX8w4E5QbaY4RMA7c24TeW9DPBKNLWE +-> ssh-ed25519 kdPvzQ aipm0h38UMXmzDWjeobjZ5sG8M+0NY+ElTE/6EuYSFA +SCzcV4uPZHo//PqwXrDDYXhKKeL11E2+U06stMt656Q +--- xfMwYC7pLM2TBldwQ+BOTQP7Z5l8p7GnphyeWhWORjo +t ssh-ed25519 mOmPfg IbtFHDNhMmHVYQd5bxaOxyrXM6duqf1mto/20Fr2KjY -zxEKsc3JdmgnYzqhx+bmu6FlbM+zwzhGr8SSHDhtGZc --> ssh-ed25519 YJiRbw 0DgAhMKCI7oB9tLdtLxGPJD2kOTHu4jyoZr3045Yk3Q -x/SL/H5fiKPHhyxD/FGrUDXnn9Dy87GNLJ7KopS/lBQ --> ssh-ed25519 aY2AXA zNwtcPrg8/YgjmownWeBrbr8lJKksrTP82qF8SeOsh8 -Bk8z/KD2JudW+H/tp7JpNeDEo8SzDXw9WRX08Apk7oM --> ssh-ed25519 Nl/5yA DAWd8zGAVNt44vkqTLIjxk5JteF5W0Xih1DoP5cLcTE -VK8nZt314ZwkiKb3cQ+cPiA1TWKkO5G4VbIQ2jxlRnY --> ssh-ed25519 GdLgCQ 9Yy9wHRb4+eylz/ODQEO4Waa2v8ZMyP4Kff24Ut+BEk -P4ixrmozQlqXWNdoq9IbD0ASBtTzZusWMfbIrsr2/J0 --> ssh-ed25519 tOH/HQ 5dipLCGs2k+b9IL42ax53ME0qNED7rfK/lE7SRFWT3o -f3kOHRbhyNZO+/KlFnbiftNGEVkM9/jbabtMNMxVLgA --> ssh-ed25519 FpzvfQ amxqAikEUbGQQ2HL9KJDTAqGtMqytJBxusXtR1AeTXc -r4BYpg96kjrKZmXspTeBPoq4QWoJZPVWH7ZbMe0rV2A --> ssh-ed25519 kdPvzQ oiVMovExGwoncudcvPdCx6w3zkrzPbQT4a0rac+yWH4 -nsrZTq3sPIx8xR7Gr7cABB17T/YnVGKpmMkVCTC7Ahs --> ssh-ed25519 mOmPfg 2G5NU0YqTsV1tEd6OEPQq5Mz47zxOhyl+N40AQFWGUg +9HICW3CX8Zu72b70AJ0DLU0UZdARGzjgiuGtO7tuMyE +-> ssh-ed25519 YJiRbw Nhj7z919U4Zua3KqD69z43Gl8D/UlcbO/Ka/prqC3nE +BYGMIuheJ/M/jAuENAkhpT17QeFMNwvh62atAMVTzmQ +-> ssh-ed25519 aY2AXA 1K8CdLdKOkqtbLzbQ59K4Ian4oI0aBLWA2gt2b65ZQ8 +LaZfOk9friVrPyFgDnuKPwVV07Q39mhseK2MIY3Q21Q +-> ssh-ed25519 Nl/5yA ZmaGiys35vAP0S9RXwnP2Rs6LDsGrxXkVkER4lA7jgI +WbV3Yem3gcnH/6kP4TE/uJKj4046xzbKYNGXGB7Lw+E +-> ssh-ed25519 GdLgCQ lT07BOROuNbkmgyFGStm4mWQqPVYZHww+kAXQJEAwwg +enfauL3YtQIZ8nQEUi1jkqr+kzk4mA1tWdW+PfTl5OQ +-> ssh-ed25519 tOH/HQ 9qKXwlbH67xrNWhr5WuxgJ3i+M9jyT50sWc2fdSEmy8 +xOVZUX/Z3PZK9uVKyaK++g2oc2MMaN0uVReAPh0naEs +-> ssh-ed25519 FpzvfQ /Kx8WrMw4jG+ufzDBKgQgDQZick+WxGOTBlaK2jOdAw +Fsa+SzNcgnxQR9hZXR7l+gAQxY/c1wZH9Ftz8aF392k +-> ssh-ed25519 kdPvzQ PWfMYf9DSnxhYXnEf4kEQ9Z4zZJmzwC0hmsz2c4fWFc +FMq/kfEv8AXxvFUKQ2WktsW8Kc4ehHMr407+xjwr/rU +--- hMLIVir6WZ+pyg6DfbwOrFAu6go5X/r5ba5T8GNJcI8 +df->֚yG_~N˽K۷<Ƃh IJDkMsRJAܢN+SL.ኸ \ No newline at end of file diff --git a/secrets/matrix.age b/secrets/matrix.age index 03c8f1a..b4ff4c2 100644 --- a/secrets/matrix.age +++ b/secrets/matrix.age @@ -1,24 +1,20 @@ age-encryption.org/v1 --> ssh-ed25519 mOmPfg 1DKp6nIVScuZkzb88Q14frSqKfiZKEv1rR3QIJEONRQ -Gj+IoxoMTAZn8rCX8qrqqWLSPPzky15CnJZelc266JE --> ssh-ed25519 YJiRbw 4x7QLu0ziUPQhkMioZoe3R44rKE76+IiLVWbRFXqrnI -QQzkCPrwny5ENJPNvUveHUT/5SzTXxxLGPFCj/KOU2Q --> ssh-ed25519 aY2AXA yJKbrGUYnrSESceNkSCSlu9gwdT5f0OrZ25u/Se/ABs -yMKUKdSPNSbWi0qv15DkLYHej0QUMLHvnuHKkRdO+x0 --> ssh-ed25519 Nl/5yA 8HhCDnaZkjDmu45dsiEXOsEBOIz1sptIQ8XBsBHbLhw -bTOZAXft5L7zknVDUuWc3du2Wp98hFhpnLXgb/Fl4WU --> ssh-ed25519 GdLgCQ n/dGa8GtrmO52ke5IzavX7nKgumNgcRWWWT2hDnX5iU -F83n4rkKXhF5ti5glpnPo9roNvhTxLqqy5DMiriLc2w --> ssh-ed25519 tOH/HQ 2EyLLxU4SSWjHEyC8DIn/mofUrfzfwR4q7mdmxygBFM -iJVLBkrqPCwD/YJxbRQZumSr7eEfXlAsG/7xa+azXAo --> ssh-ed25519 FpzvfQ KhvdHoKvhYBYZLe9qkrJzbIuBHyF2EtjSZtvVHQq61E -LHccYBJ5La45iIahP4HXhHJ4VzOqrolgkxjXRJCPWqo --> ssh-ed25519 kdPvzQ 7b86oYaMjIpXKAKKsfyqgDJ9bxyxo2i9Au08omWBTm0 -2m7C5YyovPXyx2umEo21pn8Np/Jhg+U/qjBhTALaYHU --> P-grease IW&6 -SjzM6l+nqvnQtxLNm/8uoHRhi1eVx/B4oyHyFmWnioaUoQsRM/ni9nB9r1A79K9O -c5AZWmIVOiAexzg6kw ---- 9rG38rTELXv2MctNMzMkbF5fk8ObgoImtFgfD/S0Qh4 -~_^y0V)[ak<6FsT>D -jLg-ED"[r,y7kZ -7Հ"x7Ir\6; \ No newline at end of file +-> ssh-ed25519 mOmPfg yOULBTP94sJiyma4Yzp5SCIbEKdFkJEPi962XZA7CFA +QsdyfwKgX95rxlZhYmKe8UxgHPpLtX3C1nBF+649Wfo +-> ssh-ed25519 YJiRbw XZ2AJPQz+v1D4DBzUMOIXr07lrn6hQsWYQW+8AzwBko +VLTi/f9VnRPI48DBny3GLhD9XQsbAYCbaf2ZB2s19EM +-> ssh-ed25519 aY2AXA JBoYNE5DIAxi2NED/jo3raVTy7WBvRS4nqAOBF8UJgM +88VW3KGO6WoZEwqen6pDX8gBlOe2z8Jxo6Je1mKpB8w +-> ssh-ed25519 Nl/5yA fsU86ATOCufWpDqEQJ70rEe9ztsRCyfQDC9vg4/hFmI +eYy38nXMFe0oBkBUjsiHqJxujkXIB2VH1FQRviTfLuM +-> ssh-ed25519 GdLgCQ BLCsfZiE9uoOyTXYCLrrTxM5uyPpC/oPxjn4ciiauWE +3VzsAVb8M47sUq8m/CeCx3CYPyDzo7mfD3GuwMRU9BY +-> ssh-ed25519 tOH/HQ lTW1co7HylJEEY6eNl+iniuAe1N4/kCYlPkGuniNnCA +WW5Nz1F+mRTNWoaSMqTNlGbZOzLLfh3PrXX6tahuS08 +-> ssh-ed25519 FpzvfQ tYSQ6Ipm0Lk5c4/A9H3LJ+ZaHvKMTuL84RbfKaGI/BU +fJGJRDlceoPy+FDeGlCIvQj/t4HScGTEYAQ31zPIvy8 +-> ssh-ed25519 kdPvzQ ZfEHG6OphdhbAtDPZ7bY0mfsTheaCkCrGdFsXdw5izM +KucJj2PM4AQSAN8z5dtMQ3lNxQrzoX/ru7cfjZxS+mg +--- UZ6cw1upnDZDSEI2N0Afj09MhFajhKqUhn9DeZxXspg +Sg0@ +۟mUht/f(]7#KH-gx{Sq ssh-ed25519 mOmPfg xBjH7pAuWH2cPGW+xw3UDkIbhv6KxSVrKhqH1KMUQiw -ToQhtetm748ZL0mwYUY0ZlvbQ2ZIg8wGPdxDtJ2SJrQ --> ssh-ed25519 YJiRbw VU9iO5HWdUyTdJDs96aSsq3LBrME7wyYo4HpNlyYhiE -jCstue9cpoXEpOckMJRWoMpl9LN85Qp5pfLPEO9mj88 --> ssh-ed25519 aY2AXA qkBILo+nhOwl6gp7wgxJ2Jlt0nMthYHw43PDCA2lI0o -KQhTxEpP0UQ6mvsfTDm18OTsGnCRbeTH3CVqVVt4JLU --> ssh-ed25519 Nl/5yA jN3QgulFHW8I5SIILlje7tqXui9+A+FIDdapnMWkxWs -1GiFm0zXWfsInAUGwlutxLLj5QTyrwpP0xp+uZgq9Fs --> ssh-ed25519 GdLgCQ wjlz7QwkBOSApRi0+x4p3fWkN+eiHjqR+f9U5TEn3Tc -tzsvSMEgIxSJ5R2+arIYAXVCzQn00JGIWkKvT7YQTGc --> ssh-ed25519 tOH/HQ stZ71enleNWbL+BTF8GZurEkU0KmfUR3DlbIKz0ZqSM -MTjePANxpKdMlxkvBVP1jXNUbO186iMrmavSz8ibYG0 --> ssh-ed25519 FpzvfQ /eYN+NQ6Z/FBH5CoRUFUUIl1iazpk9Gw9Ui2W87RvXk -7v/Mx4RTPoH7kSC7OaGPANHBrMKfcGXjeSY3+3f6g9U --> ssh-ed25519 kdPvzQ vmcZdQY0Pw9d0PiBqCsrU8AXRCgMXrzPK5PAElBMg1s -Ps8gaU3AkWb95ZZRWfvxw94iTLsjoGv70vEieOm+Fbo --> d-grease sEDC jLi\%B (%U`d -d+Fy4R3mmj1J4b/dh6WM1Mk ---- lxFQMjbak9fSBSaxyD3R6exub/x+2y/eJeotB43/YVk -5$mn 8a"ꢘa-=V/ZL \ No newline at end of file +-> ssh-ed25519 mOmPfg Fti3/hZ2LNZTtHDt44QQKVG8KtI1ew6UcRnGdCGpZTg +wMOhWTHd2BfzIetxNrU0KdrSn6b8JKBtxGxoykJIolA +-> ssh-ed25519 YJiRbw PZ6i/cik5zD2Q304YDTjQJ1v37tTng8TgPbU40Gw5j4 +NAU+9KnxeTn4UXiZtXQYCZfW104crGpCS0Nd08aUu48 +-> ssh-ed25519 aY2AXA X9YU1qT6v3jh3CUiHXCA/TWCNRN/mx+BWbpK4z7pGAk +N0pRGVfX37pzi+3GX4okj1b5QA8Y+Y3bErUJekTBYYc +-> ssh-ed25519 Nl/5yA fSQ1Ip11xRvPjvjFr6O9SGFi/8Hd5hYZ84Eao0v9YmM +NpWf40Pyjl6NaEhG7wtalnF8eSKzd+XFMwB8IYpBfwo +-> ssh-ed25519 GdLgCQ X39sru2i8g7oTAiVXhg9urlMMAPC4WZcZ4ipjzFGxR4 +gfQBzREuupeNwyD7XtCEUCSoRbAvd8bwyRLomKAk6rg +-> ssh-ed25519 tOH/HQ jGh7wljbo4AnxEAs+vufic3j6Y+57Z0qLq5ZOS0YfEA +OeuNT4JxkoBX0XmewlxaPeuUgKGgf/BJlppl4CuFGwk +-> ssh-ed25519 FpzvfQ yB453fvNrlmZQydBS42OTtGapAZwCyjgsLmze5Rrhk4 +vI2jeR6Pl17k+EUo67sVIhXpqu1C0fNo8vtReMu3/A0 +-> ssh-ed25519 kdPvzQ njpxHD3aNvKyDIM0sRKD5A3/Iplg5U5FTlk9yYtFdjE +HukoZ4nrNohTKfua4kCLGZOUwXSUmSqQvMUJUpTaz6Q +--- z1qWoUGQYj6xHAOpXiQpEC9ImwqLXkjYRRYFx/WnxJU +3w 4랤CS~>7T0a&l/lmp]} \ No newline at end of file From 61e49cbac5227a4a706f899dd0aced5dea1069ca Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Tue, 27 Feb 2024 18:58:31 +0000 Subject: [PATCH 08/22] Fix dendrite file --- secrets/dendrite.age | Bin 2375 -> 1050 bytes secrets/secrets.nix | 1 + 2 files changed, 1 insertion(+) diff --git a/secrets/dendrite.age b/secrets/dendrite.age index da13b0ec4edc04b5f4531a6bc774684432afa139..7c97855c2059fabf0565bc3b60746ce616510d4a 100644 GIT binary patch literal 1050 zcmZY7y{qeV0LF1aM2&;Xfx9?F7lqK9mnKaLBBpJcq)C(f(llv02zgJN*EYWBOkzs5p9_>3)7+Jb_fL9Z3S#tuTklT^z3wJfBOSlA3O-Uy1_K2BlG3Ya_9;Z0o;uD+I7d^xI>s82? z%RKbX#1h##Q%u~~mu{;RB!6i&p)3~Qvb1PI!17Yp+*sb?0Z{b+y<}cr+8Ce=oDt_W zt8SDb*h*}ol~PHHl&sR^G~ve1jI*oNnPfrFBh}P}i&Tg035o}3rHntB+oM=yJ7uN> zb%l9JixW(VU%0z%S!lEufSwdqE~{iav^CZsEF8!)y>odx$I~aR5Qx13HFIqa#Wk`| z!Cb_7?|k9M(TV{^oRKayN@AxIiz;Cz;*uy$X1dw0k-=bqg3aM_rr7w&vQ;@YDbu7< zO@OmgdDv7{UN4O!F9e0S|1y{qSLuYZP9=e^&1_p^UK zxc}hsUxZBGd=$U_!^7hj@83N2eE8BUkNihx`0X|K>xcioeD6)}_S0X4cfNV%>A(NH bT7CTGvtRwjUA=buN%hms+xH$+pMU)yamHWD literal 2375 zcmYk-IqUog9mjDzU?HervxQsuM{os)-)53buEr(zIXNdM2E$>hEUwy+T_76dyx zL3{$Tk6=L?yG2}^1;IuwMAl9bf7|&OzVGkr6BXG@_DIH~pR4ZiUN;ut3IQ)acr#7q z%Q!`El*u}sH^738$!b$cE6!u<&@Bb2#s<>2wjCU-wL+xG&UdDz17Aj3UqKXOX4#q( zS+r%(Q5FN}xev^{e!tuV(}pKU#N6HxD-fv~7-w@ZeTNPhZUSf5=DtGOs9)==x%oDz=C?8i zJg1xt%eji7E<;T`NPVc_T=!T(5*n!vBm%rrONv%RggSK}`*InB_B#`PWV=Uk-G?u1m28lQk;5CD1s?POM1Pee2i)Pc= z(?&;WoR?!ZAaNMyD0?d= zp@l4NKR@zNBZy$}X=Uf7dBe-7koy2+Aw52aDAaMK8A+^j_&WeG&ztUa2j9-OboA3) zd_2W?ps;yd1oBbC_Ky2mP&hNUbdjP$$K9^f%FRe93S@WzB)@11G2Df8Eg^_gd_7j;CC0fNu}@*5ohI|D9D7t zslKt}a5_mjcx-t{D1%2HidNhd7W{$Us zJjh27^a-uSWfdUcx!<0Rf0s`XphS_zJQ&5=#0Y*GF@rs3wQ^A2*R*@r^yHe%Wz$aX z&0rtQEjX(4(KbhQ%IMy^_9c+Vh>}C}V}%9w%IOezhF4#D;B62)7idi3iNzf#7EHyE zF3)T;UC-B3c3>$vyxeX&&>D|LK;m&JM{`CgQJe(nsKV>DzCds&rVR;Mg4q+AbMZ-g z7%$S)$({*LKD8{=m;;$O@Og=+gVNSv+S{(j8*z8rsD@8%hlTUfo)Q+ejCFl1&gAti zVK*`}8nbmYTDAl19%eSKrRXUHN4GyR+dsA|6>9TH=Jzs+El2H)uCEyqw;FI+VAlc< z8!Og>52iu{ra{6t8pT&D+s0uPCV{ax5wG^!fQP+^$!BQy8@F9b0`=(cOo>YRULICIwccdliIfS-* z9H@flJwyS~yW~MsgZoO1Qw?fc$^-J+#+qL?DD$T*JQ!ufvn>bi>HLg|gi!n5jCIu> zuMPSfYlli3^g_{%bt1L3;ta>j<-|f3_g@*!ffpdP1!^R<8i{K2)l^T)v zd#g)nPIhCtwJoQPYcsLLvNil$BG1?879#CIgMm~U6b@t$T+9f~N-<6$AbWI|L!exk zm)H5Y^$W5yc%f}4p@v)q-XP=RUoP%7Ja(cd(2Fku;=KWbmEX8re%(HS;;)^{1gMIq zZUL$NGP0uEW5Z$O{UcW)N*>!|#2RRX(gaIj6(HCVu8bINud^{Fr%F{;r!isjva6b| z64PSubIcirYL{#oopi9+6D*Vx2{gtbxQhUGxK6^iZ5ek8Vx5gI-bj8~uvRt&7AtDUCJOK6po->+`a<9N99tjQFU6Qe zQ}#w(-XCrF%?(F?)W7-R{qhEd>Gy)~dM6;MBnPEk=eo%_(mxEXEcv*e1QqM)0=9(3 zp<_XAmo5R*FvMyTN>>tm@OT2G5IH^Bbudtds) z$KogTx8MHG*FOe7Yk&K<_u2L@-~9a#oPYlqeEIK(!be|z=Qm(F(Ep;}BGz}m{*&@Q zpZ@dHZ~gFV+VryzhR@$+{_*+mygxf{zxDk4FF*bMumAY-uL!^T-sfNaDfHnxA5nk$ K Date: Tue, 27 Feb 2024 20:42:05 +0000 Subject: [PATCH 09/22] Add dendrite key --- secrets/dendrite_key.age | Bin 0 -> 1119 bytes secrets/secrets.nix | 1 + 2 files changed, 1 insertion(+) create mode 100644 secrets/dendrite_key.age diff --git a/secrets/dendrite_key.age b/secrets/dendrite_key.age new file mode 100644 index 0000000000000000000000000000000000000000..56927c2c5716f7601da5c3dfd7326fff18ffb5e8 GIT binary patch literal 1119 zcmZ9}&CA<#0KjoUkWnU&Hy@mb?%+VnWAonhGHBDZO`7zVq-m4pAWPG{zqd)+ggr3u z<=|m3@E{@^ig*}9d=T`qlk+eTL`4L3px}IXE>qbQCpd8D{so^ee0AGAFe77CCYc*Y zFUKppS-`b}^Y!)GIWU(9j>GMG2tvWK>t+NPOKi6RvfT89K!RC_bZ|8eD$=9!P)E0b z9!VjwraQGMAGD}4Nf+CkQZOS~5oMu)VX#y=NKYIn*1d@x@huXMceOd|N{daMZNmYa zNG9(npgDEJ0g5mggePkLAi86xyz)L58`4+(<=aqV4g95nH=Q(st_YqDE-K(7+7 z-1L|^;qX`-G&ZF+7*h#|gqT=mL?H1sS_~2pC>R@Wkg?&GoYz}J9)yJ)nQO4VEPYvJ zd$Mit^sY8oayBK_X__AfNa#6H%IBR3B2YLs;tg(+S)b^S8bqNX3e!hM6klt!Y;h(5 zVlZWpNzsr&pNLRrY{!$_B8mzfmd0A8EjmG&T`dE{=1{D6BHxls*9uWo=c#VvZY)M^J%FgRVUqS*rya65S}mxvKD+LM}qt*4l`> zT0f}@ORTd4bZ!gJ>lha?_x%K&v7ydf>?v01kn`eHLUO#^3)Th0VAN^Mp-`u$J!nw~*j?P{@{I`3( z^X%Rqf9CI9xsCqt_kHBsCrSm{e=ui%a=(7}=*ve*X*N-Tmp!*|py< J+=-lD{|9#0g{1%h literal 0 HcmV?d00001 diff --git a/secrets/secrets.nix b/secrets/secrets.nix index 9afa9f1..a260890 100644 --- a/secrets/secrets.nix +++ b/secrets/secrets.nix @@ -42,6 +42,7 @@ in "dendrite.age".publicKeys = everyone; + "dendrite_key.age".publicKeys = everyone; "gitlab/secret.age".publicKeys = everyone; "gitlab/otp.age".publicKeys = everyone; "gitlab/db.age".publicKeys = everyone; From b536a7e3ef828fa597ce1e9a4a2a19e7c2efd9e4 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Tue, 27 Feb 2024 14:40:35 -0600 Subject: [PATCH 10/22] Move Dendrite to Isaiah --- hosts/linode/postgres.nix | 7 +-- hosts/linode/synapse.nix | 60 ---------------------- hosts/myself/default.nix | 3 +- hosts/myself/matrix.nix | 101 ++++++++++++++++++++++++++++++++++++++ modules/nixos/db.nix | 62 +++++++++++++++++++++++ modules/nixos/default.nix | 1 + secrets/3proxy.age | 2 +- secrets/secrets.nix | 2 - 8 files changed, 168 insertions(+), 70 deletions(-) create mode 100644 hosts/myself/matrix.nix create mode 100644 modules/nixos/db.nix diff --git a/hosts/linode/postgres.nix b/hosts/linode/postgres.nix index 4d53947..447ad1c 100644 --- a/hosts/linode/postgres.nix +++ b/hosts/linode/postgres.nix @@ -5,7 +5,6 @@ enable = true; checkConfig = true; ensureDatabases = [ - "dendrite" "nextcloud" ]; #initialScript = pkgs.writeText "create-matrix-db.sql" '' @@ -16,10 +15,7 @@ ensureUsers = [ { name = "nextcloud"; ensureDBOwnership = true; - } { - name = "dendrite"; - ensureDBOwnership = true; - } ]; + } ]; settings = { log_connections = true; log_statement = "all"; @@ -34,7 +30,6 @@ root root postgres services.postgresqlBackup = { enable = true; databases = [ - "dendrite" "nextcloud" ]; }; diff --git a/hosts/linode/synapse.nix b/hosts/linode/synapse.nix index b10e16b..380ab11 100644 --- a/hosts/linode/synapse.nix +++ b/hosts/linode/synapse.nix @@ -69,66 +69,6 @@ return 200 '${builtins.toJSON client}'; }; }; - # Environment secrets - age.secrets.dendrite = { - file = ../../secrets/dendrite.age; - owner = "dendrite"; - }; - - users.users.dendrite = { - isSystemUser = true; - group = "dendrite"; - }; - users.groups.dendrite = {}; - - systemd.services.dendrite.serviceConfig = { - User = "dendrite"; - }; - - services.dendrite = { - enable = true; - environmentFile = "/run/agenix/dendrite"; - httpPort = 8448; - # Identify ourselves as the root of our own domain - settings = ( - (builtins.listToAttrs ( - (map (x: { name = x; value = { database.connection_string = conn; }; }) [ - "app_service_api" - "federation_api" - "key_server" - "media_api" - "mscs" - "relay_api" - "room_server" - "sync_api" - ]) - ) ) // - { - user_api.account_database.connection_string = conn; - user_api.device_database.connection_string = conn; - global = { - database = { - connection_string = conn; - max_open_conns = 25; - max_idle_conns = 5; - conn_max_lifetime = -1; - }; - server_name = "thehellings.com"; - trusted_third_party_id_servers = [ - "matrix.org" - "vector.im" - "jupiterbroadcasting.com" - ]; - # Generate this with {path-to-dendrite}/bin/generate-keys --private-key /etc/dendrite.pem - private_key = "/etc/dendrite.pem"; - }; - client_api = { - registration_enabled = false; - registration_shared_secret = "\${REGISTRATION_SHARED_SECRET}"; - }; - }); - }; - # Open networking ports for the server networking.firewall = { enable = true; diff --git a/hosts/myself/default.nix b/hosts/myself/default.nix index 7d1d9f2..fabcf08 100644 --- a/hosts/myself/default.nix +++ b/hosts/myself/default.nix @@ -1,8 +1,9 @@ { config, pkgs, lib, ... }: { - imports = [ + imports = [ ./hardware-configuration.nix ./git.nix + ./matrix.nix ]; environment.systemPackages = with pkgs; [ diff --git a/hosts/myself/matrix.nix b/hosts/myself/matrix.nix new file mode 100644 index 0000000..f636219 --- /dev/null +++ b/hosts/myself/matrix.nix @@ -0,0 +1,101 @@ +{ config, pkgs, inputs, lib, ... }: +let + domain = "thehellings.com"; + fqdn = "matrix.${domain}"; + conn = "postgresql:///dendrite?sslmode=disable&host=/run/postgresql"; +in +{ + containers.matrix = { + autoStart = true; + bindMounts."/etc/ssh".hostPath = "/etc/ssh"; + config = { pkgs, config, ... }: { + imports = [ + inputs.agenix.nixosModules.default + inputs.self.modules.nixosModule + ]; + + nixpkgs.overlays = inputs.self.overlays.all; + + networking = { + firewall = { + enable = true; + allowedTCPPorts = [ config.services.dendrite.httpPort ]; + }; + useHostResolvConf = lib.mkForce false; + }; + + # Environment secrets + age = { + identityPaths = [ "/etc/ssh/ssh_host_ed25519_key" ]; + secrets.dendrite = { + file = ../../secrets/dendrite.age; + owner = "dendrite"; + }; + }; + + users.users.dendrite = { + isSystemUser = true; + group = "dendrite"; + }; + users.groups.dendrite = {}; + + systemd.services.dendrite.serviceConfig = { + User = "dendrite"; + }; + + greg = { + databases.dendrite = {}; + tailscale.enable = true; + }; + + services.dendrite = { + enable = true; + environmentFile = config.age.secrets.dendrite.path; + httpPort = 8448; + # Identify ourselves as the root of our own domain + settings = ( + (builtins.listToAttrs ( + (map (x: { name = x; value = { database.connection_string = conn; }; }) [ + "app_service_api" + "federation_api" + "key_server" + "media_api" + "mscs" + "relay_api" + "room_server" + "sync_api" + ]) + ) ) // + { + user_api.account_database.connection_string = conn; + user_api.device_database.connection_string = conn; + global = { + database = { + connection_string = conn; + max_open_conns = 25; + max_idle_conns = 5; + conn_max_lifetime = -1; + }; + server_name = "thehellings.com"; + trusted_third_party_id_servers = [ + "matrix.org" + "vector.im" + "jupiterbroadcasting.com" + ]; + # Generate this with {path-to-dendrite}/bin/generate-keys --private-key /etc/dendrite.pem + private_key = "/etc/dendrite.pem"; + }; + client_api = { + registration_enabled = false; + registration_shared_secret = "\${REGISTRATION_SHARED_SECRET}"; + }; + }); + }; + + systemd.services.dendrite = { + after = [ "postgresql.service" ]; + requires = [ "postgresql.service" ]; + }; + }; + }; +} diff --git a/modules/nixos/db.nix b/modules/nixos/db.nix new file mode 100644 index 0000000..50c09e2 --- /dev/null +++ b/modules/nixos/db.nix @@ -0,0 +1,62 @@ +{ config, lib, pkgs, ... }: + +let + cfg = config.greg.databases; + dbs = (lib.attrNames cfg); +in { + options.greg.databases = lib.mkOption { + default = {}; + type = with lib.types; attrsOf ( submodule ( + { name, config, options, ... }: { + # Options reserved for future expansion + options = {}; + } + )); + }; + + config = lib.mkIf ( dbs != [] ) { + services = { + postgresql = { + enable = true; + checkConfig = true; + ensureDatabases = dbs; + ensureUsers = map (db: { name = db; ensureDBOwnership = true; }) dbs; + settings = { + log_connections = true; + log_statement = "all"; + logging_collector = true; + log_filename = "postgresql.log"; + }; + identMap = "root root postgres"; + }; + + postgresqlBackup = { + enable = true; + databases = dbs; + }; + + logrotate = { + enable = true; + settings = { + postgresqlBackup = { + enable = true; + files = "${config.services.postgresqlBackup.location}/*.gz"; + }; + postgresLog = { + enable = true; + files = "/var/lib/postgresql/*/log/*.log"; + compress = true; + compresscmd = "${pkgs.xz}/bin/xz"; + }; + }; + }; + + }; + + greg.backup.jobs.greg-postgresql-backup = { + src = config.services.postgresqlBackup.location; + dest = "linode-postgres"; + user = "postgres"; + }; + }; +} diff --git a/modules/nixos/default.nix b/modules/nixos/default.nix index ad807e1..a4712bd 100644 --- a/modules/nixos/default.nix +++ b/modules/nixos/default.nix @@ -4,6 +4,7 @@ imports = [ ../baseline.nix ./backup.nix + ./db.nix ./gnome.nix ./home.nix ./kde.nix diff --git a/secrets/3proxy.age b/secrets/3proxy.age index 173197d..607aa55 100644 --- a/secrets/3proxy.age +++ b/secrets/3proxy.age @@ -16,4 +16,4 @@ F8D5VJIplhXcqfTzlUhk2GlwRkBmPIiOee980H0VJLM -> ssh-ed25519 kdPvzQ ky3n+PXUHZOXiXNa4+MBaLmSMW6H2z/NBX+H9QHVKhE wR2DfcF5CgOXBsbQxHKVcZLU+uo1Vt3berKpWoMo/FA --- Zrbuy61RBb9S64+YAaGcXNn+i+v/qEkJjXRrDBBKEKY - eU|:rCv*~8[)VG @K Date: Thu, 29 Feb 2024 11:36:25 -0600 Subject: [PATCH 11/22] Matrix container working --- hosts/myself/matrix.nix | 24 ++++++++++++++++++++++-- modules/nixos/db.nix | 2 +- 2 files changed, 23 insertions(+), 3 deletions(-) diff --git a/hosts/myself/matrix.nix b/hosts/myself/matrix.nix index f636219..4aaee73 100644 --- a/hosts/myself/matrix.nix +++ b/hosts/myself/matrix.nix @@ -5,9 +5,23 @@ let conn = "postgresql:///dendrite?sslmode=disable&host=/run/postgresql"; in { + systemd.services."container@matrix".serviceConfig = { + DeviceAllow = [ "/dev/net/tun" ]; + ProtectKernelModules = false; + PrivateDevices = false; + }; containers.matrix = { autoStart = true; - bindMounts."/etc/ssh".hostPath = "/etc/ssh"; + bindMounts = { + "/etc/ssh".hostPath = "/etc/ssh"; + "/dev/net/tun" = { + hostPath = "/dev/net/tun"; + isReadOnly = false; + }; + }; + hostAddress = "192.168.204.1"; + localAddress = "192.168.204.2"; + privateNetwork = true; config = { pkgs, config, ... }: { imports = [ inputs.agenix.nixosModules.default @@ -31,6 +45,10 @@ in file = ../../secrets/dendrite.age; owner = "dendrite"; }; + secrets.dendrite_key = { + file = ../../secrets/dendrite_key.age; + owner = "dendrite"; + }; }; users.users.dendrite = { @@ -48,6 +66,8 @@ in tailscale.enable = true; }; + #services.tailscale.interfaceName = "userspace-networking"; + services.dendrite = { enable = true; environmentFile = config.age.secrets.dendrite.path; @@ -83,7 +103,7 @@ in "jupiterbroadcasting.com" ]; # Generate this with {path-to-dendrite}/bin/generate-keys --private-key /etc/dendrite.pem - private_key = "/etc/dendrite.pem"; + private_key = config.age.secrets.dendrite_key.path; }; client_api = { registration_enabled = false; diff --git a/modules/nixos/db.nix b/modules/nixos/db.nix index 50c09e2..60c4d56 100644 --- a/modules/nixos/db.nix +++ b/modules/nixos/db.nix @@ -55,7 +55,7 @@ in { greg.backup.jobs.greg-postgresql-backup = { src = config.services.postgresqlBackup.location; - dest = "linode-postgres"; + dest = "database-${config.networking.hostName}"; user = "postgres"; }; }; From 49e60b180b926950229dc9f1f14c9788445a37d0 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Thu, 29 Feb 2024 14:35:17 -0600 Subject: [PATCH 12/22] Fix systemd arguments for backups --- modules/nixos/backup.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/nixos/backup.nix b/modules/nixos/backup.nix index 58bd1fe..db87f85 100644 --- a/modules/nixos/backup.nix +++ b/modules/nixos/backup.nix @@ -11,9 +11,9 @@ let makeService = name: job: { serviceConfig = { User = job.user; - ExecPre = lib.optionalString (job.pre != "") job.pre; + ExecStarPre = lib.optionalString (job.pre != "") job.pre; ExecStart = "${pkgs.rsync}/bin/rsync -avz --delete -e '${pkgs.openssh}/bin/ssh -oStrictHostKeyChecking=no -oUserKnownHostsFile=/dev/null' ${job.src}/ backup@chronicles.shire-zebra.ts.net:/volume1/NetBackup/${job.dest}"; - ExecPost = lib.optionalString (job.post != "") job.post; + ExecStartPost = lib.optionalString (job.post != "") job.post; }; }; From 57cc340d028a3be80badeb958f3d31121e0b9892 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Mon, 4 Mar 2024 15:01:33 -0600 Subject: [PATCH 13/22] NixOS Containers: Improved Add personal containers module Move gitlab into new containers Move matrix onto Isaiah --- hosts/myself/container-git.nix | 20 +-------- hosts/myself/git.nix | 28 ++----------- hosts/myself/matrix.nix | 45 +++----------------- modules/nixos/backup.nix | 2 +- modules/nixos/container.nix | 76 ++++++++++++++++++++++++++++++++++ modules/nixos/default.nix | 1 + 6 files changed, 90 insertions(+), 82 deletions(-) create mode 100644 modules/nixos/container.nix diff --git a/hosts/myself/container-git.nix b/hosts/myself/container-git.nix index 71366f2..9635979 100644 --- a/hosts/myself/container-git.nix +++ b/hosts/myself/container-git.nix @@ -1,20 +1,11 @@ -{ inputs, ...}: { config, pkgs, lib, ... }: let registryPort = 5000; vpnIp = "100.78.226.76"; containerIp = "192.168.200.2"; in { - imports = [ - inputs.agenix.nixosModules.default - inputs.self.modules.nixosModule - ]; - - nixpkgs.overlays = inputs.self.overlays.all; - - age.identityPaths = [ "/etc/ssh/ssh_host_ed25519_key" ]; age.secretsMountPoint = "/run/derp"; age.secrets = let - cfg = n: { file = ../../secrets/gitlab/${n}.age; owner = "github"; mode = "0444"; }; + cfg = n: { file = ../../secrets/gitlab/${n}.age; owner = "gitlab"; group = "gitlab"; mode = "0444"; }; in { gitlab-secret = cfg "secret"; gitlab-otp = cfg "otp"; @@ -24,13 +15,7 @@ in { gitlab-cert = cfg "cert"; }; - networking = { - firewall = { - enable = true; - allowedTCPPorts = [ 80 registryPort ]; - }; - useHostResolvConf = lib.mkForce false; - }; + networking.firewall.allowedTCPPorts = [ 80 registryPort ]; greg.proxies = let t = { @@ -45,7 +30,6 @@ in { "${vpnIp}" = t; "git.thehellings.lan" = t; }; - greg.tailscale.enable = true; virtualisation.docker.enable = true; diff --git a/hosts/myself/git.nix b/hosts/myself/git.nix index 32d1bdd..4cd6d5e 100644 --- a/hosts/myself/git.nix +++ b/hosts/myself/git.nix @@ -31,25 +31,10 @@ in { system.activationScripts.makeGitlabDir = lib.stringAfter [ "var" ] "mkdir -p ${gitlabStateDir} && touch ${gitlabStateDir}/touch"; - containers.gitlab = container { - autoStart = true; - bindMounts = { - "/var/gitlab/state" = { - hostPath = gitlabStateDir; - isReadOnly = false; - }; - "/dev/net/tun" = { - hostPath = "/dev/net/tun"; - isReadOnly = false; - }; - }; - forwardPorts = [{ - hostPort = 2222; - containerPort = 22; - }]; - hostAddress = "192.168.200.1"; - localAddress = "192.168.200.2"; - config = ((import ./container-git.nix) { inherit inputs; }); + greg.containers.gitlab = { + tailscale = true; + subnet = "200"; + builder = (import ./container-git.nix); }; systemd.services = { @@ -80,11 +65,6 @@ in { ]; }; }; - "container@gitlab".serviceConfig = { - DeviceAllow = [ "/dev/net/tun" ]; - ProtectKernelModules = false; - PrivateDevices = false; - }; gitlab-runner.serviceConfig.EnvironmentFile = config.age.secrets.docker-auth.path; }; diff --git a/hosts/myself/matrix.nix b/hosts/myself/matrix.nix index 4aaee73..bc0b4c5 100644 --- a/hosts/myself/matrix.nix +++ b/hosts/myself/matrix.nix @@ -5,42 +5,14 @@ let conn = "postgresql:///dendrite?sslmode=disable&host=/run/postgresql"; in { - systemd.services."container@matrix".serviceConfig = { - DeviceAllow = [ "/dev/net/tun" ]; - ProtectKernelModules = false; - PrivateDevices = false; - }; - containers.matrix = { - autoStart = true; - bindMounts = { - "/etc/ssh".hostPath = "/etc/ssh"; - "/dev/net/tun" = { - hostPath = "/dev/net/tun"; - isReadOnly = false; - }; - }; - hostAddress = "192.168.204.1"; - localAddress = "192.168.204.2"; - privateNetwork = true; - config = { pkgs, config, ... }: { - imports = [ - inputs.agenix.nixosModules.default - inputs.self.modules.nixosModule - ]; - - nixpkgs.overlays = inputs.self.overlays.all; - - networking = { - firewall = { - enable = true; - allowedTCPPorts = [ config.services.dendrite.httpPort ]; - }; - useHostResolvConf = lib.mkForce false; - }; + greg.containers.matrix = { + tailscale = true; + subnet = "204"; + builder = { pkgs, config, ... }: { + networking.firewall.allowedTCPPorts = [ config.services.dendrite.httpPort ]; # Environment secrets age = { - identityPaths = [ "/etc/ssh/ssh_host_ed25519_key" ]; secrets.dendrite = { file = ../../secrets/dendrite.age; owner = "dendrite"; @@ -61,12 +33,7 @@ in User = "dendrite"; }; - greg = { - databases.dendrite = {}; - tailscale.enable = true; - }; - - #services.tailscale.interfaceName = "userspace-networking"; + greg.databases.dendrite = {}; services.dendrite = { enable = true; diff --git a/modules/nixos/backup.nix b/modules/nixos/backup.nix index db87f85..8ce05ac 100644 --- a/modules/nixos/backup.nix +++ b/modules/nixos/backup.nix @@ -11,7 +11,7 @@ let makeService = name: job: { serviceConfig = { User = job.user; - ExecStarPre = lib.optionalString (job.pre != "") job.pre; + ExecStartPre = lib.optionalString (job.pre != "") job.pre; ExecStart = "${pkgs.rsync}/bin/rsync -avz --delete -e '${pkgs.openssh}/bin/ssh -oStrictHostKeyChecking=no -oUserKnownHostsFile=/dev/null' ${job.src}/ backup@chronicles.shire-zebra.ts.net:/volume1/NetBackup/${job.dest}"; ExecStartPost = lib.optionalString (job.post != "") job.post; }; diff --git a/modules/nixos/container.nix b/modules/nixos/container.nix new file mode 100644 index 0000000..07b3420 --- /dev/null +++ b/modules/nixos/container.nix @@ -0,0 +1,76 @@ +{ config, lib, inputs, ... }: + +let + cfg = config.greg.containers; + + # Create a container with all our default settings + + makeContainer = name: container: let + agekey = "/etc/ssh/agenix_key"; + in { + autoStart = true; + hostAddress = "192.168.${container.subnet}.1"; + localAddress = "192.168.${container.subnet}.2"; + privateNetwork = true; + bindMounts = { + "${agekey}".hostPath = "/etc/ssh/ssh_host_ed25519_key"; # This is needed for agenix to + }; + enableTun = container.tailscale; + config = { config, pkgs, ... }: { + imports = [ + inputs.agenix.nixosModules.default + inputs.self.modules.nixosModule + container.builder + ]; + + nixpkgs.overlays = inputs.self.overlays.all; + + networking = { + firewall.enable = true; + useHostResolvConf = lib.mkForce false; + }; + + age.identityPaths = [ agekey ]; + + greg.tailscale.enable = container.tailscale; + }; + }; +in { + options.greg.containers = lib.mkOption { + default = {}; + + type = with lib.types; attrsOf ( submodule ( + { + options = { + tailscale = lib.mkOption { + type = bool; + default = false; + description = "Enable tailscale in the container"; + }; + subnet = lib.mkOption { + type = str; + default = "200"; + }; + builder = lib.mkOption { + default = { ... }: {}; + description = '' + This needs to be a function, like the one for + a container's config. It will setup the core system above the + defaults set in this module. + ''; + example = '' + { pkgs, config, lib, ... } : + { + services.openssh.enable = true; + } + ''; + }; + }; + } + )); + }; + + config = { + containers = builtins.mapAttrs makeContainer cfg; + }; +} diff --git a/modules/nixos/default.nix b/modules/nixos/default.nix index a4712bd..96bf46d 100644 --- a/modules/nixos/default.nix +++ b/modules/nixos/default.nix @@ -4,6 +4,7 @@ imports = [ ../baseline.nix ./backup.nix + ./container.nix ./db.nix ./gnome.nix ./home.nix From 347b3005d1eb8caf7536a1d93f05dd31193fec85 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Mon, 4 Mar 2024 21:03:06 +0000 Subject: [PATCH 14/22] Move Synapse to Isaiah --- hosts/linode/default.nix | 2 +- hosts/linode/{synapse.nix => matrix.nix} | 17 +---------------- 2 files changed, 2 insertions(+), 17 deletions(-) rename hosts/linode/{synapse.nix => matrix.nix} (81%) diff --git a/hosts/linode/default.nix b/hosts/linode/default.nix index f55d93c..b443e07 100644 --- a/hosts/linode/default.nix +++ b/hosts/linode/default.nix @@ -5,10 +5,10 @@ ./git.nix ./hardware-configuration.nix ./podman.nix + ./matrix.nix ./nextcloud.nix ./nginx.nix ./postgres.nix - ./synapse.nix ]; greg = { diff --git a/hosts/linode/synapse.nix b/hosts/linode/matrix.nix similarity index 81% rename from hosts/linode/synapse.nix rename to hosts/linode/matrix.nix index 380ab11..81b26eb 100644 --- a/hosts/linode/synapse.nix +++ b/hosts/linode/matrix.nix @@ -48,22 +48,7 @@ return 200 '${builtins.toJSON client}'; locations."/".extraConfig = "return 404;"; locations."/_matrix" = { - proxyPass = "http://127.0.0.1:8448"; # Lacking the trailing / is correct - }; - }; - - # Run Element web - "chat.${fqdn}" = { - enableACME = true; - forceSSL = true; - serverAliases = [ - "chat.${domain}" - ]; - root = pkgs.element-web.override { - conf.default_server_config."m.homeserver" = { - "base_url" = "https://${fqdn}"; - "server_name" = "${fqdn}"; - }; + proxyPass = "http://matrix.shire-zebra.ts.net:8448"; # Lacking the trailing / is correct }; }; }; From 47b6f5737ee2a24a7f9a1f9ade0b7b1a6c6ea3e4 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Mon, 4 Mar 2024 23:03:47 -0600 Subject: [PATCH 15/22] Clean up nix flake check --- flake.nix | 4 +++- hosts/default.nix | 2 +- hosts/icdm-root/location.nix | 4 ++-- hosts/mm/default.nix | 4 ++-- hosts/myself/container-runner.nix | 4 ++-- hosts/myself/default.nix | 3 +++ hosts/myself/git.nix | 8 ++++---- modules/nixos/container.nix | 4 ++-- 8 files changed, 19 insertions(+), 14 deletions(-) diff --git a/flake.nix b/flake.nix index 019a845..148529a 100644 --- a/flake.nix +++ b/flake.nix @@ -68,6 +68,9 @@ unstable = self.nixosConfigurations.jude.config.system.build.toplevel; stable = self.nixosConfigurations.linode.config.system.build.toplevel; }; + aarch64-linux = { + unstable = self.nixosConfigurations.nixos.config.system.build.toplevel; + }; }; nixosConfigurations = (import ./hosts { inherit inputs overlays; }); @@ -97,7 +100,6 @@ overlays = { default = local_overlay; - all = overlays; }; modules = import ./modules; diff --git a/hosts/default.nix b/hosts/default.nix index 77d2aad..7511523 100644 --- a/hosts/default.nix +++ b/hosts/default.nix @@ -18,7 +18,7 @@ let }; in channel.lib.nixosSystem { inherit system; - specialArgs = { inherit nixpkgs inputs; }; + specialArgs = { inherit nixpkgs inputs overlays; }; modules = [ { nixpkgs.overlays = overlays; diff --git a/hosts/icdm-root/location.nix b/hosts/icdm-root/location.nix index d2d0d72..09339a4 100644 --- a/hosts/icdm-root/location.nix +++ b/hosts/icdm-root/location.nix @@ -8,8 +8,8 @@ i18n.defaultLocale = "en_US.UTF-8"; # Configure keymap in X11 - services.xserver = { + services.xserver.xkb = { layout = "us"; - xkbVariant = ""; + variant = ""; }; } diff --git a/hosts/mm/default.nix b/hosts/mm/default.nix index 08f2e15..98c9744 100644 --- a/hosts/mm/default.nix +++ b/hosts/mm/default.nix @@ -183,9 +183,9 @@ in }; }; # Configure keymap in X11 - xserver = { + xserver.xkb = { layout = "us"; - xkbVariant = ""; + variant = ""; }; }; diff --git a/hosts/myself/container-runner.nix b/hosts/myself/container-runner.nix index a4b6b08..0ec8eb9 100644 --- a/hosts/myself/container-runner.nix +++ b/hosts/myself/container-runner.nix @@ -1,4 +1,4 @@ -{ inputs, name, extra ? {}, packages ? [] }: +{ inputs, name, extra ? {}, packages ? [], overlays }: ({ config, pkgs, lib, ... }: let @@ -15,7 +15,7 @@ lib.attrsets.recursiveUpdate { inputs.self.modules.nixosModule ]; - nixpkgs.overlays = inputs.self.overlays.all; + nixpkgs.overlays = overlays; age = { identityPaths = [ "/etc/ssh/ssh_host_ed25519_key" ]; diff --git a/hosts/myself/default.nix b/hosts/myself/default.nix index fabcf08..1f848bf 100644 --- a/hosts/myself/default.nix +++ b/hosts/myself/default.nix @@ -66,6 +66,9 @@ configurationLimit = 10; }; }; + binfmt.emulatedSystems = [ + "aarch64-linux" + ]; }; nixpkgs.config = { allowUnfree = true; diff --git a/hosts/myself/git.nix b/hosts/myself/git.nix index 4cd6d5e..cb224c8 100644 --- a/hosts/myself/git.nix +++ b/hosts/myself/git.nix @@ -1,4 +1,4 @@ -{ config, pkgs, lib, inputs, ... }: +{ config, pkgs, lib, inputs, overlays, ... }: let @@ -88,7 +88,7 @@ in { hostAddress = "192.168.201.1"; localAddress = "192.168.201.2"; config = ((import ./container-runner.nix) { - inherit inputs; + inherit inputs overlays; name = "qemu"; packages = with pkgs; [ qemu_full qemu_kvm ]; extra = { @@ -122,7 +122,7 @@ in { hostAddress = "192.168.202.1"; localAddress = "192.168.202.2"; config = ((import ./container-runner.nix) { - inherit inputs; + inherit inputs overlays; name = "vbox"; extra = { systemd.services.gitlab-runner.serviceConfig = { @@ -148,7 +148,7 @@ in { hostAddress = "192.168.203.1"; localAddress = "192.168.203.2"; config = ((import ./container-runner.nix) { - inherit inputs; + inherit inputs overlays; name = "shell"; }); }; diff --git a/modules/nixos/container.nix b/modules/nixos/container.nix index 07b3420..8f17832 100644 --- a/modules/nixos/container.nix +++ b/modules/nixos/container.nix @@ -1,4 +1,4 @@ -{ config, lib, inputs, ... }: +{ config, lib, inputs, overlays, ... }: let cfg = config.greg.containers; @@ -23,7 +23,7 @@ let container.builder ]; - nixpkgs.overlays = inputs.self.overlays.all; + nixpkgs.overlays = overlays; networking = { firewall.enable = true; From adb9c99d1182e7199c81db7be56b0a72985cb0fa Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Mon, 4 Mar 2024 23:12:30 -0600 Subject: [PATCH 16/22] Move to latest kernel on Jude --- hosts/jude/boot.nix | 1 + hosts/jude/default.nix | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/hosts/jude/boot.nix b/hosts/jude/boot.nix index 7e3df80..68cb064 100644 --- a/hosts/jude/boot.nix +++ b/hosts/jude/boot.nix @@ -3,6 +3,7 @@ { # Use the systemd-boot EFI boot loader. boot = { + kernelPackages = pkgs.linuxPackages_latest; supportedFilesystems = [ "ntfs" ]; loader = { timeout = 15; diff --git a/hosts/jude/default.nix b/hosts/jude/default.nix index df8d19c..361ba7e 100644 --- a/hosts/jude/default.nix +++ b/hosts/jude/default.nix @@ -96,7 +96,7 @@ nvidia = { modesetting.enable = true; nvidiaSettings = true; - open = true; + open = false; }; pulseaudio.enable = false; # This conflicts with pipewire system76.enableAll = true; From 0e479bce256c7a84c2b7c63e46f3c39ad90cb3f9 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Wed, 6 Mar 2024 10:52:38 -0600 Subject: [PATCH 17/22] Latest WSL update --- flake.lock | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/flake.lock b/flake.lock index bc32b3f..3da32ce 100644 --- a/flake.lock +++ b/flake.lock @@ -69,11 +69,11 @@ "flake-compat": { "flake": false, "locked": { - "lastModified": 1673956053, - "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=", + "lastModified": 1696426674, + "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", "owner": "edolstra", "repo": "flake-compat", - "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9", + "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", "type": "github" }, "original": { @@ -123,11 +123,11 @@ "systems": "systems_4" }, "locked": { - "lastModified": 1689068808, - "narHash": "sha256-6ixXo3wt24N/melDWjq70UuHQLxGV8jZvooRanIHXw0=", + "lastModified": 1705309234, + "narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=", "owner": "numtide", "repo": "flake-utils", - "rev": "919d646de7be200f3bf08cb76ae1f09402b6f9b4", + "rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26", "type": "github" }, "original": { @@ -567,11 +567,11 @@ ] }, "locked": { - "lastModified": 1689163449, - "narHash": "sha256-C/cm0fRoNGx00lDOieW5439jpBH9VRWRJcAOXUFy+zs=", + "lastModified": 1709211223, + "narHash": "sha256-1cjd+yXbTlnCwNwEDjn289rJ2f0er5M8pOig4PxniEM=", "owner": "nix-community", "repo": "NixOS-WSL", - "rev": "20a1f182aed3d2bbc72f62f5814fc3dd34a1cf0c", + "rev": "3257ad7f173b0314c8a42fec450fa6556495b97c", "type": "github" }, "original": { From aa90b27abc13d19f03560c7d70ca4cfebe0979fd Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Wed, 6 Mar 2024 16:00:32 -0600 Subject: [PATCH 18/22] Add utility file command --- modules/baseline.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/modules/baseline.nix b/modules/baseline.nix index ba0e4d3..2271930 100644 --- a/modules/baseline.nix +++ b/modules/baseline.nix @@ -43,6 +43,7 @@ gnupatch gregpy findutils + file hms # My own home manager switcher htop killall From 002c80839e465939cacbb9bcc2c1be454321e5a0 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Mon, 11 Mar 2024 09:50:12 -0500 Subject: [PATCH 19/22] Plasma 6 and fixes Some fixes to deprecation warnings Update settings to 24.05 by default Add better tools Include GParted in Jude deployment Update unstable pin --- flake.lock | 6 +++--- home/hosts/jude/default.nix | 4 ++-- home/modules/gui.nix | 4 +++- hosts/jude/boot.nix | 1 + hosts/jude/default.nix | 13 ++++++++++--- modules/nixos/default.nix | 2 +- modules/nixos/gnome.nix | 2 +- modules/nixos/kde.nix | 9 ++++++--- 8 files changed, 27 insertions(+), 14 deletions(-) diff --git a/flake.lock b/flake.lock index 3da32ce..2ba8a85 100644 --- a/flake.lock +++ b/flake.lock @@ -393,11 +393,11 @@ }, "nixunstable": { "locked": { - "lastModified": 1708475490, - "narHash": "sha256-g1v0TsWBQPX97ziznfJdWhgMyMGtoBFs102xSYO4syU=", + "lastModified": 1709703039, + "narHash": "sha256-6hqgQ8OK6gsMu1VtcGKBxKQInRLHtzulDo9Z5jxHEFY=", "owner": "nixos", "repo": "nixpkgs", - "rev": "0e74ca98a74bc7270d28838369593635a5db3260", + "rev": "9df3e30ce24fd28c7b3e2de0d986769db5d6225d", "type": "github" }, "original": { diff --git a/home/hosts/jude/default.nix b/home/hosts/jude/default.nix index 8ef40e8..eefc406 100644 --- a/home/hosts/jude/default.nix +++ b/home/hosts/jude/default.nix @@ -6,9 +6,9 @@ ]; home.packages = with pkgs; [ (mumble.override { pulseSupport = true; }) - fluffychat logseq ]; greg.gui = true; - greg.sway = true; + greg.sway = false; + greg.gnome = false; } diff --git a/home/modules/gui.nix b/home/modules/gui.nix index f04b79d..ca87db7 100644 --- a/home/modules/gui.nix +++ b/home/modules/gui.nix @@ -24,7 +24,9 @@ in { home.packages = with pkgs; ( excludes ["x86_64-darwin" "aarch64-darwin"] [ cdrtools - element-desktop + fluffychat + cinny-desktop + qpwgraph vlc x265 ]) ++ diff --git a/hosts/jude/boot.nix b/hosts/jude/boot.nix index 68cb064..1a1d0b9 100644 --- a/hosts/jude/boot.nix +++ b/hosts/jude/boot.nix @@ -3,6 +3,7 @@ { # Use the systemd-boot EFI boot loader. boot = { + binfmt.emulatedSystems = [ "aarch64-linux" ]; kernelPackages = pkgs.linuxPackages_latest; supportedFilesystems = [ "ntfs" ]; loader = { diff --git a/hosts/jude/default.nix b/hosts/jude/default.nix index 361ba7e..9ffe4a6 100644 --- a/hosts/jude/default.nix +++ b/hosts/jude/default.nix @@ -23,12 +23,17 @@ hostName = "jude"; enableIPv6 = false; interfaces.enp12s0.useDHCP = true; - firewall.enable = true; + firewall = { + enable = false; + allowedTCPPorts = [ 21000 ]; + allowedUDPPorts = [ 21000 21010 ]; + }; }; greg = { tailscale.enable = true; - sway.enable = true; - kde.enable = false; + sway.enable = false; + gnome.enable = false; + kde.enable = true; }; environment.systemPackages = with pkgs; [ @@ -37,12 +42,14 @@ darktable expect gimp + gparted gnucash graphviz flock ffmpeg handbrake imagemagick + immersed-vr libtheora libxml2 linode-cli diff --git a/modules/nixos/default.nix b/modules/nixos/default.nix index 96bf46d..a2584f6 100644 --- a/modules/nixos/default.nix +++ b/modules/nixos/default.nix @@ -25,7 +25,7 @@ lshw ]; - system.stateVersion = "22.05"; + system.stateVersion = "24.05"; nix = { gc.dates = "weekly"; diff --git a/modules/nixos/gnome.nix b/modules/nixos/gnome.nix index b5e8c95..e820feb 100644 --- a/modules/nixos/gnome.nix +++ b/modules/nixos/gnome.nix @@ -17,7 +17,7 @@ in with lib; { enable = true; displayManager.gdm.enable = true; desktopManager.gnome.enable = true; - layout = "us"; + xkb.layout = "us"; # Trackpad support libinput.enable = true; }; diff --git a/modules/nixos/kde.nix b/modules/nixos/kde.nix index 53fbe4f..d7776e6 100644 --- a/modules/nixos/kde.nix +++ b/modules/nixos/kde.nix @@ -13,9 +13,12 @@ in with lib; { services = { xserver = { enable = true; - displayManager.sddm.enable = true; - desktopManager.plasma5.enable = true; - layout = "us"; + desktopManager.plasma6.enable = true; + displayManager = { + defaultSession = "plasma"; + sddm.enable = true; + }; + xkb.layout = "us"; # Trackpad support libinput.enable = true; }; From 35a3691aba0156d12b8a42443e2e612f334f33c7 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Tue, 12 Mar 2024 22:16:25 -0500 Subject: [PATCH 20/22] Update nixunstable --- flake.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/flake.lock b/flake.lock index 2ba8a85..67c2120 100644 --- a/flake.lock +++ b/flake.lock @@ -393,11 +393,11 @@ }, "nixunstable": { "locked": { - "lastModified": 1709703039, - "narHash": "sha256-6hqgQ8OK6gsMu1VtcGKBxKQInRLHtzulDo9Z5jxHEFY=", + "lastModified": 1709961763, + "narHash": "sha256-6H95HGJHhEZtyYA3rIQpvamMKAGoa8Yh2rFV29QnuGw=", "owner": "nixos", "repo": "nixpkgs", - "rev": "9df3e30ce24fd28c7b3e2de0d986769db5d6225d", + "rev": "3030f185ba6a4bf4f18b87f345f104e6a6961f34", "type": "github" }, "original": { From a61b23c5f45399482f062ccee3350937b8205378 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Sun, 17 Mar 2024 23:02:11 -0500 Subject: [PATCH 21/22] Collect list of apps for categorization --- hosts/jude/default.nix | 80 ++++++++++++++++++++++++------------------ 1 file changed, 45 insertions(+), 35 deletions(-) diff --git a/hosts/jude/default.nix b/hosts/jude/default.nix index 9ffe4a6..913ac6d 100644 --- a/hosts/jude/default.nix +++ b/hosts/jude/default.nix @@ -1,4 +1,4 @@ -{ pkgs, ... }: +{ pkgs, config, ... }: { imports = [ @@ -36,40 +36,50 @@ kde.enable = true; }; - environment.systemPackages = with pkgs; [ - bind # For things like nslookup - create_ssl - darktable - expect - gimp - gparted - gnucash - graphviz - flock - ffmpeg - handbrake - imagemagick - immersed-vr - libtheora - libxml2 - linode-cli - makemkv - nix-du - nix-tree - oathToolkit - synology-drive-client - terraform - vagrant - ventoy + boot.extraModulePackages = [ config.boot.kernelPackages.v4l2loopback ]; - # Video/Audio data composition framework tools like "gst-inspect", "gst-launch" ... - gst_all_1.gstreamer - gst_all_1.gst-plugins-base - gst_all_1.gst-plugins-good - gst_all_1.gst-plugins-bad - gst_all_1.gst-plugins-ugly - gst_all_1.gst-libav - gst_all_1.gst-vaapi + environment.systemPackages = with pkgs; lib.mkMerge [ + [ # for Immersed + cudatoolkit + immersed-vr + libva + ] + [ + bind # For things like nslookup + create_ssl + darktable + expect + gimp + gparted + gnucash + graphviz + flock + ffmpeg + handbrake + imagemagick + libtheora + libxml2 + linode-cli + makemkv + nix-du + nix-tree + oathToolkit + synology-drive-client + terraform + vagrant + ventoy + ] + + [ + # Video/Audio data composition framework tools like "gst-inspect", "gst-launch" ... + gst_all_1.gstreamer + gst_all_1.gst-plugins-base + gst_all_1.gst-plugins-good + gst_all_1.gst-plugins-bad + gst_all_1.gst-plugins-ugly + gst_all_1.gst-libav + gst_all_1.gst-vaapi + ] ]; fileSystems = { "/boot" = { @@ -103,7 +113,7 @@ nvidia = { modesetting.enable = true; nvidiaSettings = true; - open = false; + open = true; }; pulseaudio.enable = false; # This conflicts with pipewire system76.enableAll = true; From 69a699912eb0ba26901007880d504f753f793e1e Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Mon, 25 Mar 2024 14:39:35 -0500 Subject: [PATCH 22/22] Let ssh config work in distrobox --- home/ssh.nix | 6 ++++++ hosts/jude/default.nix | 1 + 2 files changed, 7 insertions(+) diff --git a/home/ssh.nix b/home/ssh.nix index 0491074..6e50347 100644 --- a/home/ssh.nix +++ b/home/ssh.nix @@ -1,6 +1,12 @@ { lib, ... }: { + # Workaround to set the config value to user read-only + # This allows things like SSH in distrobox to read the config file just fine + home.file.".ssh/config" = { + target = ".ssh/config_source"; + onChange = ''cat ~/.ssh/config_source > ~/.ssh/config && chmod 400 ~/.ssh/config''; + }; programs.ssh = { enable = true; serverAliveInterval = 60; diff --git a/hosts/jude/default.nix b/hosts/jude/default.nix index 913ac6d..e6103d0 100644 --- a/hosts/jude/default.nix +++ b/hosts/jude/default.nix @@ -48,6 +48,7 @@ bind # For things like nslookup create_ssl darktable + distrobox expect gimp gparted