From 9750bc50522a0495bb6bb05921024e991388b8c3 Mon Sep 17 00:00:00 2001 From: Jack O'Sullivan Date: Mon, 1 Aug 2022 17:44:08 +0100 Subject: [PATCH] Add OCI container VM --- lib/default.nix | 8 + nixos/boxes/colony/default.nix | 10 ++ nixos/boxes/colony/vms/default.nix | 34 +++- nixos/boxes/colony/vms/estuary/default.nix | 33 ++-- .../vms/shill/containers/middleman/vhosts.nix | 2 +- nixos/boxes/colony/vms/whale2/default.nix | 154 ++++++++++++++++++ nixos/modules/tmproot.nix | 11 ++ secrets/chatterbox/nul.ie.signing.key.age | 17 +- secrets/chatterbox/synapse.yaml.age | Bin 1026 -> 1121 bytes secrets/dhparams.pem.age | Bin 1231 -> 1165 bytes secrets/estuary/netdata/powerdns.conf.age | Bin 512 -> 541 bytes .../netdata/powerdns_recursor.conf.age | Bin 498 -> 484 bytes secrets/estuary/pdns/auth.conf.age | 17 +- secrets/estuary/pdns/recursor.conf.age | Bin 418 -> 434 bytes secrets/hercules/aws-credentials.ini.age | Bin 470 -> 521 bytes secrets/hercules/binary-caches.json.age | Bin 779 -> 753 bytes secrets/hercules/cluster-join-token.key.age | Bin 654 -> 702 bytes secrets/jackflix/mullvad-privkey.age | Bin 503 -> 436 bytes .../middleman/cloudflare-credentials.conf.age | Bin 460 -> 540 bytes secrets/middleman/nginx-sso.yaml.age | Bin 819 -> 845 bytes secrets/minio.env.age | 20 ++- secrets/nix-cache-gc.ini.age | Bin 431 -> 519 bytes secrets/pdns-file-records.key.age | Bin 763 -> 783 bytes secrets/user-passwd.txt.age | Bin 1425 -> 1559 bytes secrets/vaultwarden.env.age | 16 +- 25 files changed, 267 insertions(+), 55 deletions(-) create mode 100644 nixos/boxes/colony/vms/whale2/default.nix diff --git a/lib/default.nix b/lib/default.nix index 0fd5451..c1f455a 100644 --- a/lib/default.nix +++ b/lib/default.nix @@ -217,6 +217,10 @@ rec { v4 = "${start.all.v4}2."; v6 = "${start.all.v6}2::"; }; + oci = { + v4 = "${start.all.v4}3."; + v6 = "${start.all.v6}3::"; + }; }; prefixes = { all = { @@ -232,6 +236,10 @@ rec { v4 = "${start.ctrs.v4}0/24"; v6 = "${start.ctrs.v6}/64"; }; + oci = { + v4 = "${start.oci.v4}0/24"; + v6 = "${start.oci.v6}/64"; + }; }; }; sshKeyFiles = { diff --git a/nixos/boxes/colony/default.nix b/nixos/boxes/colony/default.nix index 2427510..ac14881 100644 --- a/nixos/boxes/colony/default.nix +++ b/nixos/boxes/colony/default.nix @@ -100,6 +100,7 @@ lm_sensors linuxPackages.cpupower smartmontools + xfsprogs ]; systemd = { @@ -179,6 +180,15 @@ Gateway = allAssignments.shill.internal.ipv6.address; Destination = lib.my.colony.prefixes.ctrs.v6; } + + { + Gateway = allAssignments.whale2.internal.ipv4.address; + Destination = lib.my.colony.prefixes.oci.v4; + } + { + Gateway = allAssignments.whale2.internal.ipv6.address; + Destination = lib.my.colony.prefixes.oci.v6; + } ]; } ]; diff --git a/nixos/boxes/colony/vms/default.nix b/nixos/boxes/colony/vms/default.nix index bef27e6..46dd901 100644 --- a/nixos/boxes/colony/vms/default.nix +++ b/nixos/boxes/colony/vms/default.nix @@ -2,6 +2,7 @@ imports = [ ./estuary ./shill + ./whale2 ]; nixos.systems.colony.configuration = { lib, pkgs, config, systems, ... }: @@ -28,7 +29,8 @@ name = "installer"; backend = { driver = "file"; - filename = "${systems.installer.configuration.config.my.buildAs.iso}/iso/nixos-installer-devplayer0.iso"; + #filename = "${systems.installer.configuration.config.my.buildAs.iso}/iso/nixos-installer-devplayer0.iso"; + filename = "/persist/home/dev/nixos-installer-devplayer0.iso"; read-only = "on"; }; format.driver = "raw"; @@ -164,6 +166,36 @@ } ]); }; + + whale2 = { + uuid = "6d31b672-1f32-4e2b-a39f-78a5b5e949a0"; + cpu = "host,topoext"; + smp = { + cpus = 8; + threads = 2; + }; + memory = 16384; + networks.vms.mac = "52:54:00:d5:d9:c6"; + cleanShutdown.timeout = 120; + drives = [ ] ++ (optionals (!config.my.build.isDevVM) [ + (mkMerge [ (vmLVM "whale2" "esp") { frontendOpts.bootindex = 0; } ]) + (vmLVM "whale2" "nix") + (vmLVM "whale2" "persist") + { + name = "oci"; + backend = { + driver = "host_device"; + filename = "/dev/ssds/oci"; + discard = "unmap"; + }; + format = { + driver = "raw"; + discard = "unmap"; + }; + frontend = "virtio-blk"; + } + ]); + }; }; }; }; diff --git a/nixos/boxes/colony/vms/estuary/default.nix b/nixos/boxes/colony/vms/estuary/default.nix index e860afd..e98a3e1 100644 --- a/nixos/boxes/colony/vms/estuary/default.nix +++ b/nixos/boxes/colony/vms/estuary/default.nix @@ -35,7 +35,7 @@ configuration = { lib, pkgs, modulesPath, config, assignments, allAssignments, ... }: let - inherit (lib) mkIf mkMerge mkForce; + inherit (lib) flatten mkIf mkMerge mkForce; inherit (lib.my) networkdAssignment; in { @@ -150,25 +150,18 @@ ipv6PrefixConfig.Prefix = lib.my.colony.prefixes.base.v6; } ]; - routes = map (r: { routeConfig = r; }) [ - { - Gateway = allAssignments.colony.internal.ipv4.address; - Destination = lib.my.colony.prefixes.vms.v4; - } - { - Gateway = allAssignments.colony.internal.ipv6.address; - Destination = lib.my.colony.prefixes.vms.v6; - } - - { - Gateway = allAssignments.colony.internal.ipv4.address; - Destination = lib.my.colony.prefixes.ctrs.v4; - } - { - Gateway = allAssignments.colony.internal.ipv6.address; - Destination = lib.my.colony.prefixes.ctrs.v6; - } - ]; + routes = map (r: { routeConfig = r; }) (flatten + ([ ] ++ + (map (pName: [ + { + Gateway = allAssignments.colony.internal.ipv4.address; + Destination = lib.my.colony.prefixes."${pName}".v4; + } + { + Gateway = allAssignments.colony.internal.ipv6.address; + Destination = lib.my.colony.prefixes."${pName}".v6; + } + ]) [ "vms" "ctrs" "oci" ]))); } ]; }; diff --git a/nixos/boxes/colony/vms/shill/containers/middleman/vhosts.nix b/nixos/boxes/colony/vms/shill/containers/middleman/vhosts.nix index 1c99ea5..915333e 100644 --- a/nixos/boxes/colony/vms/shill/containers/middleman/vhosts.nix +++ b/nixos/boxes/colony/vms/shill/containers/middleman/vhosts.nix @@ -89,7 +89,7 @@ in let hosts = [ "vm" - "fw" "ctr" + "fw" "ctr" "oci" "http" "jackflix-ctr" "chatterbox-ctr" "colony-psql-ctr" ]; matchHosts = concatStringsSep "|" hosts; diff --git a/nixos/boxes/colony/vms/whale2/default.nix b/nixos/boxes/colony/vms/whale2/default.nix new file mode 100644 index 0000000..526bca9 --- /dev/null +++ b/nixos/boxes/colony/vms/whale2/default.nix @@ -0,0 +1,154 @@ +{ lib, ... }: { + nixos.systems.whale2 = { + system = "x86_64-linux"; + nixpkgs = "mine"; + + assignments = { + internal = { + name = "whale-vm"; + altNames = [ "oci" ]; + domain = lib.my.colony.domain; + ipv4.address = "${lib.my.colony.start.vms.v4}3"; + ipv6 = { + iid = "::3"; + address = "${lib.my.colony.start.vms.v6}3"; + }; + }; + oci = { + name = "whale-vm-oci"; + domain = lib.my.colony.domain; + ipv4 = { + address = "${lib.my.colony.start.oci.v4}1"; + gateway = null; + }; + ipv6.address = "${lib.my.colony.start.oci.v6}1"; + }; + }; + + configuration = { lib, pkgs, modulesPath, config, assignments, allAssignments, ... }: + let + inherit (builtins) mapAttrs toJSON; + inherit (lib) mkIf mkMerge mkForce; + inherit (lib.my) networkdAssignment; + in + { + imports = [ + "${modulesPath}/profiles/qemu-guest.nix" + + + ]; + + config = mkMerge [ + { + boot = { + kernelParams = [ "console=ttyS0,115200n8" ]; + }; + + fileSystems = { + "/boot" = { + device = "/dev/disk/by-label/ESP"; + fsType = "vfat"; + }; + "/nix" = { + device = "/dev/disk/by-label/nix"; + fsType = "ext4"; + }; + "/persist" = { + device = "/dev/disk/by-label/persist"; + fsType = "ext4"; + neededForBoot = true; + }; + + "/var/lib/containers" = { + device = "/dev/disk/by-label/oci"; + fsType = "xfs"; + options = [ "pquota" ]; + }; + }; + + services = { + fstrim.enable = true; + netdata.enable = true; + }; + + virtualisation = { + podman = { + enable = true; + }; + }; + + environment = { + etc = { + "cni/net.d/90-colony.conflist".text = toJSON { + cniVersion = "0.4.0"; + name = "colony"; + plugins = [ + { + type = "bridge"; + bridge = "oci"; + isGateway = true; + ipMasq = false; + hairpinMode = true; + ipam = { + type = "host-local"; + routes = [ + { dst = "0.0.0.0/0"; } + { dst = "::/0"; } + ]; + ranges = [ + [ + { + subnet = lib.my.colony.prefixes.oci.v4; + gateway = lib.my.colony.start.oci.v4 + "1"; + } + ] + [ + { + subnet = lib.my.colony.prefixes.oci.v6; + gateway = lib.my.colony.start.oci.v6 + "1"; + } + ] + ]; + }; + capabilities.ips = true; + } + ]; + }; + }; + }; + + systemd.network = { + links = { + "10-vms" = { + matchConfig.MACAddress = "52:54:00:d5:d9:c6"; + linkConfig.Name = "vms"; + }; + }; + + networks = { + "80-vms" = networkdAssignment "vms" assignments.internal; + }; + }; + + my = { + secrets.key = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDBTIj1jVdknXLNNroMJfgy7S2cSUC/qgFdnaUopEUzZ"; + server.enable = true; + + firewall = { + tcp.allowed = [ 19999 ]; + trustedInterfaces = [ "oci" ]; + extraRules = '' + table inet filter { + chain forward { + # Trust that the outer firewall has done the filtering! + iifname vms oifname oci accept + } + } + ''; + }; + }; + } + ]; + }; + }; +} diff --git a/nixos/modules/tmproot.nix b/nixos/modules/tmproot.nix index 04710f3..ee133c4 100644 --- a/nixos/modules/tmproot.nix +++ b/nixos/modules/tmproot.nix @@ -129,6 +129,8 @@ in "/root/.nix-defexpr" "/var/lib/logrotate.status" + + "/etc/cni/net.d/cni.lock" ]; persistence.config = { # In impermanence the key in `environment.persistence.*` (aka name passed the attrsOf submodule) sets the @@ -326,6 +328,15 @@ in } ]; }) + (mkIf config.virtualisation.podman.enable { + my.tmproot.persistence.config.directories = [ + { + directory = "/var/cache/containers"; + mode = "750"; + } + "/var/lib/cni" + ]; + }) (mkIf config.my.build.isDevVM { fileSystems = mkVMOverride { # Hijack the "root" device for persistence in the VM diff --git a/secrets/chatterbox/nul.ie.signing.key.age b/secrets/chatterbox/nul.ie.signing.key.age index 3251231..7ee8a48 100644 --- a/secrets/chatterbox/nul.ie.signing.key.age +++ b/secrets/chatterbox/nul.ie.signing.key.age @@ -1,9 +1,10 @@ age-encryption.org/v1 --> ssh-ed25519 ZB3e6Q sQJFhvr8FRUhNhBMue77730wcbg28fTFnsszgerwEBo -7VzmwSkllK2wbSyFSCClvjY4X6sT6vLLPBAcXSbmnRU --> X25519 DufjAOGVQtGU2oiDCymV7rv9bdw5Llk3KjbOj5wJxxs -9sOvYKIfp+fUKcW6zbhAU3kwaUrF9PCBlu56qmGhOss --> m-grease s$ A ,2 =sKpm -lLRsEhRI4PsWw9K6uygWxFznKZSJUXesteKQ7hZ/wWJXkRHq ---- XYl7iGPy1+YfKOWNoZoiYvfFjctfqhWWzR4hMCWmXYU -𞄲K诛2Rp)w.(rh~w|%j蛡彴▏  9湘灻 0d{奠最濌愳馝礬Vag~"T -斃3\)N逽"I \ No newline at end of file +-> 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麨(=a叭Jfこ+镲歊杌須,(銙+W鵾?榋n逹~補>椇)汗単F悏X硆M4暫y墠 \ No newline at end of file diff --git a/secrets/chatterbox/synapse.yaml.age b/secrets/chatterbox/synapse.yaml.age index 2bea90ccb91243098548344db4b6a23643a4451c..647123e31905bf951634f11e7d9d5ef27b808e5b 100644 GIT binary patch delta 1092 zcmV-K1iSl!2;m5jEPr@rMrvhQbxb)lPg++iOJ-9|Sw&`aZ+LbwctTEfV_{`>Z((*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{@HMdDTf delta 996 zcmVHFPUSRZ4ntRC;k^XmWW{Gi^w8Z%;39Vr)`kR(N4_V>EbG zFiJQ?cM4B1Q#CkGL1|e-Y(r;rGC4IbPGwbTWnxr!Vo+x`NJ33fLsBq7IeK_eYYHts zAXqXrH8D9LWK3pfNH8&4PETz_PGfRbIZ821V`xWYV@geUczL8H(F^=a(`AuZ!mXhH(FCKSwdt%LoZM-Q3^f1rp)baH#V?NB-h#jB}|)fcm6Vh z&O04WNT}ErMY|o&tIhBEsnY74KaoH`$Bs{EUn8>q@lrL+yP&Lny4bsFSpK@MEHZB| zD%bq0?1@3L7|&k5Zz>{z4_sIXbTFnyE;CTn{Oyv1K7Ry?xiudrj;R_L2Fb zdC$;I@&1$NPqMg;aaVb$gCgOkG4D{2ys;@2Gg7tX>~$ax<#a2h~V zIiBQ;RrMrpl2aBz01!n}aM55d)G~;y5vI6`SE)XmGIz~!$?;0z%zg^ 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_D C^Zxq) delta 1203 zcmV;k1Wfyl3C{_TEPr8dS#nu+X<{~3Sxjb2IYmfyPeWriQ$|izcX=~qGjK37K~pta zZ%bh_a|$<4XJs#SGi`ZhD{MlmX9_Jo zAXqXrH8D9LMOaaBSX6p*XIU~yYchFKHDyjmV`ghjQfOjxYJX@ra%yB^O)F?oHFi}= z3RyI0K{ZKMVNo$vGIDNZNoIO*YHE3PXJR->PIWSMMRhktR(C{oQciI&3N1b$acWE^ zKW8&7XL4m>b7de&Uok*iT`M4dWIhTtHbq8SWNUdsIWkgHRY*)TM>sEddQomTRyHp~ zY;$mJPEKcfIDb(#P<2x`a4$$qRB%E!WGi`WQB-Vmb3sH#3PD;`dO=z%GcPM|Nn}Ac zYidSWPH|C2G*Cr0P*FKWIc_g?R7^!fPH9?oN>^}iR!%EqRAWy!P6{n8Eg)ntNLO@H zF)&$HQ$smWZDd+cc5iM=V^>ajcVcTRHcDhwLQiBXM1L@3XITo$>`r=V9xcIO!+nnR z6t#{pJ-6Yuo%QY7U_4gSi#QlkP&ffM8#5kq9f@HY>({(A z)^Au>7}m678ypTJHn5DBm(^v=#c3XA1M2u)7}(+FT=rt%}P~>L{oNJ6h2mZFI2W z%XM}sq8XBl3-n4N472@KKnKa0p!5FBf#n><(SK8~zTDCV27$_K$Wsk9wScOnf?0UChfKqTyj*lu9?H2TTo+B?)$ z9B$MDxjz!_JR>^8V!j5~S?6e!po0H$->6$!)}7|x-FY>Y__L^`52H^Y@Q$_Q@YB{ zQAjfly3lB6qK-x4+x?LXaCdQ}DuZ~pJaJ+x)gBKb-HL^6!m4*8YfTCkV0zu>^(ocO ztH=s9BMgV%2Grs#GT>8gev7p0hkO}m>wg-EAQDH$o-XQctATHAcofiPV?RtKpzTB7 z2M^jhWG=9K+l`dDov@}g6s3QmnhozB#lG~s4@CsPu(+Lghd0F?6MxTd5>vU6uy5z% znBo^^Xi$hU4V!-{S!cM?@$t2XIy`kP!n#boQ||Ks{NMK&|0)VMAKja+*>93W{eOMZ zI456cyZ7|3&BWY|j=P1djuNq2pOra!e>O_&t?Jki@|XH@oo2C}*1V${eJ~%*Klyk) zlMwxco`aZ4+K1FpYQtL7YYdd@SPt!t=@|5$)Z^T0Y|&MIcSxE_fz7H?Ey=RC?j$`+ zv!%W6A=XlF!Qo72VhX8RVs)wZ`YaL|fGxihE9LpD(I-&z)O9;x4XpF#@dpk|&rozf RV=&M4P=`o>B(ih^{-B}K6mb9m diff --git a/secrets/estuary/netdata/powerdns.conf.age b/secrets/estuary/netdata/powerdns.conf.age index f4df152ad574a034cc5456d20cbc63b55f55f3c8..dd1fb023539f574764a93cf4d832f22be9c2e951 100644 GIT binary patch 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)Zdu6Cla!EyHo%G delta 478 zcmV<40U`dK1b_sPEPpdbG&x8_R%&l-PGvPqM_Fw*YEwlkHBU1}IA~CHZFzBMO-wLh zXjE%#RSG#xO*k}ePIzo>R#kRkIZRYGLsKzzNq1IpG-N?$Y&Lc_Y)oT#dPinaNeV4K zAXqXrH8D9LI5uZSNL6=GQcq5BWo$4)Qe}2>T4FFkK`VD^OMg*ub7gjND``+>c1CDP z3Px3PYiVjkFiKKPSa@wyG<0TnLuWB|D`ZDbW=~X6GE!({YDr;6GHYR33N1b$J2*!= zK}}FwEoX9NVRL05Av8x>T?$b+Ye7d=K}j-2O?P2(Z**j8VrWZRNlQdjG;mTxVl_lJ zOEyV4WoT+_X@5j=W@=VzOf)huOjC1Nct}DDEiEk|RZM4TOIk!hP)u%6bX8MlQD}BH zS4CDyRCrD>LvKk)K|*U}V|8n2Z!>QSqEGfB0JKnrl)i>*D8Zn==|;>kRI^MU2zU_w zkFiu)`j>&AP*PB@Y^ZrN0Ji>}2!zqzN+z%L2fwKmy;u9ktwj;_P3Xuu&hw*a%#Hqp zN>Vn;HB3)(?Yj~vsFOj|} 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-AFLq+3ZvX%Q delta 464 zcmV;>0WbdK1M&lqEPqg9GHYjeb9z-rSw>PYGcQIqcy(n>OG0^LR5No}VP$hMLN7~B zZ&hz+X9_DtSZz#JZBuh=PiIbXadl=;VpT#pYfmp?L^o|(V^T0RNmX)lN|LX z3PNi#RboRcQ8smOY-?zCNLFr6Yh*KFc`HL$GFo~`b!Bf_MQuWKRAxt!m5eRZg6-I2< z7VA*27^2R|-%}V88YgYZ)%d|X6vAXw==n)9ym>#>X72Jg%^|KY6CIIM`nj<(8x=jN GB^0xU(5Te_ diff --git a/secrets/estuary/pdns/auth.conf.age b/secrets/estuary/pdns/auth.conf.age index 1d36fd0..acda45b 100644 --- a/secrets/estuary/pdns/auth.conf.age +++ b/secrets/estuary/pdns/auth.conf.age @@ -1,9 +1,10 @@ age-encryption.org/v1 --> ssh-ed25519 n8CpUw ACIVtxzORRq2ptG0/MNlBt83MQZJu3Pc3R/5QRpgi2A -NSO8o2fL/EDLXegZ/kkzMW4/Za79q/6QfMQ1t0Sk9BM --> X25519 nHYed6I+w6lIxgQNPUdeO35HlHmd0tKATpvnbtB5WzU -IWRKvT2csHQplib3ms1akiqdzGS37xQ2ev45yGW5d+w --> %YW{-grease -4/tMk8Gzztby5x5ojQXj3853G0V8t7AoZA ---- 6vzp2wJk0Eh0O33xXCLrQiNbqeV7oMgvvqrgyRMK9Mg -2徴兹珿h搁l疴)N撕熖[N 冗 俻枺剠愮岇3>鵰'N I?) =6除穈陶`毌 \ No newline at end of file +-> 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 +臂!= 齼I0r嗔癑縱#(2毝R8 [-俈I恾p,}v眏H#爍J?嫤!磛~P煓 \ No newline at end of file diff --git a/secrets/estuary/pdns/recursor.conf.age b/secrets/estuary/pdns/recursor.conf.age index 5b9f9dcecd6e93bc973a297269c41405bab5ecb6..2cade17d97ed867ef890d3d0a64e57a1911b0398 100644 GIT binary patch delta 399 zcmV;A0dW4J1F{2&H)U^eHb-hvH9}ElYGYVQM_E{OFK9|lbudRWSy(t(3N1b$ zSTZ#=F*zVwZ%arrZ)Qd_O>b*5YGPwpYF27%Vrg%BMrb%vQGaw}HhDs4baX*?ZBj)F zbWl}PZ!2YTH+DxwR9RtjRCq{dVN_T$ad$6zZDMdTOLu5bc5-P(F*$1rEj}PGGGu2h zXL4m>b7cxfR%0tiFnV)iZ$oBeV_Gs%W-DuXH+n~9b521rZhB}`Qf+uqbU9aMNOy8M zR!B`vMr$>8G=FY%PBA%HR!UAU3JNVPEg(roZfZ+&X<9H=c2sC-NI5x0QF$>?cvwy} zV@y|NOi4>|XL5H%WK2hRcMAS;hN-IdkF;TvWK&tz+l0KP8S~e1g6DEP@Ey2nJ&3Qq thSiYfU8NFV5df+`L5zB~2NUC&_N=$T40WqmX?ty676=pQu;{1`)?GqCkXrx% delta 382 zcmV-^0fGLq1EK?vEq``nX>WCPRyj0sVO2>rcvW(2LRUCKLT+R=OJhx1WI;trS4dAb zGFfeN3OPJuNl-LpHdi%tVs=<$P)$`#T5nKEcS>1CM|DYVIB`%;QY%JD3N1b$ zSTZ#=F*zVgV>nVaZf8SeYC&dLY(+6~Z*W>qZE!SJPiRVLR)0}QSyW_8M{+`ENoi*a zO?Y)xIA=w7L^wD}NMUP6O=ekINkwZyWmaNJYEm>&O-p2SWHB#QV`pOuEj}PneJW{0 zEoX9NVRL05UR6F#AbTJ>AT~}rBMMewcw|#=H&bzWHaTWAZ+LAmS~FBZGEOl^LRCRe zR&rN&3N0-yAa^fHcyn@icwtC(OkzP_k5=8K_n|0xN7)40r4cUE?tS( cr-@nevSP6%4nc^Y6^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}}1tsnpZ delta 436 zcmV;l0Zaag1l9wPEPrWDPHsmxLUd<(VlQPfHfv@yR5v$nL`zV5Y*tBAH&r!vXfs4w zdN(p>V+v1La!5l>FKcsha5QITHB?zpHh4*8GIljlR&;ShX;f=;R55Z?P&qSNK?*HC zAXqXrH8D9LL~}}RNKQjHG&DAKYHww9WMxG+D`sp`MrUqmQ-4!PIBt1vOmtLjbaz2x z3QKBOI8#zoZ*WO^T1HDtctdnmSXymnH*r;IVR&g|cXmQbH+n`_Id(Ns3N1b$D|s*@ zEoX9NVRL05P9rlyAYVv%I#Xr}craBfD_A&rctb`qb6GGkS~5XyFKt+LRcS_RGg?ng zT4Qrl3N0-yAb)g6b~I!}XJu<@OlE3hW=JzaH&#qRL2PhVSYtJ1OGHLNOi5QxZ)h@T za|%~WC~!e54W(RnXD-E`%r8K@2_Z(SSAxfT3pZwyzPAZn-F}1u#fKlDEMF!Uzf^4> z4^DVgqi%yF*N=^~Or?cHBFX}CNNAEK3HK-|9{z=qB`qV%7u-|_D9TJxYEgHsVKWt$ eKga}iZjO}~0lrbsenJ4BFZBS)5yos99^;Q1c$Mt{ diff --git a/secrets/hercules/binary-caches.json.age b/secrets/hercules/binary-caches.json.age index 752fe02b0c12faa4691bca9b1f1134f737ff92e3..3a5ca768b0283f922156b1fe5c14c10382246fa4 100644 GIT binary patch delta 721 zcmV;?0xtcF2Jr=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 D=&~y& delta 747 zcmVHezgONP2KkYG^S;M@nmEGi^~sQFbqOLt0@kb!1^v zHd1J3a|&Zvd1z#EFmy>waBnwGQ&UYfXHI2nV>59tF+q7)Wpy`4W>s!TO;AQJNeV4K zAXqXrH8D9LPghTMSV%Z)aVsxqbYWUoK{8G^cyu*kayK=1Z+}%zPjhNiI5KENX;Eoa z3QadMLNzu=Wi~QGad2`?H)TXpdQ)pxQA zXh>*9Zb1qyEq^T_Wk+sxNMm+EVP#orO=oK}FKJ;iMMf}0G;J?vOlV9BmurqE;v$F`t67ps5NPSaD0Uvn_g(4*r6=g3c!n6vYt%N@ zzeBUd<9{5oDM;)g{;o4p`5O=ywy<=P`N`a2ppMq^=whO+T%KhMgN!C|=>&K5-(f?b zK;wU6dhE-^BDV&n#eWYz3(k6;J5vPw$HWS5S2fBtdhk$pQ^Wf^b dMT1g3wq)u-ORnkJuW82EA@@&ru0brxNPjX>*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$FEwszRYYuMGemD$Ra$jSN^VmtHE3C7MPzI^P-I7DMG7rG zAXqXrH8D9LQ*ca0OEF1FP;WC#ZEbl_H)UBiPb+XnN=sBzIe$Ska!NO9PDM;+Syn|s z3VK6DGeLPacr-XjMRI6oOk!+GW;827QdTQ^d2(e-IASv~I5A>vb9qQO3N1b$Y)mLG zT2MPdEoX9NVRL05W+O=oP;O6ZP<2ycXLD#;NNO-@LwYz*XG%(LHF`KuR!KooVR>^` zb$3lhZB#NxPJcr}RCYLZZ(&GNL1=bWHF08fW(qY;N@7_`cVRGaN;OYULPmCZI0`K- zEg(=wFJe_eOK(UqOEy(XGH7XLRya6zP*+byD^gHTLNQZ$S4}fkHaAK!O$y>cBLWr` zQ&n#6;Dc-0hU>mw=qKSe6&`S%0De_222e@EF>1(WM1Q(yqFf+xzU8({$n7VlHe4!E zeizz;rHpAWJN$MWiE%p-K%00o66TtgiOrLwxfe;e`SZ$Hv^WOY6<0CmTMzfMfvpKc zpx_#M_yu7tZy;i$H{^CXtG0qGDQl8GVq~9~E#dGb%|V%gY+6g~PzZ+VcMR3cUT?4# z7EPr<^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!wqm0jrt^fc4 delta 469 zcmWm7J&V&|007|OKrrhGhaeKT?P^F``zFmD6fVh|CTSDWHoZ%uAZe1mZJLkfqeF#4Lw0vNR*r`-FU`aR3GM0-*BKH*s zBbvBb1E9*{Bw_`PXZoH@sV$>V(j9i4IB_FnN6cWeppgcbPS?m27M7S`OLc=vruvDi z8Y_C-@$>Q2@zhd?Co8L8%?znE5-Y7!ru<(J1WG+S^Kklbjqu_YPU(|_Ltn=@A3`NA z2e22kSAYa`l#XWB@OZ5ZnD(+I@*+^LcVW6oP%==FoEr;s4s_YcHI89*Da7()cVy-h ztKjA^^d&1O;!%;#rYkRVSUo1mERs@RThva-h#d|QY`C2aVFW?oz>?5BNGJ0s%~T=w z+yGRT^_9)c+PyIBNt{xP#+=#ic$9|S|NQsW_VOS9>+KsaF1`Ek`smR);6GVE#O8Cj zd$*}-!mjgh@51+ej}wmG;FCL7e_x5-p1pta_+0$vZ%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$qEmb+|9QT>t<8 delta 426 zcmV;b0agB-1k3}FEPrZHRAg#TPAgPobVYGhM|O2+RC7aOQDJCpadaz9Vp(NoD{XgU zXh?cTa|%vHMMpAjQB+xROHOlZc41LSP&i6yPdGtCWn*|)a!W&OG;mcla#c`Fa|$g! zAXqXrH8D9LbxkWxa5Xh{LPbeabb3%Wa7b5nYEo`$cywxPb$?iSWN0%_W@t-gIWR<7 z3QKV^S3`PvbZlxzLs)h;N^@#$LNqUKb9ZB8Xl-spL`8KmdRj<9P;+iY3N1b$P(M3S zJ1u8&Wnpt=3PLzYPGH-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%SG2q`XOyZ`_I delta 788 zcmV+v1MB?F2D1i`EPqF7c4IG0I5=Z=Ib~-;R!3AhNLnjwd0}mDM0I#`cy%>#Xk%JN zac?;>I0|iZIazW!WO-vpRzpcdRCFszHbrMEMrCzjL~T-5Q+Q28Ge>JOOL|acNeV4K zAXqXrH8D9LFf=n!F=tRgLS<)US9LdKV^1+;I6`Y@P)l}3Ie&F+RW(O#Q*U-LSYm2L z3UxtHLo!HnHDY*KOKCAic~@|1c~?beRCz{rHBN14YeiHvdNfZ*HBmWh3N1b$Tw_N= zLM>-t6n&sG-Xz*__{{?I! z_cJlt{G$vH)eSUfZO;r}DoH|r77iys8F-Iz^0Wi_M(2*^++ad>;+3~~E<9zsrad!v z3Fqe(-q7EBQYcca#yMCl#K))P!haUT0*S3t<>Fu5zJFKIaoCgw3hd!I6BW@O`7WZ( z_J}dkKT}BQ#tN2bBu~Ju@JK?p)=0f1___hu5-ZhqiM}D}ffm@X0o(^gfzNsk}3{B)0gtLQbt zx`FiF)PLH9Py~FBi~b@Pfl?{Bfb?J!V89q7W4=37?H3}zShZbO-~31>`%b!5BD$jm zl~ghSW%0S&fhWpI$Wv761>$!O%m&lFfppsnQoA1%uGih5z6FpPz;b@SVk05pV(uY^ z^yfCGOi~Ub^=`5;RKi#qRIeaaXYK&~a6C=SbeSBH zi2^>+hajt@l9toh5p$VRR%x~2ik;7GQ&<}u@`n2<-G|=xy$7`k$F-Ieum!4vLAT^x z!Py9K=UjI0l(DFi2>1V#C!8621ajz&AjB= S?+x4 ssh-ed25519 hkbtvg IrwZ+4sEJvFpB/zrFR/8Lu4GgpPppm84IYOAP7QWH0o -Px7RM+aKmjRQKdr0Ta/v+s9M+rRvRTNs9YYaZnNeORk --> X25519 lSIE40xvHLkKFMCgsKjVhbxYfv7ddDJ3xyMlcDdxgxU -sc+2ibxqyLtlcpFUPCab+x4imPjuedQadA4b1Qg63a4 --> [J"78S~E-grease S||B(wq} suB8~I ~?E@d} -/3IplD0a0o3phrEIX85CAVkFRvLcCh3ncK/0Reur0bvKsqOjg37KH+Az5dDh2h9D -63kpJpGxwNKlRntnWQWxeYN2PN3cZrggH25/EJuJT3td2Q ---- a+cb3+9Z7WWk6vGGaiXz11G2fKUqLbYuUPyzturVFXY -鐥鶦EB(c#僘$J耔4g*t剘香)穑h:揌馺莘a' 焐<鳤俽錵+撚D浐w慙K3彑憁慕 \ No newline at end of file +-> ssh-ed25519 hkbtvg G/+xT6RqgxbeZc6fafYkqFs7FyWL58+PhUIrN4g7lVA +h/lSiNjqSnoBv+nuSyRuQegzIrpyDJ/JmH2z0+WjxJc +-> X25519 S/BUrpWmbVbEzRWzLLtLctqR+aiir7slufy+o2Wq+Vs +Hf3NrG88+kISvWbRGTjkNRTNLnpjRY/W/Ukg4N133lg +-> 9KLY0A-grease b%;W R dR$ +ijMZxH1fad+vLWdei7kZsMYO9u92jjVlx7lPgMbIMFqkFy3xqoGL8jpi96Oz7+nS +BPbCv6bJQyfo+fUgg6U8Indc3XdbCbcqVPNzguCohQoYxUAC+j+DRQVz3ePadXKY +fZo +--- vWyTykBiq5nFO1UxCC8r1eXZiRxdRzVaj02zi3iCLKc +GO掬仭tP蒈)獷7嗳髰R;灮遁灰 躂爏5i=lS鳃N(.b@誡耉茡鼉 +檟&\僗FF售朇D~ #阧 \ No newline at end of file diff --git a/secrets/nix-cache-gc.ini.age b/secrets/nix-cache-gc.ini.age index 88efe9978abe49e1ac709a0a7f0e3d8b38312ea9..0b60d07aa4206c322dba489f67b1c27eef3b7b92 100644 GIT binary patch delta 485 zcmWm7J&V&|003a+1R&%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{|hC(px8MI;}J+kr8C-)gvKpol)8K| zu>y&mTf$&r@d44K6i;qQ)oIoVjk=Kc2i;mIC*d;6M9G0HxijLM1J8~ULf+^g8748j z97sGD`JHOp5pWd%5x>m!*#hg;7y6Fd(tW3gV{jlBRwzI@Gp3XJJCE5UTz8blhPYb;nu;S}Bj@&%{`yKn{+<8Ub`ZCaS#~j0VmMVr z3Tw&V^?o*I5ISM3N1b$b1i3b zWnpt=AU`p2d~sO{dQ(hvXh=CmPjhNGP-jwBc|$hXJmS8VRd(FW^+zOFJne@ zD^Ut9EiE8$c7I7SXGUXmc1ci5cVsVcGf8n*M>aw$GdWXqRW?FNbudgcab!zOPDW!2 z6L}5(eU_zx`gid1i)*yvPr*DJ`yD4VH7g&%2UiJJ_C0k5d9JO(yj!6jGY=2 r7X<%0v;XCdKyb3l!BCZRd1fGL_DObKQ#NW>(5;90g9c$GM|)=7JpPam diff --git a/secrets/pdns-file-records.key.age b/secrets/pdns-file-records.key.age index ed4f19398cb470e396970760726854757860d96f..215e75c9ecd3b2f48ab54422ebc42e7272405e9d 100644 GIT binary patch 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<; zeAvad2^VRdQrOX*D@;a|$g! zAXqXrH8D9Lc|lr6W_ERTaxp|$S}HXvc8xd3s<$hj7X_m6#o%>4bcd`YhYdTqO>2+!NsJ8Qof?# zgQBP~y!69PupVfRQU1$f8~QJU8)juy*#`yRKSfUTSRG<2RGs#bJ_rRmSECEoMjn7rJ~W8`qEj+OBU% zz)FlJYYZJ5hn!WM7M6VQuC%L)m+`Y2fkA5Kw{zmshikZr~rE5YrZZ@ZAm4ic2tMPX<{6A%rTT{TbXaL7#L_OQ2@9@ zTVpnwOI;2=)!uJNQ;~S}i)90&Pj}G*CvncXi;Dhn1wY~-a>*^hAT87%wW?u6C`|g> N%!{h3C-f#ls$@|DHGBX7 diff --git a/secrets/user-passwd.txt.age b/secrets/user-passwd.txt.age index 256ca161fed01e07f81eb3a9b9adaabe1720bae2..b59ddf6e4835a8d6615b31646ee1a6f300df123f 100644 GIT binary patch literal 1559 zcmZY9&FkcZ83*tds%W5x9typvznx@~$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+-NNgMQ}C-tBX z4}u7S2qF_#;sd&EY!sJ4<~oOsend?T|liXG10grJWio*u!Z3!wp2yWgTv9O zi=E%odw<`_xhiL9zwOXalk1njhFa;X zfF3Wh6~012e>W!wiv`b`@R zInGS|wO?3P=yFbg*oKTvJtNjv;Y8Q;wg%QA6sMRCk%Lf&C_9%UFl)B?I6PXUWSwkk zSwd}uP9mh*p5_q6Y2M-&=*9RlxWD)9n9`-HS9zm`k4!d^P96gFBB}NM1=kp0y0vic_LR#{emAj^-f2-MWxY zCc`nSeHqsn>Wzs!*5quidWJRKgB>!l3NE*Ze|wJ3rBPIcUL6jf89l$*N%5drkd`nP zn?2&lVOkP7y*$iSHWb7PwH25XeaLJ)l>+wy?Zavqturo3S3V}2>jcB}fdtY{D8r8F zu2~lW+$gRCi2-S8eli+G1@hi5d1giqMx)U%C ssh-ed25519 HJ/J7A SyRXLRxv1tu111Xne8u3JUIz0qy8C6HYD7X4uD4pGUI -QuTY1ZZqLjE8gC3Df7pBT1lWcRPL3EIxHA7dGjp+NEg --> X25519 N5sWlzsAMGknj5na/nbY00pT5CWedf2S0j1iCKCTFSU -vM70N7ymKgC3J9OrOAj6CFU/smAz2lLGX4inh1usTzc --> 'cQcC'-grease Cq7J w# .Tc -2ScwMdP22ccCa7g3Xbhw2kT4qjW9Cg ---- wwRUIFVC5mOE9w8NRr2Ld7GjeK0sFlsDnvEFke9Rzc0 -斟(芮箌u媐Kа 屺;xE-轀B胕[轴YY&媺稖}= \翌唴扶c互嶞~璪Ol`x謞=皱/闢`>鳝1"u4k<:u肃蚔 P馴挺"gLX鮷矯Fz'蜓&(l \ No newline at end of file +-> ssh-ed25519 HJ/J7A A4ybdNG0bDSIBDnjktzi1DpmGrkvNt0SE+YqCHNokEg +gwL+6yhXPM3oFkq3S/4PlWzi1h43yBRW1atvYbg2Ax4 +-> X25519 R8AIKLRKCLCUmJB3A/z+9iQOfwbqNRm7GgZQX1PgHXM +nP+UagGakkcI4c59CHSldzGvJLzDXJE16u+LggSLUcM +-> iS[]-grease +NLqKdqlhdrhVyfNihGFsQC+jvA9wu60 +--- KDffMrsRX2L2uqdu0ReWQnIcqkYjWfNh4s7KgXTYpDA +-粩)霪h忚i嶡X"膧e膈q}J乤&rJ !I袍:7;~鐅颊煜-得泯*=鷈驨筐欿bWp#栺B腿mux锎q櫋覺n+B荊餫L葌軩er慜1晲^竧]c"dI歊RG|Q \ No newline at end of file