From 64847d5e8e4b3c64a0354543b1f40a27aa3605e6 Mon Sep 17 00:00:00 2001 From: Jack O'Sullivan Date: Thu, 8 Sep 2022 20:31:44 +0100 Subject: [PATCH] Add initial config for tower --- flake.nix | 1 + nixos/boxes/tower/default.nix | 130 ++++++++++++++++++ nixos/modules/common.nix | 1 + nixos/modules/tmproot.nix | 3 + nixos/modules/user.nix | 3 +- secrets/chatterbox/nul.ie.signing.key.age | 17 ++- secrets/chatterbox/synapse.yaml.age | Bin 1121 -> 1106 bytes secrets/dhparams.pem.age | Bin 1165 -> 1216 bytes secrets/estuary/netdata/powerdns.conf.age | Bin 541 -> 470 bytes .../netdata/powerdns_recursor.conf.age | Bin 484 -> 536 bytes secrets/estuary/pdns/auth.conf.age | 18 +-- secrets/estuary/pdns/recursor.conf.age | Bin 434 -> 429 bytes secrets/hercules/aws-credentials.ini.age | Bin 521 -> 451 bytes secrets/hercules/binary-caches.json.age | Bin 753 -> 810 bytes secrets/hercules/cluster-join-token.key.age | Bin 702 -> 643 bytes secrets/jackflix/mullvad-privkey.age | Bin 436 -> 438 bytes .../middleman/cloudflare-credentials.conf.age | Bin 540 -> 500 bytes secrets/middleman/nginx-sso.yaml.age | Bin 845 -> 872 bytes secrets/minio.env.age | Bin 533 -> 508 bytes secrets/nix-cache-gc.ini.age | Bin 519 -> 520 bytes secrets/pdns-file-records.key.age | Bin 783 -> 834 bytes secrets/user-passwd.txt.age | Bin 1559 -> 1663 bytes secrets/vaultwarden.env.age | 16 +-- secrets/whale2/valheim.env.age | 18 +-- 24 files changed, 171 insertions(+), 36 deletions(-) create mode 100644 nixos/boxes/tower/default.nix diff --git a/flake.nix b/flake.nix index 430ed36..e9040f5 100644 --- a/flake.nix +++ b/flake.nix @@ -98,6 +98,7 @@ # Systems nixos/installer.nix nixos/boxes/colony + nixos/boxes/tower # Homes home-manager/configs/castle.nix diff --git a/nixos/boxes/tower/default.nix b/nixos/boxes/tower/default.nix new file mode 100644 index 0000000..2020711 --- /dev/null +++ b/nixos/boxes/tower/default.nix @@ -0,0 +1,130 @@ +{ lib, ... }: { + nixos.systems.tower = { + system = "x86_64-linux"; + nixpkgs = "mine"; + home-manager = "mine"; + + configuration = { lib, pkgs, modulesPath, config, systems, assignments, allAssignments, ... }: + let + inherit (lib) mkIf mkMerge mkForce; + in + { + hardware = { + enableRedistributableFirmware = true; + cpu = { + intel.updateMicrocode = true; + }; + }; + + boot = { + loader.efi.canTouchEfiVariables = true; + kernelPackages = pkgs.linuxKernel.packages.linux_5_19; + kernelModules = [ "kvm-intel" ]; + kernelParams = [ "intel_iommu=on" ]; + initrd = { + availableKernelModules = [ "nvme" "xhci_pci" "usb_storage" "usbhid" "thunderbolt" ]; + luks = { + reusePassphrases = true; + devices = { + persist = { + device = "/dev/disk/by-uuid/27840c6f-445c-4b95-8c39-e69d07219f33"; + allowDiscards = true; + preLVM = false; + }; + home = { + device = "/dev/disk/by-uuid/c16c5038-7883-42c3-960a-a085a99364eb"; + allowDiscards = true; + preLVM = false; + }; + }; + }; + }; + }; + + fileSystems = { + "/boot" = { + device = "/dev/disk/by-partuuid/66bc15d3-83dd-ea47-9753-3fb88eab903f"; + fsType = "vfat"; + }; + "/nix" = { + device = "/dev/disk/by-uuid/cd597ff0-ca72-4a13-84c8-91b9c09e0a29"; + fsType = "ext4"; + }; + + "/persist" = { + device = "/dev/disk/by-uuid/1e9b6a54-bd8d-4ff3-8c06-7b214a35db57"; + fsType = "ext4"; + neededForBoot = true; + }; + "/home" = { + device = "/dev/disk/by-uuid/5dc99dd6-0d05-45b3-acb6-03c29a9b9388"; + fsType = "ext4"; + }; + }; + + console.keyMap = "uk"; + + services = { + lvm = { + boot.thin.enable = true; + dmeventd.enable = true; + }; + fstrim.enable = true; + + resolved = { + enable = true; + extraConfig = mkForce ""; + }; + }; + + networking = { + networkmanager = { + enable = true; + dns = "systemd-resolved"; + wifi = { + backend = "wpa_supplicant"; + }; + extraConfig = '' + [main] + no-auto-default=* + ''; + }; + }; + + environment.systemPackages = with pkgs; [ + dhcpcd + pciutils + usbutils + lm_sensors + linuxPackages.cpupower + brightnessctl + ]; + + systemd = { + network = { + links = { + "10-wifi" = { + matchConfig.MACAddress = "8c:f8:c5:55:96:1e"; + linkConfig.Name = "wifi"; + }; + }; + }; + }; + + my = { + user = { + tmphome = false; + }; + + #deploy.generate.system.mode = "boot"; + secrets = { + key = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOU+UxJh8PZoiXV+0CRumv9Xsk6Fks4YMYRZcThmaJkB"; + }; + + firewall = { + enable = true; + }; + }; + }; + }; +} diff --git a/nixos/modules/common.nix b/nixos/modules/common.nix index 386ead8..7231311 100644 --- a/nixos/modules/common.nix +++ b/nixos/modules/common.nix @@ -86,6 +86,7 @@ in }; time.timeZone = mkDefault "Europe/Dublin"; + i18n.defaultLocale = "en_IE.UTF-8"; boot = { # Use latest LTS release by default diff --git a/nixos/modules/tmproot.nix b/nixos/modules/tmproot.nix index ee133c4..dcbff08 100644 --- a/nixos/modules/tmproot.nix +++ b/nixos/modules/tmproot.nix @@ -337,6 +337,9 @@ in "/var/lib/cni" ]; }) + (mkIf config.networking.networkmanager.enable { + my.tmproot.persistence.config.directories = [ "/var/lib/NetworkManager" ]; + }) (mkIf config.my.build.isDevVM { fileSystems = mkVMOverride { # Hijack the "root" device for persistence in the VM diff --git a/nixos/modules/user.nix b/nixos/modules/user.nix index ed78856..64dcfef 100644 --- a/nixos/modules/user.nix +++ b/nixos/modules/user.nix @@ -11,6 +11,7 @@ in options.my.user = with lib.types; { enable = mkBoolOpt' true "Whether to create a primary user."; passwordSecret = mkOpt' (nullOr str) "user-passwd.txt" "Name of user password secret."; + tmphome = mkBoolOpt' true "Whether to persist home directory files under tmproot"; config = mkOption { type = options.users.users.type.nestedTypes.elemType; default = { }; @@ -46,7 +47,7 @@ in _module.args.name = lib.mkForce user'.name; }; }; - tmproot = { + tmproot = mkIf cfg.tmphome { unsaved.ignore = [ # Auto-generated (on activation?) "/home/${user'.name}/.nix-profile" diff --git a/secrets/chatterbox/nul.ie.signing.key.age b/secrets/chatterbox/nul.ie.signing.key.age index 7ee8a48..51b24b7 100644 --- a/secrets/chatterbox/nul.ie.signing.key.age +++ b/secrets/chatterbox/nul.ie.signing.key.age @@ -1,10 +1,9 @@ age-encryption.org/v1 --> ssh-ed25519 ZB3e6Q iCLxItNihRG7KUDgcUm4vrtWQblN5hdYwvAegw0m5DQ -nQSrxGdOaWjtjYssejOg1DoNRnIYNznRzDJUEcWCUgA --> X25519 eE1k40fJ67VXFqUJ8pB2Ll8/s1K0kD3YkfMQnOqKiTw -nH9+nHG8pAVLn5krLSNGc18FEMcp6o5NKkf/ciuFPY8 --> U|8z(Y7-grease n 6 -DNyQQUnKJ9kGTrZY0pj67eeuEMpyn69awH4v0+RZiS9GaVRNPz9dv6VfzI178NDv -wb2gQLYc/5QFlvKo1pYx12AxxF3LvrwhNm8w9nvVjXUzFqn7SvoFxszxtw ---- bQBm6Njo6zu9+Xwao1BlMfBUXYL8TbytByW27Hde/Tg -v\'_H(=aJf+R,(+W{?ZnQ~a>)gFXrM4y \ No newline at end of file +-> ssh-ed25519 ZB3e6Q LYlElJVGV47nZ5AxrU6C8AfCrK3Br1DqMnozUVbzXAY +DthCj922i2ud9PJrBtVpkF6Mvs0tG/xQViIZxNewI9Q +-> X25519 D3YiBnszJ0a/e5VOVEonqGB7T0OWC7p7w3cNU7G3skc +/IQOnNqHGu/nY1g6QijCr5mpfmGEs6SAGK9/jiOqtd4 +-> $Yg5VBMZ-grease XSfpS" k} ( +EPfUi7eQKyf8bB6C9PIvVieDte6X7IR54zhP+CcmAw +--- KflE5p2fLkFzlQbOCpF/lZWO6Nq2m273tgE0/UqMeS4 + &t~Pg~kͦ_`Une{u/'i9ڪSкj;c~R^F{,/+$!-2H \ No newline at end of file diff --git a/secrets/chatterbox/synapse.yaml.age b/secrets/chatterbox/synapse.yaml.age index 647123e31905bf951634f11e7d9d5ef27b808e5b..d5ce6377cc74b7b7bc8beb86aaad574e7a5ef860 100644 GIT binary patch delta 1077 zcmV-51j_s22+|0UEPpX^WllA5X;DIHbTc+YZ&Gk>b9H%DFgZ+6R$^;0R!wkFYI$pF zIW;S7Q3`lxVsKSuGc|5#c5XysOEzh1S#Whxad&HORWx&IFf>kZRzWd!OgJ}JSqd#a zAXqXrH8D9LVn<4GcxQ4%YeINIc{6cAWJ)n~Y*A=3P3N1b$T5Via zdM#&iWnpt=AWuzqPZ#;NuxVM->WoA{^udkmTGC8q4zo<=6{Kr2+&@ioZ_{4l9)qYM8HvI zysm}{B^>ax%F9DDOOwM4h#94PDaW&hk>Co#a@DZQ{f2Ajifdch}WwJMU>b29 zgMU|UfFL$gh(Zgx?xLkypPViNWL}wpgRXO9HlQ9VK|>o#5d)Q1!iZ^6$#`ZLxYi&; zr-)x#O!W6VUqVk5gp6;#S9{>@9l1~glI-H_?YfC@pHLMIepN$8n;3PLxWDuj!16R% zFTN?m1?4ClH%i>~`?}4Uw9O@hrQv$9g@4!18&djBR~8J-=%BX6G|lG&!EVl9&<~RQ zE?r1cxR0UGT+UpwnP9l(qOJNa>RSBqnGWG^BRLt3*xY|mD#HBQE0}14>WcBrpn?h1 z66t*(BJ4)27)yK)pm?R`>s{_|aNB0|0>}A_wS9ny6DM#`k2!Z-5wHZ((*h zHZOH*MG9G2RAp9hGh|O?RB%UGc42ThLsem7R%kDHG%G}Tcxgm;VKzB4GFMb^Q3@?S zAXqXrH8D9LQ&e?XQA#%}FEeI#M^kokT4i)nYB4i3R#Y%IOn+!tdSiD|Lt1qFU~ z3VL`;O-gcDWlK3tO;boXMnq9;WkOVJQ(;U|byhV*PgYcCQ(9$2Olxyz3N1b$C`xQ8 zX)R}RWnpt=ASzf%KSLxSaxXq6PbwgCY*biwcR>nyS2$@=PF7PhLN`TqMs#UTM=Ml# zSXOLBSW9POSbt?^FLN+qLosq_K~OYRFmPdQH%W6tFEn9JW;AOnXEH}+3TriLRbf_2 zVo-Bca5qs{I5Ajma7b)zOmu5vYgI6J3N0-yATdxkZBI2&YdBhsuX)lqwTok>+mw-)WdYwOOz9AYdX32 zFg-HF#&}No&@Fs@ivdb=`7;}k>XcSqk|wOmS9PxUG1~+=^dTrpx!zx)%sXgv_w6Js z^ZSgBfPbwBm$#Sk4HrtJJdb~VIRa18(*4WR&Vp=^aUzzLSsZ3U2kLU=7K!|^xhGLT z8JSbRNR4bqrKfMzW#O+Ol70IYk&`!FrlB#10ZEKtq5*zzxRx;6z-(p=1npwsxPR)PqEATzdU?xlI1Yei3#=oxX0^tgG(oYSGm^XQ}*SAJ4wx6{(dtIj)BN08!zXkT{3cy7eBf4lY zk?i|fv|JK2Ulw$9iTDX>HT&@kVIjB2+1 z8-HbZ1esOe9F_Yk#1E#Qkq*I4_TTDW8o{>@uO|Y)6tAplApTl9u}iGK|8oxm{tTG^ zoMrX=`ep$JyOFoO&b&3&es+&7W^rk~&r;S0w@4{c8WV^K@1G)Cfs+=<*)rx<#Q6-z zIsXy&>!QgX*Y)4+vqr3`W#0DSKpS*qWrUeL#+nD(!g$t>0N=BLq4Y7^{tD%E KM_0q$(q{^Hl;WlU diff --git a/secrets/dhparams.pem.age b/secrets/dhparams.pem.age index 2aee7aaef84f106ac1811e9fcdd9350abddb8f60..db8f5877339e73fe03d0ef25b3aec731ea17a424 100644 GIT binary patch delta 1188 zcmV;V1Y7%!3BU=EEPqr)XJuk*M^i|0R(DT#V`4H=L_#(}GC3!&FQE^#jZ*MS1Ia*Rrbbm`%baF&UHC1m`S5s42 z3RhV{R%3ZiMR_nVaAq}0Q8iImPi94FNkL|8K`(MzHEBgpL~LesHB5O~3N1b$Axb?t zEKx0Ia%Ew2Wguw^IA>^PQ!i9+O-f`-Q*3!OQdV&|RY5s9G+{(hO?qxvFJ?GPFKjU| zV`_PFPFg`tSbt7PQA}kyPDN@kOLb*XZwfXmICVi}FGf{PQduiyFi}QUXH#u%NGotd zXmUtdFlbF-W@>jsOLK2AXJJB1ZcJfyW=je!EiE8JPGM3@H!w9vM07$~a!7SiXG~2^ zLt1TTY*JZJc}`GOGFmWhPAh0lIY|nOF^xW3_-P$Uf`1Fi>tKBwkh^3~LlU2d2oJ8E zFxU5MfQvPZ>R*AD3t(L0%lAISyLZ7+a%M{vX^KJnZ1l8Urf+n8DoW)rX{(+sF8qYE zP1`s_z7b?3@QaJ?;3JW#Ap0e6JFFl3|qR`$uxZ)cb}O-5fk zYMKM#5F~Hef*^R$9A^j`#X!%lA9E4c)QC^OJAVgpON{^2^9XO@$f^kk00PQgiq3VT z&wYRAJ0F`)neT%3g5ro+%SC)W&$26=_G)EQLI(e8ooHOcg?_V0!4t?Tg5C#jrIAJx zL@GpL7Ew#eQ+b6XuM{;>k%rLR9-ZN964wZ1S7ApH4n!h4mJTf>>cPq>FA5?=u+y_+ zTYr+qdd%b+S=?;JGpRTcbgw^ays;q`yuOIY)BQ)g+PmQ1s5`8IUxF!7`_@x_S+i`Z zuP@jfhnT>g+%Ea!xW>?XaKjOYc3>n8?d}|EaN6U6f1!trdF*Cz_W_IIuB4Vz4KGrI zbaN{9qS7GDu`wa* zPGsFHdu|UvC95k<>=&D>l~SM^NdjY!9v*zg`~Bq7xk!ut#)7%+Ajo5j;~p>O@qZ1M za@utE%c73cIcP4|+esWm)FHDggjN0*c#?4CS4{EJQ70_R#B?7?2FrGE2s(Sok09?n zox=Dc@eAJZsX8+70T>b1x4ki(Emj{Idy(pPqGE=SOTGSbozH>2Zbd2N!E=|=vU}m} zx~RHx~+(KMHN#91wQ{aMvXdS40xc$e4r-JVdYTcRiK8XNQv+1Mv>6(#KCk5QJ Cv;*`2 delta 1136 zcmV-$1dsc`35^MmEPqE;T2w=JLv3?VMlnlCG zY;P$cTh5TGHG-&ZAy1fPBKh+G+{3*XG3XrD|l}(cWg#UMG7rG zAXqXrH8D9Lc|%x8ad~7;dSpdrT32XJH!wjfH(6>cXEJy&d4D-~T4ys%T1#nXNK-?1 z3TP{DXGUc(S4T8SHfl>+Yi%`JOjTlOL|ROFab#0Aabq}QSZPUiGGZ%p3N1b$Xi0r# zcO)%ma%Ew2WgtLZCP8XyCQl$`cr|7qOGqPKRtiWqR9I0jad|amPfS>AWnxl9Hc3oR zY*jgRFl23WN`FpkaaU?)bZ9YHS!6UgL26J6EiEk|Mnq9?XG}SIGIVrwbar-XOlD&* zd3Iu9GDAs2Rz!GcHE?fGayC~&MoTyfDX%K%I8?kb5SlGX0%1D0im33Pf3~L<5XDJ| zB}Qi1uYhk&UG(gk%i%#m5{lID3NPm6ggsjids3=8rhg70xS~;ai?#23QPvNdq2t6> z^cE!@b?cPs;Z-j%z11=4K9R#8^C6_eEMcdU@{_#JFUO^Tw(;?>(q-Bq2Rn1s=ywfB ztx0FBUCjjb?y8~+etSNBKNt(Dj0ePnP7eb&R%T9Z$eGkp;kp`$n98mId3_GD$iG3z zVm+TQN`IV1@}HeefS@7tJNk(At|*4R@?eOZIUwobbtz)61xWwW`8s9=eDn;cl<=cTYMBBvRxDO4II7DE;@`6J-=! z&T{9qs^!}1smdT*VPq*WHk0JtW0#j8P5iJcevSw(k`?$$k2)yv~pw{a__uRt{Gy4^Mc>mjm;xCYA5?^XBqvdQ^ zU1Jd#OoYqh<9~NWz?^mdUd!YsSGS1yl8R$b;s}ds^;S8#??Jz?Mw$6G{?04j27VHOSmeNET)IBSxNhVXcZAP`v6(;rDHLNex;!Z{X CRQ~J$ diff --git a/secrets/estuary/netdata/powerdns.conf.age b/secrets/estuary/netdata/powerdns.conf.age index dd1fb023539f574764a93cf4d832f22be9c2e951..0e87cb222de76564dc667f43ff2c83cfc8a80aa7 100644 GIT binary patch delta 436 zcmV;l0Zaa!1l9wPEPrW5R765_WO-#YaA|QbcyU*7Vo7dtRWe3TP(?*cWnnaHG;CIS zL3dMXZwg_0T1+-FM{zPuT2MG?crZw5c~eSuK}0rVK}c&%GeTuDFjr+bPf<}#Gzu*~ zAXqXrH8D9LPEvC@Pi|LfSa57%O*lhtT5)YpRZeqIRA@p^Nq41_QqN}>cF_4&c-?aHw>8EM{ delta 507 zcmV0q?a!E=NfW^!X@Z&zeVPG?79Pk&88cSCYgPj6*8bZ~7n z3T$&_YcF>~Lq}w5YE>&ZR!uTwRWn3bWp8*!RZC7-Swb>GF*iqHPfu-Y3N1b$H6lMP zXL4m>b7der6OMga7a8piMN;PF|L2_j|H#TrnP6~HgNp4nXZB{vDFmhFSaZF4>S64YU zFEc_>3N0-yAa+D-T2VPdYH>A1b5~ACZbCU!XG3;2Mn*U?D{5s`S7drcbV+D8Gh#_m z3e}rs%rRaytdq5~PKCm1tM`AWYi8g6meE9$XUv}r;&fIsLAoPuRO}f*q~IJqQ|6j@ zp~oyoK7V|L{=H$sD`!@l$deojxHYqrqjOd1F`y>4EoHdA$iZTI03|&wr9Sj@HD?fF x`qe>Rr01{Sx-1NsxSW4fNy4=qI9mnCPMCXNS(juZKh8p@d#lqc)Zdu6ClXrTyQu&G diff --git a/secrets/estuary/netdata/powerdns_recursor.conf.age b/secrets/estuary/netdata/powerdns_recursor.conf.age index 26a371a133bd88e7ee61c927e8edd8ea9842f4f3..80619f1e4991a66d676b64900f15898ccddfa3dd 100644 GIT binary patch delta 502 zcmVXL4&mI9E4k3N1b$YA8Z+ zeMl{BEoX9NVRL05T3JL1Z&YdQx_6S8p*|NMdUW zEiEk|Fg9soRdzFBNOo~~SWj>^WJzgaR&g^_S4cEeM|VqEL`is0V?;?ea5--ZDQu9E z>#_UJ3>`+_A2C9Z`o%Our9doKV@h!8wc%sxUWE;lnr}nHIs}#!_+_F^oWh}LwgTJc zy2+LZ-!`dKJniW;JSJ3xdCcK)+C_uL%%rdMcvd%>4cW_rRcPQ{j@Qjh_H8qr5?5r| s?gFOy4B?*KFKDCSFOj|} zJx)n2XL4m>b7de^AZsEDa!O`*L{>{}X-z^oH9=N6Ra9?cVm53sGFehqZ!1`FWKjw& zEiE88K~HR1O@D7pctSxpZ)QqLVP`o`ZEQJdbwXH2VMH`pXl_CuB*K!cqmtuh0UsU*46RBDnMA;9d^Jf@F%$=$TXfa;m zI&Te0LCm%Y86{id*gMX>q8(92dmCz0Iq=1q!h8R#hkZt7=D-AFWKOw761SM diff --git a/secrets/estuary/pdns/auth.conf.age b/secrets/estuary/pdns/auth.conf.age index acda45b..7dd41b2 100644 --- a/secrets/estuary/pdns/auth.conf.age +++ b/secrets/estuary/pdns/auth.conf.age @@ -1,10 +1,10 @@ age-encryption.org/v1 --> ssh-ed25519 n8CpUw gSOLNKBwaCiP9TqcaIBrRF7HnQrXziYl13GzjVS1ryk -kgXnpg8IMVfNnb9meGPbAYGbgkeiWF5USDd7KlJGJmA --> X25519 oL6s/UbRmFIcZ62H7766Q0Bu4KoFwzICgGPB/ogTvj0 -FTWqAvm3Eq2AzhC+5xAUGMuZYbVtrPt+c1QBtXMdv/A --> 54{PX{A-grease CyetKe> >}$Pn iQ)-0sK r -68Ze/tRYRoVy0x619dD1ibTGYaAGoljMxE2Ll5Sx+V9jRzi/DHtq/xyQTgvJfv3z -JM7E+KJZetXLLlvpOGKw3GBm ---- TWJdBHQyXz0rCxKloRqmXut0GODBw32Lwjnj9gFJAFI -!= I0rJv#(2R8 [-VI}p,}vjH#qJ?!v~P \ No newline at end of file +-> ssh-ed25519 n8CpUw +WNV+VmndEK6SO6/M0Mh7XdMSquucY7JCiP1vzoOpzo +JnOXYQ14pYWebHAmdkBz916L1CtE6vzQuIq3wi1cQT4 +-> X25519 drGGpRjQ3kFmp61N+iY00xmoBzcXwZm0FQsc6DYp/C0 +bEHnwq7dkfrFOHGiGWZC4CT9PIndHoaj4Od4U9xpcKs +-> a3$-grease +jvREqtF9g1ba8FTAJ6d6z6AjWLn8+U5dbQ5awJr5VHjIxAKeyP6W1TxtCkOXAXqE +d8Yk0M+aZi4 +--- KXJZwwgadyYXvRvO2iL3Kz9UtXhVFvJj/GphM24WH94 +ԨWW5q=b~MJ~LdB?INm=P0_Y,^Gi3 \ No newline at end of file diff --git a/secrets/estuary/pdns/recursor.conf.age b/secrets/estuary/pdns/recursor.conf.age index 2cade17d97ed867ef890d3d0a64e57a1911b0398..d7467c3fa8cfb5e801bfadf9afe969d77dfb51b2 100644 GIT binary patch delta 395 zcmV;60d)Sd1FZv)EPqZ$d3iZ>W>8mHO>sjsW>rW=R7q1pGfp#YF;F%yHFq^bb7DwW zGj&IIK?*{1RZ?R{P;G8wHgHNqH#16XLorHqY-~wMaxr5?Z8uCwQ)6^yQZh(GSqd#a zAXqXrH8D9LHgH%ta9Kh~aCA3eI7v1#Nn%qqVJ}K=c}+z(Lw_`PQ%+WKIZ`h|G;eG{ z3T;twaYkV`VMlH-P)bK)D>FlPVMQ-6FIISMP%v?NMr%Y=X;v{sa71=R3N1b$N_BHt zA~Z`hEoX9NVRL05FmO2_D_<}QO;u-VR8(1ZQEg^ZWmGXTNHQ=*VnkC%R99GSb!%Br zLu5y0NHJGQZhvw$Vq#iKNeV43Eg*AgOlDbUVmD|(WJzmrP*gchI8$U=a#eRsY;9?2 zO+{idMM!UAMMhObK?*gjfD*1D6Wu$ydI8ZboinDIzkG611=X*WR-1B-HNB<8Gk&lo pIq=lMNqEj~Bh#z-Yjz}hA*8!(J5Wp}K9B;4JDUckIRu3FJH5a)h93X` delta 400 zcmV;B0dM}T1F{2^&bT4R1O?5CwGg(+TSqd#a zAXqXrH8D9LT5n58GH+%^Gfi)6GHPODSZY>kYhr0{dPZnCQh!l&V>Wq0XLNKycWqKd z3Up9aRBtO~ayNEIMO0Z~b5wXpXJJ%WGI4h=dTnBGGD~-8Pj+%?Mlm^S3N1b$FEV6j zEoX9NVRK~)Mpk1hM=*MGV{b!dWMf(~QD!S^c{h4TWphqJGH!ZkR8nntQFJ+1W=MB( zIaWwbO-5@qc7HT(bWSljSXN3-FA54REiE8PMs8|Lb7@*IR(4cqX-GLaMNxS%PFF_LTfcacrkNxZgyvSQ%+=0a4~96Wi~llVo6s>Gi*6( zM>8^ba|%>3NMlArVn}&)S21%%YfEurI73rRM`L<*X)`fuS!r)>HZ*HlX?A#2NeV4K zAXqXrH8D9LXK+SCD`#m)LPAqBIZ$(CW@vC|LswW+Q$;IrQh!l*F>*yvcX4NOMK4A$ z3R+P~cTrkbMRRy%c|ut?GecB4D>!yGa7#{acTrkJdT>;3b4PP)ICfby3N1b$T}E3f zEoX9NVRL05UOq7(Wo^aZp+{H*_^Qa5672VOB~wV+t)k zAXqXrH8D9LaWhnNY&ke_L`XGhPDXQjRdiP`VoOeTS~xXRNPj^$a9LwvVo`NQ#DdHL3uTCP%kfSNGnxSK{G>aL^D!F zY)x28HAYfRN`FC5Vlr-0PFXWecM4)?ZEQ#}cz8utOjUVLWO+#|Ohh*{bVw^hV^mab zS9eHv3N0-yAWCjdXHhhFIY?7AO>IO_LN$4CaAs+7Vs2+~a#dF=VrElSb!lx!ZAo)c z3jN(vss1^n571z?DaV#w5{O4PLPjcCh{U-mmY2P}Okn#MHYr(QtLSM?LuwYRXuQp| zHVSf|7Cv7@)DK>*#sU>)z+bLo6VZHj1UcC65)Q(5XK)9s62U=5K4HL^zqiF0u~O=6 dFiggmp#5w!2O)?obMA=vw72ZEc1y3{q6|xDtqlMG diff --git a/secrets/hercules/binary-caches.json.age b/secrets/hercules/binary-caches.json.age index 3a5ca768b0283f922156b1fe5c14c10382246fa4..980af15401105811ac06e68414337bf0125138ed 100644 GIT binary patch delta 779 zcmV+m1N8jy1*!&+EPq*eQgC`hQb}%WPcJWaYC|$LZclP#L^nfvcWQ1|HbG-~SVTBR zM0#{cV+wFacX@YIP*_b%WkOjpR&Y#7ZEiPHT2o_rWoLLcSynK4bxLP0SW`7;L{dj?D`$CHYH%}5ZfaUtI5jmz3N1b$VPJSj zEoX9NVRL05Hg-ZI3QkopLrOAwbar%TS4J^RN^wp{Y(aQ2XkkH2aX~X`Hg97wD>X<} zW;jxIb#HDrcz-o$c2i7tHAi`IcV|jXGI9zxFiSNub4GeLc})r}EiE8JFDrIRNK98! zR!TWVMpR^VSu0XGP-#zVL2xxWX*V!bcSun$YD{x#N>vI1SkRa>*VldBKV{jY48`1^ z%%T0if~VOiNhMR^VJ0tN9b+U|viDN8N0rDFr^_~v%6}#y&|j6Jra{0j0vc1(#6QXf zZ@FH}PZaLKSVQJ(Mu-<~{BdX+Q+%i8QvMe^1RjqLDURO;^)@Qi&jTm747*-F#toRN zE6TOj4#Z(IRSZ>Yuf+_vn!3=iMgeB2VE*nA3WeQ{tUOVmpcK3aVT^Cb?P5Njv_yg2 z3z!m-9)H5xrF5XKISx&jCmvzy^6UCH9`YcU-Bwn?UfT+OXOsKogeS2_7Kx@n?r}A+ z@Vau6qyKcKE{XOr;7>oSFz&DaQqW8Mz`_-qf&s2~FFRDJa-O#9@pgAPhbM&Jwm$nH zwm$MEW>&$*4f42Z(}yZ{?>r?~9FaY7+qbY^p?@@aH8|qzJYQ)6)$=YTnOrCI&sUxN zwI({Ol_K$$7|eqc_;iT2{*u#?dk_BEa1P%l-{VN$lovPKhvb|Ur;_Hj=6M#i_v=Lp zWxx@KGfu+Ih2)O}VBoHX06*-U?C^HDe;_6K>Nam3Mf3ADQP48-RSYzKAZ$e1SKI{n Jj|4=JpPy4POTqvE delta 721 zcmV;?0xtck2Jr=uEPr-rPHAvtFs3N1b$DKaf* za%Ew2Wgu2*Q7~2tW>HyhQ${gIab$H_Wn^nrF*Zqg3N0-yATvr(K|)V-LQZmQHB?78 zHF_^nP;5$dVShnmdO1ikIcI1^Yfo81b$ClsSqgipgCy|L9R9z?7dp=&4Q!2Nv~m-E zSJc{Yz5t#1k^rdp$=nWsJq%>0h@@)uIxp0yJV!7_&{9|nYhvSONytHDx8An|4@D7p z(0*oVm@Byvvj8Dc5|J|n*gr6J#TJfHZ^?p2s^ayY)_(;3@BaB>dM*jkPVFCR)_8hi ziGVVs+u@;#<7qz<3|AFsB)?@RXM-03-NdH6FWyL{y*qndQ>wj9Dz~@ zVhwWcOt1%8n}!1j6z%*i^iEESM#d%i`F`=38TbPm3qgS=`Cx>XR0-!j8$+5ZgA?O+ zTE(Aq^naE>oH;c5$WENtC5*;Sp4%RHuI`ak#qJO5Jzf#)8P~(l6D6+)K5e&&i!=9x zXLTJUL8D*_Wu}BM=C7hNPxBq}Cj(>?V|*lG4Jddnq3#T?>6lw%Fo2;JnF~~fNfEcW z?)8qyTNV+)c6!U(pT;2g}Dl_<3nn%^aE>cwXqko4_e4X>|-_S>@~$f DKoBcM diff --git a/secrets/hercules/cluster-join-token.key.age b/secrets/hercules/cluster-join-token.key.age index b5a571bc2c7b4fd27a4583e1d6d0b146fce39424..1eef06f2fd0604e62e557087081cdfde31aef308 100644 GIT binary patch delta 610 zcmV-o0-gQ71%m~UEPq5zQ8;TaW-Bs7R%LonZfImeWqD?KSTHLvPEs*;X-IT#O-?Ir zVs=DGNeXQ@dQ)>YSTJ-qR7p^3cM2^& zAXqXrH8D9LS};*odTeD-Gevh$c2+}aZ$xD{PXBFg8Op3N1b$aVt$+ zR&!T6EoX9NVRL05I5Qwoeor(y3Nck`G-fzNS5|myLr6MFikK=T61tKa4`x;XLkxMEiE8HaXDgaLqTOi zSXVZ5Z&7GwVs0`+IdN)bZZ$M-YgSV@Gk0S~F>X0$dUFcg)&7D8dXYjkz!2(D5c$IwEBzTSZQ%6&({OMml>KVjS?mwu#;8uP`nBknqX zn=u;z4k(~(0}#bVO?Z?m5c&iZM`sMRVg7C`VswtLE4mJn8`YV_F6d;~>Fn!nBL_%q zD~@Ztj+f{<(`y9Mr!C)sT^voN)#u2V`ue)|2|(acCGCbQ zs@W!UI9ur0T&Z^hnPGPjX>*3N1b$Zct5a zVtOrSa%Ew2WguL5E($hOIB9HHV{&C>QfP8-G*nGPGG%F1c2GfOMoDL5OEXqOZb54` zaW+gZdN(ptPJdTaLu^D$Qe|RSP;XLDR9QC)Z9-QsR&rN%b~iaPPGeVSPfT$|WkNN2 zYhq(bRYYi7D@k@)W^iFfY))=Da!N;1WN30UbV6fDZbWc#Sad}%3U*daK?*G`Eg*7M zRdh=;a&LKSPgQF)Mo%kHab#|6N?A}*XjEZzVsk4nd4FtYM0!wbV^s>(G`AamYHmvC z+2UlU(`MHo^0L7l8*yyeKXw$Nn~2jg8-(f#^p?z~yVP+e*lQoLDT`%VE**kXOk-q9 zCB?qst4smHY@{ZZC>{8XKW0WV*|sMK0A%-gfn>Ko@lc_cwnRDN_8+!8K>WkLZ?sB+K3tzZ@%L$x-#))};^5#l=n zHu}(Zb(;5l_9T@hA%01;;fuL5p?&HM*u&%VVZSeLi)f9^TjRauv$FEr8oRzpouVoXkGO-FWlaAz}7VM0`9XjVy1O$seO zAXqXrH8D9LSxZ4wT536HT6J}9GFo$3b9qZPHe*$8RdzW?bAMQPRyRmAOG0u^X-6_q z3VAYNH&RM;O>=K*dQ5e8cyBpzYGh_HYeGS8YjjyRG;MHLRWmnOOgDE`3N1b$eR($_ zGh;1ha%Ew2WeQq&F>-fjQFeN8QZYg_Hf35+NkdvVOImnGNmF$}Z7WDIF-K@vFidJQ zb44+3Y-m<;Xn%N1Y;s{Uax->HYf?rE3N0-yAT&2lFi%-@R8uc%R7*`_PC<7sH#atF zWoda&X=_<_aClfxZbmjWGkRKg3Z7;dpK#TUspn&ZE?p~)v9kr&XDo{NRTrC delta 402 zcmV;D0d4-a1GEE>EPr<^Z){dXcW-TZRx>kBZZb7detJ~TU7W+x*cN+K{^He4nkGd4R)3OP}3F?m5@G;b?NWMfltL0552cS?9_ zb7w>}RANs_aer=OW_LJ3c4&D^FHZ_BEiE8nQfXsvcuFyBP)tX3XF_CVYhg}JLQOAt zS!`@|I5AarX>ev(YiU_UFmDP!Wo=YWEb6f6vRgC|8Wq2ZEGPgM)#ZS0kU(A=Z4|Ch wZx5dr>ikAsX(r*5P70E|P}HKqC9QH?F(Gxe3mAj69}8`-$NLa2s_s!wqb9wIZ2$lO diff --git a/secrets/middleman/cloudflare-credentials.conf.age b/secrets/middleman/cloudflare-credentials.conf.age index 733d147ed94b479885a73e0ffadaf0b9e4c920ff..100e18b6cd5bb0e8d4082379a496e1d0e525451e 100644 GIT binary patch delta 466 zcmV;@0WJQV1oQ)tEPpg{FE1-qMS4qPcvVznPIq=>cVts!M{ag8YfWM_Z7@`EIYLr7 zN>MdfRSH%{Q*>rBd1FCscX2g(cQ{W;XD@SUS4J~QPIhu~aXE2vD=}nvZ+J;sFbXX` zAXqXrH8D9LOl~h~V_8R9b#PTjWN3M3P(?6pK|^RzZ(3zSa(_rTXi95%a9U?MM0r>^ z3R7oncu+ENcvx;mO>s9XZ&x!(X+%p&G(=%SOEXMDXLm_vK}=R?PE0~o3N1b$cq?~X zb}eUeWnpt=AbBxBWl9QCXF^d>adkv`Yff}eQ%zHAH8WyKd09zIM{jmAN;gt5PB>#{ zR&h`^LUKz_HGfnwVNnV#EiE8ObxCGxXGB+VNK$ocaWYIfMnXbGYi3$yVNY^MVQn== zM0sUWa!@xncQgvJZHHVPg?ZV0exOG$^r{B0S6@J&Kv)x-@nyrz$58$AF>F|*bpVXI zw}fIEqu&KpvZ%ue}FMoJ2PD?>GWHv8Zbb3`$ z3TSOYR#Y==Mn!HzY(rK;Sw&cIHFqy>H8^2*GGS|abU|TOHBEDAbWBiH3N1b$GGHPh zKz1!>a%Ew2WgvPZZZ04=L0M%AbXI0*Z814Pb!}5+H8e~&Ol3kjFKlU2LUCtjdNoc& zba*#%HB)LtYkxI0dRJj&dNXcmWO_k0a$|N@HfU09I0`Exac~@95O*nZgSwTun zc{K_xEiE8TG*xwJHE3i(az=Dza8pcecu93hdN)f^T3C2-W^G1kW@JQjXhBv{V^Ioo z9%ytCL$tXYfWahgSiyEe5AQn1n*UbGtoR`R=i3qA#dAk`MMFC9*%cWa5$&fsGw2L- z7aYn7KK&ujwD%300l1{)eswq{@if@+qW@YY(c>xO`Mqa#?N(}l4_;7ej4q&E|BO;h wO&uL<7}}m62PpF<_VL`^4n}JG1}Np#kw?3mb>9*ysP%@b&9<6#7$qEmbq7wog#Z8m diff --git a/secrets/middleman/nginx-sso.yaml.age b/secrets/middleman/nginx-sso.yaml.age index 986c643b7b641dac34271fc249b17d1ba9eaa608..7a13f3ec697512d22a1cd4ddc17e0da0d774b655 100644 GIT binary patch delta 841 zcmV-P1GfCl2IvNmEPqWyZ*yf;I7ezQR5MyjO;1-aFkxzCI8Q`YRB35pbvH0*b968` zFH?C%MG8W8HbZu5FM3aKSVwqNb#QW2V^%LUHBMGDP*iPnM_Mm6Vskl6OiX!8K?*HC zAXqXrH8D9LGjKRlM`}lDb5d3|ZBM`&a)RCiEsMt@E-SY=37I5$f~LUcz# z3Su>CN=NWxQ!;gQc4l%-VpKwB3N1b$WL#k| zH+4ZRXL4m>b7cxOXnAsDdPYxWFIZw`MOZ{IaWFA)b762~QZjIFHfKa>Lrzs#W?^t+ zHfdp1Ra8e&T7PbFWLSAZFi}uLbX7-63NbNHQd4INEiEk|aY0B~SWPQbPE%1YQaDs` zZ(&1tLsUmJQY%zrYjbiod0J9*Vm3xbNjXUh3Wv2h;G^HPFOPy1d*0s8U?65*AjX&f z81GR7uhaWDa60U>kjIl-5S3&0mRnW!wFelWy{vF3G=J}j%4D=URceqGVl=9R_eE2P z?e0{{CyMe}r;P_UD+AZc_{J#{efhPxw0@&BLCO3wVZgfi1aMZ$r zUBPawHGePjFzsD*ZNFWx7EhN${=Vx3sE_0tFFr6VV=vzexrpJC#lavl1gxaV2Msso zs4FB3uqo+Sy^+WoK|esSiKmKdp%~IpGF+oQN|3dM6Ii?w02*gZ`dfM|B*CDYqxA4V zJ^lG8-ZLnxk=vKAnKGxI^My_V(DHPH z0747-#w*pRuq?GRcA8oI{oZwqe2JdG+{l?Fm2qx}4zR{hg&4}~Ye#+mH|h^#qx=C{ Tl=T$+lcEhldSV$3ELS@Q%=u`x delta 814 zcmV+}1JV5G2F(VLEPrfsGgD1=c`!m&Y*t2NbvZRuNM=fFR(dj6OH_DmLrya_b7f9f zZf!GH-KkS8q>cT1z=>N>gT6IW$d1O=(0-V+t)k zAXqXrH8D9LXHiH)QEq87Rc|+8Y%xVuWix7Fb#pXGb74a-Pk%yKQgBU1QEGWXVN*q8 z3VBFpQZFkvH(D`pb#X;GGcdHF*HYONJeyTY)v>=OfyniN-;1&3N1b$a4lzY zWnpt=AaP|1b46-SbX0VDZBS`xdQEa|K`UA-cU44pQZ{#FM@UslHF#=yOLA9sHZx;s zLs@qUEiEk|Nq;dVWCOJzn@c{yZvQ*2>SI5qCiQPh-`@>Qgsy&RmZ<<~SpgOzx`N*{aG#JeuW8{S zI7~s_AP=Icz9YxqN&RV4tC~Im{<~wrj(*=UE_&!GBCAaxY2miHFmLN{UTO$o})6EOEr5 zdX%s)DZGAhs6f#ooPCecq$MKiWg~UebdTUzL)r{`s~r4GJ&((kQ{c5fS|}$OI@Scb zgQS9wwB;5qvCfi1lEZ%M(B=ILf^%HsX}4(;rL(#QnDk9jOJNkDWHQ6h8p@F!`Pi)0 sYA2$YNH)Po<~7cXOlj4Uxd$qYuYlP;TX!)kr3EuY7&HH)Hp%SG2+_1-@c;k- diff --git a/secrets/minio.env.age b/secrets/minio.env.age index 0b819fc6b78da5fcc57ae3934f29e88ac2c13346..5fcf23377ea0dfb6bf848fb813e440337f2f0c7e 100644 GIT binary patch delta 474 zcmWm7J&V&|003Y?1&zx&=p0-;sG(_-wuy+CCf6j*S4o@82Z*F?nkLu2Z;~c$uAX#q zaZndQL~&4VadSUV5I^CRQ*_knP;e22135VH`2)|LBm0MMpIbCFkefYjT5@6~4IngY zye7nQR?8E8Qk(I^*v{l~D<4`D#7-*dgd?@ms$dx0T5;Wtns|fC{B*S_Dq}g1sJ@ZN z^+6;e*hSPTS1KhMq>?f8!Svr!EHr)5G`1u8UUw5D)?BB?1GO_^9Ch^CN9`4 zOA*O>%QCCJPe(!z<{F@bxm%cWc*u32%gb$GTlEQoVHj#VHk|RsCcOM7c+saJDbF(FTWm=zwgrL&+hcU N-}|~$|8wy4=RZ&Iuc!b3 delta 499 zcmWm7J&V&|007`YUE-$V9Pk6>wWe*ZP0FFzrk6Htnx=1>q$xV&yZN}JN!pTRuu5G8 zK@@ZlofX`?;lRN`4#xwh>xqMti-L=shltM~c#cmzIr-??vW0}sH9?@0xoF6ft2GWuNtGSf>`4aDHICm zLe7Sn*KndrK=(^xN>OB7GDl+vrUvwLNp*|m+`%1+?dnMDUjNItGxuN3-t65I&003Z-c?mlRL%fI--C>f|q-mQj!w=HhHfhr|>E0|!5oVf?w@sU-Y0|z) zr&KmU2cm+4sOZguc=IIcVS3)q0}%udp1gV$^%p$w++Dc0@Mv{D1-!E61ImvF8zr_c zlA1S6+>v292H7L?7IW0sjf{!d&whv!x^P8yDFBeYW&h}71KbakDp zUdMz+j1rH<*GPt?iEvVY-4;%8UEGyHE@QNGQSE2NIdT#r5VaDC3x-TXw%N<_?SLxU zJ~l(`VqniS93nQMF|5a(VmYkTlT0&DX&x|mO7v@<+S(x0jvtPJkEPS;R6Tau z!|Jf6Qd9IVtU~}CPIZ4W$|2gSNgBZUd}Y8;TTvHc%C^3|_wZu%_2~!h$@2%lzU&64 zdcwQ;{+W3rI)2FB-}&)-`Pll=(Np;ITkz-2hs#UP_V*TFz29EMp5K1)Y3cEkuP^Tq Y<}UKjzWsa&%CC`v09+~nzr zKQrCIqC?O&$P;q|cV|JX?28H`%1FnVaiN-W5>w7dIH4)6%jyj`h6Yv!Z9ypvvN;S? zEFba+x?VC#iXxa2sbdka#(v<96K1CHj8v^*9$PfUc`{y_G?a4RkSUtB^8}&op`}$a zewYG>7?u0Zbdo|ZNqc-Znlic;t7eSPW2w+4{|hBOr`S0P;}J+krBm9FgvJeIl)8K| zu>y&mTf$&r@d44K6i;qQ)oIoVjk=Kc2i;mIC*d;6M9G0HxijLM1J8~ULf+^g8748j z97sGD`JHOp5pWd%5x>aw*#hg;7y6Fd(tW3gV{jlBRwzI@Gp3XJJCE5UTz8blhPYb;nu;QyWj$A+b`yKn{%vnX={hN!m)%V|GO| W{`|ak^VSJ^_sj9iFW2Ftlm7sG)~aLx diff --git a/secrets/pdns-file-records.key.age b/secrets/pdns-file-records.key.age index 215e75c9ecd3b2f48ab54422ebc42e7272405e9d..ff7cdfcd7c36250dd090d89b075cccea1f0c5726 100644 GIT binary patch delta 803 zcmV+;1Kj+N2EqoAEPrP>FJnt(N-`^EGeS*mS4>ZLFHJ;7ZZ|b~I4>_xbZm4&HB(f0 zT2OUTcM5fOX=QOkacXNuYfW@ecWG!@L}XT3O)qe2ML1P#Swv)3Ni}IXLRL0uI0`L3 zAXqXrH8D9LYf*YwS}#j#by90IVrp|$YBpk3PBKSpXJ|E4V}D9hZYxD?MPg-9c};mu z3Sw?}Rc293dR2E(cW!2CICoBIY*9!#Q({m{K{;hpPckoNZ#il;T6b4t3N1b$cr9mg zWnpt=AU#|yCtxXhAZs)&3SnwEIcHU5cSu?`XGBGMWlCv8HFae&Z(~F++X~rC~2NrdfRSGCq1vDZ@viS9B)AKn|sVX?v*1zt&?PFYs1KwjSD<{X`0Pb=S zxUm8bNoV1ZZ0z%6H553)iYV1C_Wrdku$k52w*rY&RNJi1sU&uK*pAcS<+KBQ!P@Q9 z3cgdXn}7H-dsLYXx4MkNI!(!*rt#UBBWPN_s1d8aoE3t={bF^3YTBX0$c)jK+6qk?MqXXzMqa4gX`bTFIR zo~F~E1Ib%PJdR;^x*DWM*@1p54rbP8#fDPgPk&Ow@#t|XS>VThT#l8xWVE)>BVX#y z4ZIWvW%)1+{XgMmzZl*m3;R91=|okA?2>Pp1lEBAXLl)jB#!Kyfi;$3V8g-JkDDzh-I`3#Kqf1iu?9Zkokc0a6_RrTlS@#` hNE{Ps=8h?dXTYATt!*}($tf3jNUwVSJZyjgsC>Z;P$K{U delta 751 zcmV{MER%&`;R7-4fcrr_B zMo&0VGzxS$aB+HMFnMQ8aAHL`dQ3P+XF_&4W<_F0PC_ZdWo&SamdLM`TH9Y;|~OPeo8!3N1b$MSf9j zY%OPUWnpt=3Q%-rc34tHbTcz6Fm^|3YI-nMR6}ZRcxhrvLqkw#Zc%J_QZP1ZS!Gc& zD+(ZIbYD`gUcyvTIWN=J5IAdX1dO>PNbZkRvP)aa!aB6K+R80!| zaXB%yPI?7TG9U08$xUanxlJC+03v2985eY-u=&*h^VIT{0kB?^PI4v3RJ=VDf8YKC zrd+|i_R`-aB#tkKeZvW5#%icFpZC{6(ipJU7E`rW0DoPLlXlU^mC*U=%Tg2hx*jd1 z1xYFtlZen0MUQ#`AKv9QS?qStB~&Dt402yoSWn3PlK9O>=OpT6|LZg45elVdMt^(5ZH(p!i*liZf`(#@78jt(W^5Q`D#ulg(P_H&fSR$k!{qOlB^45f<; zmS;ZR+L4wRD9<Ny^1kCLQlMRF(l_YEnVWAtymmZ3 zSyns}ge5Ks%X}``eiPbfHPtbV zpO1+Wt4vyU(sh~-={r}Q?Ngi3VJh*kDltkd8&ga#aMW{YIJS~_ed=hoNSB#Tvw&C` z2oo+)QJ;!6e^@B=>Y_@9V2Qr9JNF_7vwOS1)HLR=)5;ZH8{>>vQSiXo*tFT~@(QaV zj_}|V8z2}oOIh(7<|MZZ1VjxL=!+o&0$P7hN^9cePY4Re_<>i)x zqJrHAV6`MTgN303gfx7>YMgY6=F_3CuG37;AF*hLF=H$DT$*aO#tO+@Iv8P_IzH;`4I#66F}L-o#u!FVY|8)`C1$IGtY{%=uXTOnRt&{* z(9Ve=+~D+uTtxHb@{ony9ZgcMnrqRF$`LB*=BAgp?$KC9#Tw~})~_)=nPbRmHPRxU zwe5MZcwn6!*Dg~B+sv?75ufaKl(q9N>FlNxWud?!5wSG(aFWsM*}!-L19E1Nw&(lw z&<|%QSo->q*v^0rzF<=}9o^pMREtEEs6=W2qy|MUmaI^AUy*Se?G1Q&iqGmI0o5+1 z<%TO<{eqrd?v5rm0x00*Y-8?fpnGt2I*3VSDF?_5Qdlf z1NDP9`~RnPSvA=(hKiD$+Ey{LKm|2(v2Mj|GoUAPuSR0PiF^tz44~1EM3qIysF+0M zGGC)jTX~?TN$GY4QX8x-Q<`KjsLFo$kK!t7L$?cOYB>A(lTQplElUcG(;np+jk>!W zqNWAcAa_hKJEAEiY7?v4dcmTw4Uu9mQ@(M#4xx@A>nya^6@Uw?W<1f(^|+ za;%YE9p>hFxDa}Vo=R{WsM1y_kCDOC7G-H(+7nu=09RL6GomM?OO*suE_WlB7v`nY z5)+C=)1?U6&`M;N`2)1dd=+@}0sQMfe7gPTpYOf(_J1DXjC=q6V-NlAztETT-FH1z zfA?)1zxa=5KKZD5ntT1H&wcj$FTeF${m}znx@~$s`^Y@;;N-$>cqF$>cqmOx`ESum^9R z+QlAP+EWj;XceJUck$vuM6e*W(8ID+^djuZQ@cGV;0UL0P9C%>7h zE-giuftZkF4Fj%fu5I%EBI7HPMuO1_^@Z}Q@vU?cIhxt@4bL?1f@J@4K zUmXQ`yJ_b5(g*1NqCi5>ZIh5oRKG3R#%NYtCzIx8Es_R`$;YA|6U6hcYZk)|g&s$#YVH*6g<islrT27gSV|K6?Za#-vpeO@wj;Eg6ETYvao)0)3dc$?i2X)y~XAv0&Q#!SWy~HTlDbtl<4%P%RDp^5Z^48m;`$b#9 zm97G1XQPw^_I2JgxexCmX8;!kU64~6q98&C1-yt73tyJ`b?t;vl`+gZg^(~Ox@2L` zcaung_P|dTm~itol8tL7yO;=Xg1JWLfC@#8tRkoISeiq@RpJr5#0Md$ZMEC-<19e%Wkw#n-#uHeu;7w=G&;O-qQg zmgI--9M2Fq(?)T966BE9!tH_fGFoC#Vp$hjfMIjg7^~xkpv7bhn1`OuPc+0X6>%Sj z#DZ9Db6)LtM`J_s5!^_ziV+sCG3xc%NKZZP*luQQbMj8~H6F*XGvAiUX)(GSZ=c1BG);*I@Bj&kbX`Lq(ysmBd1-~X{ zP-kjI4Z#j5EW*9yafy_34GwB-TMe|~x&i5sb0qFk1Xv+~!SsU)A0v7dvuU@MWe4*Q zQ6`0Q*>yPSGDvkX;_`b*E*Rc^l%%jXa@*G;jT&h;7_eSWIg^msRPJckybyM1aRWVv zHhK<#h?XMtsF^r^>4)_$gDt_!25}q?EaL`Ynd&Ny;aHG7zHa;fZzOL{P{}NMwCLk? z3QeA_BnLF4jvfK}`OuvXb{nN;m2)LZ`a3y*32+Cbn`N)%_(c$8uG3wQ3KUkDz`@PMYmwo}Ba-y;CSe z?0SjaMZ1+b9i0vYeN@($0O{=pZG)U4-8L9HCw8lphe}6q8Y{!KnxuV?$ugKKYOoR( zC-iK>0v@qM+EZt@k7U4q)S;`Z8EIhpC0odKXsGxp9cgh5*=~jfB;Jvl<>}70cI9x{ z+a>VRdz&}7_VCSz&;8)DcmH=8?mqa&eebR8N8K>f8*XCe*5xMFMYds`1&V5{#1_M z|MKIvAN=DM`{vJI2hMlmKmGm%x%&vZ{p*LXb+ ssh-ed25519 HJ/J7A A4ybdNG0bDSIBDnjktzi1DpmGrkvNt0SE+YqCHNokEg -gwL+6yhXPM3oFkq3S/4PlWzi1h43yBRW1atvYbg2Ax4 --> X25519 R8AIKLRKCLCUmJB3A/z+9iQOfwbqNRm7GgZQX1PgHXM -nP+UagGakkcI4c59CHSldzGvJLzDXJE16u+LggSLUcM --> iS[]-grease -NLqKdqlhdrhVyfNihGFsQC+jvA9wu60 ---- KDffMrsRX2L2uqdu0ReWQnIcqkYjWfNh4s7KgXTYpDA --)hi@X"ĀeƩq}Ja&rJ !I:7;~v-*=eNKbWp#BmuxqXn+BGaLȂDerO1^t]c"dIRRG|Q \ No newline at end of file +-> ssh-ed25519 HJ/J7A NqWZhc47n2idkqNF0eDDxRnSxqVUDjbcO1o0y5BP1zs +XxVv9/92wbfmVjLkcaPa2a3tG3Sum1BMah76TlwkWDo +-> X25519 PQawUoZR/P8odnakuANiD412yhi9KUrMUNJqAajHsWU +4WfDINFhcVwpUNrauwPHKcj12WUHIsBoDcfwUtfGMDs +-> u-grease s] +jQtjx5qzgSmYzBa1eg +--- I1w442aozyjdXob2uZTFHsPllJZvTUOVSYQlAf52Mt8 +fԌΓjJ1U` 4K2GUD7T*Uˋ@ 1b.^yN ssh-ed25519 /EJXvg b3pIwQhBXVof+e+HdCC16M5tc0VuUvvKF+Fj2pytlEE -NwnBuKXpj9eP1k7D+U2J7Ms7q5kbB4E2zpH34Sx7MzY --> X25519 w3Wk4YORf+FrC94zpv8TqrwEWDJpuC8IE2YWn6TWRns -xWF9B4SfS2Gun3xMJodwU0WRtd1GmC3NpyW0xb/K2Sw --> IuQD#-grease gEpQSQM` -fjTI1cPFEs0gIqaF5NDOQcqNmfLDStGXaBUjEYa/JjAV7MCTRjpdUU/5DtkH33av -Ji1k8hfgxQ ---- UTwjr4FXUeSfijgp5VAZIIGmV/lsfxGwHFUHkC9jHrg -=!b&W\0Op([[ϟ]_4J8Ai93@~I‰5 \ No newline at end of file +-> ssh-ed25519 /EJXvg zqgNJtsJoogjGP75yueFFWd3oe0H64W5CQcujNCWZ0M +cVeKmN0jo/y7n5QS2Dp4U0uxK+jGwlQnwXNxR87z020 +-> X25519 J2MeXbL+kGLV3MePB1RMphd7XUfAiL7BTfRWut5lkTE +PlaRjS9QfL0R1wTx5XJNhjOn2PCG/6QIT3x8I5QG9wo +-> |#-grease t|Z9XXy p:XF +LPPVfms2cH4f51GHS7rSwzBOBQulDAANNYGwl22AkZfSNHotvpHdguuJ0S1D+aEj +d7jlo/xce10TcNJwKYNeTn775g +--- l2P0/sNogMDU0AmwSuK8BPJnXTj3a7jwwQ0P7ho8Etw +52F4bC涹&iK/AYx&ԭ/gQ&zIg$dmd \ No newline at end of file