From 44abe7ca4411cf153479158d297fc6e739f33df8 Mon Sep 17 00:00:00 2001 From: Noratrieb <48135649+Noratrieb@users.noreply.github.com> Date: Sat, 19 Apr 2025 14:07:44 +0200 Subject: [PATCH] olat baby --- newinfra/nix/apps/openolat/default.nix | 72 ++++++++++++++++++ .../apps/openolat/extra-properties.properties | 1 + newinfra/nix/hive.nix | 1 + newinfra/nix/modules/caddy/vps1.Caddyfile | 13 ++++ newinfra/nix/modules/dns/noratrieb.dev.nix | 1 + newinfra/nix/secrets/backup_s3_secret.age | Bin 662 -> 662 bytes newinfra/nix/secrets/caddy_s3_key_secret.age | Bin 661 -> 661 bytes .../nix/secrets/docker_registry_password.age | Bin 233 -> 233 bytes .../nix/secrets/forgejo_s3_key_secret.age | Bin 277 -> 277 bytes newinfra/nix/secrets/garage_secrets.age | 23 +++--- .../nix/secrets/grafana_admin_password.age | 9 +-- newinfra/nix/secrets/hugochat_db_password.age | Bin 339 -> 339 bytes newinfra/nix/secrets/killua_env.age | Bin 293 -> 293 bytes newinfra/nix/secrets/loki_env.age | 9 +-- newinfra/nix/secrets/minio_env_file.age | Bin 397 -> 397 bytes newinfra/nix/secrets/openolat_db_password.age | 5 ++ newinfra/nix/secrets/registry_htpasswd.age | 8 +- .../nix/secrets/registry_s3_key_secret.age | Bin 364 -> 364 bytes newinfra/nix/secrets/s3_mc_admin_client.age | Bin 802 -> 802 bytes newinfra/nix/secrets/secrets.nix | 1 + newinfra/nix/secrets/wg_private_dns1.age | Bin 256 -> 256 bytes newinfra/nix/secrets/wg_private_dns2.age | Bin 256 -> 256 bytes newinfra/nix/secrets/wg_private_vps1.age | 9 ++- newinfra/nix/secrets/wg_private_vps3.age | 8 +- newinfra/nix/secrets/wg_private_vps4.age | 8 +- newinfra/nix/secrets/wg_private_vps5.age | Bin 256 -> 256 bytes newinfra/nix/secrets/widetom_bot_token.age | Bin 272 -> 272 bytes newinfra/nix/secrets/widetom_config_toml.age | Bin 4006 -> 4006 bytes .../secrets-git-crypt/openolat_db_password | Bin 0 -> 131 bytes secrets/vps2.env | Bin 83 -> 22 bytes vps2/Caddyfile | 8 -- vps2/backup.sh | 1 - vps2/docker-compose.yml | 32 -------- 33 files changed, 130 insertions(+), 79 deletions(-) create mode 100644 newinfra/nix/apps/openolat/default.nix create mode 100644 newinfra/nix/apps/openolat/extra-properties.properties create mode 100644 newinfra/nix/secrets/openolat_db_password.age create mode 100644 newinfra/secrets-git-crypt/openolat_db_password diff --git a/newinfra/nix/apps/openolat/default.nix b/newinfra/nix/apps/openolat/default.nix new file mode 100644 index 0000000..0c2672f --- /dev/null +++ b/newinfra/nix/apps/openolat/default.nix @@ -0,0 +1,72 @@ +{ config, lib, pkgs, ... }: +let + dockerLogin = { + registry = "docker.noratrieb.dev"; + username = "nils"; + passwordFile = config.age.secrets.docker_registry_password.path; + }; +in +{ + age.secrets.openolat_db_password.file = ../../secrets/openolat_db_password.age; + + virtualisation.oci-containers.containers = { + openolat = { + image = "docker.noratrieb.dev/openolat:69b3c8b6"; + volumes = [ + "/var/lib/openolat/files:/home/openolat/olatdata" + "${./extra-properties.properties}:/home/openolat/extra-properties.properties" + ]; + ports = [ "127.0.0.1:5011:8088" ]; + environment = { + # DB_PASSWORD = from openolat_db_password + DB_URL = "jdbc:postgresql://openolat-db:5432/oodb"; + EXTRA_PROPERTIES = "/home/openolat/extra-properties.properties"; + OLAT_HOST = "olat.noratrieb.dev"; + }; + environmentFiles = [ config.age.secrets.openolat_db_password.path ]; + extraOptions = [ "--network=openolat" ]; + + dependsOn = [ "openolat-db" ]; + login = dockerLogin; + }; + + openolat-db = { + image = "postgres:15"; + volumes = [ "/var/lib/openolat/db:/var/lib/postgresql/data" ]; + environment = { + POSTGRES_DB = "oodb"; + POSTGRES_USER = "oodbu"; + # POSTGRES_PASSWORD = from openolat_db_password + PGDATA = "/var/lib/postgresql/data/pgdata"; + }; + extraOptions = [ "--network=openolat" ]; + environmentFiles = [ config.age.secrets.openolat_db_password.path ]; + }; + }; + + services.custom-backup.jobs = [ + { + app = "openolat-db"; + pgDump = { + containerName = "openolat-db"; + dbName = "oodb"; + userName = "oodbu"; + }; + } + ]; + + # https://www.reddit.com/r/NixOS/comments/13e5w6b/does_anyone_have_a_working_nixos_ocicontainers/ + systemd.services.init-openolat-podman-network = { + description = "Create the network bridge for openolat."; + after = [ "network.target" ]; + wantedBy = [ "multi-user.target" ]; + serviceConfig.Type = "oneshot"; + script = '' + ${lib.getExe pkgs.podman} network create openolat || true + ''; + }; + system.activationScripts.makeOpenolatDir = lib.stringAfter [ "var" ] '' + mkdir -p /var/lib/openolat/db + mkdir -p /var/lib/openolat/files + ''; +} diff --git a/newinfra/nix/apps/openolat/extra-properties.properties b/newinfra/nix/apps/openolat/extra-properties.properties new file mode 100644 index 0000000..17343fa --- /dev/null +++ b/newinfra/nix/apps/openolat/extra-properties.properties @@ -0,0 +1 @@ +enforce.utf8.filesystem=false diff --git a/newinfra/nix/hive.nix b/newinfra/nix/hive.nix index 6f8f97d..8d9e491 100644 --- a/newinfra/nix/hive.nix +++ b/newinfra/nix/hive.nix @@ -178,6 +178,7 @@ ./apps/cargo-bisect-rustc-service ./apps/killua ./apps/forgejo + ./apps/openolat ]; deployment.tags = [ "caddy" "eu" "apps" "website" ]; diff --git a/newinfra/nix/modules/caddy/vps1.Caddyfile b/newinfra/nix/modules/caddy/vps1.Caddyfile index 7a6ea25..ebeb08e 100644 --- a/newinfra/nix/modules/caddy/vps1.Caddyfile +++ b/newinfra/nix/modules/caddy/vps1.Caddyfile @@ -65,6 +65,19 @@ git.noratrieb.dev { reverse_proxy * localhost:5015 } +olat.noratrieb.dev { + log + encode zstd gzip + reverse_proxy * localhost:5011 +} + +# unsure if necessary... something was misconfigured in the past here... +olat.noratrieb.dev:8088 { + log + encode zstd gzip + reverse_proxy * localhost:5011 +} + ################################################################ # redirects diff --git a/newinfra/nix/modules/dns/noratrieb.dev.nix b/newinfra/nix/modules/dns/noratrieb.dev.nix index cd9a438..81c1910 100644 --- a/newinfra/nix/modules/dns/noratrieb.dev.nix +++ b/newinfra/nix/modules/dns/noratrieb.dev.nix @@ -70,6 +70,7 @@ let uptime = vps1; does-it-build = vps4; git = vps1; + olat = vps1; # --- fun shit localhost.A = [ (a "127.0.0.1") ]; diff --git a/newinfra/nix/secrets/backup_s3_secret.age b/newinfra/nix/secrets/backup_s3_secret.age index 33cf4486ea5d963261a83d10f81dd6e0ac9cf2b0..9298136708d6a46d644fee1298fe6f2816b6bbc6 100644 GIT binary patch delta 591 zcmbQnI*oOLPJK>FfTOQhvX^VAetLM7aiCvSVpxi!c2P)%rL##{WND(gnT2Dzeu$rk z30G8ZmcN^Yg;}O+k!eW2kGVy9Xqro+d#-kfZ+3}Sc4(wgshMGLmUmEr1(&X!LUD11 zZfc5=si~o*LPV9Lb5x*$Wrka*p+Q{OP+~waJWhS z#E;_P!2u=aC54t@$yH%~5m81d5jjz%sbo zhE85yq3-!kZeHnmegQ`Q5vBf7nZb!wQJDsbnFbz30cNS*UQs5K;~B;4wM&A7LJKWj zEOLT^Bead3vI_&UJ<gSe4AVjjQ+^s~xk5UM5UXS~faYf<1B!#FupM^9J z3NYSY;hJjsF*E&pbmvuvrqBtDzgJwmxZY0vTbl6Q=jM?M5<|TAU-*<`qx6)2)f{L3 hz}nZcQIov4zdy8k^)*%n?PNwK!8wV%LeZ_q^Z+If(^mih delta 591 zcmbQnI*oOLPQ80oVW34-hI?R=d1-l(fk|nRk)M%QR<=i8sHL`BNSTRIP*qW`Q-o=- zBUeyrwzhd?ioR=cl~<{2Ws*~2cw&fuhKshduSsx0a;RIVnSPX)NqMn$AeXM4LUD11 zZfc5=si~o*LPV9Lb5x*0m`Sj-x9 z#E;_P<>^s{Ax0^Aej$Zn>1J->>1l?QX8u6|Md^;(&R(hJW`@D}rH=V7QCTKjMae}4 z!In90ei0VFfmsG+X4wHbNvWRY=>=gSRhE$^fdyfCg|4PPmIZ;6;~B;4_00{kgAF}A zoKnnETneiE^7KnHlY#ZGLcgz4+~QqI#{*m#cb6H9M!qzwX jLfn@cUcS8LzeUHPU?-ctc*7Il;O8&uN>+taM9r(a%hW}b($cXCFGPg-%Fe}%q#dW30tcvhKDWuTv{Czr0BLUD11 zZfc5=si~o*LPV9Lb5x*$Xiis$XiZzFUc#zl)orx1(`>fm>)*K|zMI zXOy8wg@L;(ms3=zN0xp;rh8&=n5TQ5r<+G&rhbWmS9Y39xIs`}xO=f{UP^M5XKK3V%`$Kol5%k|6F#wlH#b*M|q=i9{18vTp5n6A@3{9Yhj;^yI?y^2CHxz*yW zNB$?9e^*owp7Yp4r?0LzAw|3~>1d9^^nW)syj)MO7P|j@^`dhfH(od|$X5JU9hk;|hn`>22 zIhTiJh-<2AX<&wVXjx!reqN-Ji@TwAYM^$mNp5ITgm#o)V6vBgNT|DCAeXM4LUD11 zZfc5=si~o*LPV9Lb5x*0s&<7>xKU=XMW$I)p>t)LlUr1PqlJE0hL?#!SX4?#T3}YT zxo23ue_mBGSC+AVh`FzEkyl7$v1?XUNwHC2pj)J|Tb_T4rE7(@u}@A_rLlQHXh~xE z#E;_P!5-Qc-T|g1X_c1Q&Ta*fxygoM=00u(g+T$%+R3JF1wJW}5k^Hx`5u8>=H|}n ziG`l7xt94Bp(O^n!Cpp&ZZ1`ZmO-vQX1)~_B`FmqW}(^szFCoz;~B;44a2-F(hE%7 zv$G0|ee=?jQ!Ko*3d76{(o=lWa*cvYQq#-Q3$t>}%tBnbLW&AYGJ@QFz0Av!BeF_7 zgUSjrDh!H}B9aSD(!;%j3M$eIlOhZ}%Dn@*baizVA~Q29jB~uwJ(5!bt3spPl2c2y zlgiUwi#%LB^8yNr^NRE9ODkRSBh16IxeA!_AFon>*N`+L@bKR-ol{5DMb<@MwE1QE zUf}S)f`6Jv8cjP}*%o&`Gd?BQE4^z$_L-l1Z8lDK-hVK|NpqK6^~41)x7KoJGaNo# zc>2NOvRUW*FYZ-e%Q^GL_rAkAFC$-d)tsrysgPQA8MU}&MXwzo-IQb>ebU_?q(d48C8Vro#Nxv8_InWJG@UY==sXufH9 zBv)2NXp(kbgh7dczh{P5MS4o2e|bn*S!P(CdwxKUqjz#{glAB=xm$*-FPE;au0lah zKxAUBkEcnpQF@hMazM6Us%uJynMJm7rg3mcQDRk+satc6|=x{k{_3Z!1}r6UN;jW|Gd=uwn%o`mctc~^m5+5Ybk8ywp_K9wZ#|!55`E@ delta 197 zcmaFK_>ysgPQ7ulenpB&y0?Cjb48-1TZm^`R9<0uZe(FZu32(bNR&^JX?RkxU$Tjj z30Ia|si%RqZ()9BczJM1R${tixv7z_d$>VZs7pXzm0L=7fQNs+VYq3!374*}u7Zbw zWqwY9dq#+-M?iT%vQN5smA-*%W^q-vv2T*UnMGN7shvq#lBaQgX)#yFoQ#yK27JXP yx_Qf$(;QsY96I7>@?;)YZMV6m_PN+v=z9-j@Rg0aurP*`~ zA`Zy^U}9E1dGL2@jnKmg_O71lk9`wXC@VcBS#o@DdH6qKJ00y${GD`9Q%)nh007^-T#^6) delta 241 zcmbQrG?i(BPJM)#Q(&H1saddJgm$W-k7H_(w`o;Yib=X@g;9oah)Jn-fQyf5h+9#( zD_2BVK%{d{o|9X8u4i7czkWzrsAo`Fad1_MlYwcdk7q`Ne_>drzlWE5IhU@ku0l{` zO1ihdYpP*Nimz8mK)H`^Kz?L)V7hj2h+m~wajJf3NLHn#Ym&J^wgK0DcH_s2SzlJN zq%Rkbv)IC+n!j9-F*&2?Z`+rByjA}?)DPwA>LPCYZ?-~ tyC#@(Y}{#4e(8AogV5x@>kLaTFS_?;-Kzx)TpW|O9Idsz7~!n{69DMcT@3&L diff --git a/newinfra/nix/secrets/garage_secrets.age b/newinfra/nix/secrets/garage_secrets.age index b9bf376..25936cc 100644 --- a/newinfra/nix/secrets/garage_secrets.age +++ b/newinfra/nix/secrets/garage_secrets.age @@ -1,13 +1,12 @@ age-encryption.org/v1 --> ssh-ed25519 qM6TYg SovdMEtsuAN3HnwyoGcQsVtcpYObyh1N/VKbw4rN/B4 -neYvPr3H7Z0n42eXSacdJ2syK2tX4ZG8dVzdXYKMC3E --> ssh-ed25519 XzACZQ O2zwX8G4Ladh+jlPtzvGKBJUCZwRdzEFBZMjQ6utlic -EuxJbsnCtMU3iPGL+rtNPiA+r6h9IBHQGOo1krTSGMs --> ssh-ed25519 51bcvA +ytU9agDEYXwSkjGXqTuGJFNX0H4gVg3NrSq+irpqR4 -WqB9xcniSoq+7MPZkeujE+Z5Et8q3u+/yEULeSU7Ka8 --> ssh-ed25519 vT7ExA NHrhD8lzaN2QUvnU5obIGFsFdC1tvADd7cfNONcvdGE -egoyBBL9r0XV0bGOq+686PoOPICvYnE/erlZvQMJ4ps ---- j+CR0XGs/Z0D/f8PJVUu5m8ksetR0X9UgX2uLgRFGtY -qRKSDE**ѸW672Z(}vҷ+Gj|'?_o(uͨ! +\gg`dIr{#d;(U(M(hkr6Qn!rB_2) -^b8R\·a -]jBD%2`=Hz \ No newline at end of file +-> ssh-ed25519 qM6TYg dSNo/WHtuVibuLghfNnznYw6+zsMJOWvi7LitHSn3AY +pfZti2of1OZVOgVR+wXZrhGggtZ2W3jyUADDWVxQHfs +-> ssh-ed25519 XzACZQ d5+ZaKmyb1yTZJ0mvPYl6On9XaOp8Z59zNQXVtEj6F8 ++Ku4GwagVLPZHzOpkaFPZ1i5NoB9Z+Eyd0tuY28yS5Y +-> ssh-ed25519 51bcvA PxNLpJLMnUrlyzKUairI6Y+f6BYn7N9e/OURoiHcWQk +FsXdpP0pM+Xvst93kHIG+KsDlwrRRks4jxl+Q487Msc +-> ssh-ed25519 vT7ExA PE9zzE4bKcexXg6LuoQnUOJbvNlqQF//qm1fgB6sM0M +YSzgtZ+zGoTljLHrxeIY7MQV7xmLNDPFEeVrSq37QHA +--- VGV6MkGwLwYmCq73bDzIJaRRTESJ9a1fieP1AJNiAUs +j\_I9dUK F1^ouJo + P"ltֱv%anEZX2שS; J$~jcg\~5$ք* ]" ٠jS+qΗ@w編˚N1F@k$_a…;Z |XLKh0 6"<ّ \ No newline at end of file diff --git a/newinfra/nix/secrets/grafana_admin_password.age b/newinfra/nix/secrets/grafana_admin_password.age index 3ac1c50..41f0ce1 100644 --- a/newinfra/nix/secrets/grafana_admin_password.age +++ b/newinfra/nix/secrets/grafana_admin_password.age @@ -1,6 +1,5 @@ age-encryption.org/v1 --> ssh-ed25519 XzACZQ rfGZDBIu3I6xLw/ZZXAaXNtcIdxhH8hIDzbvZ0co9T4 -FElMCSmBpJTt559GQwgwg1ojjaYVUB6AU4abWBDaG2E ---- thNXco05W/7JETn5LsK+38orUQY3dOA9+/9/2Y2p/+E -(DJ`&M qNe# -V`))4wi<;//Pd̍^roF4%*`Hi0N"R9- P NWn \ No newline at end of file +-> ssh-ed25519 XzACZQ gikrlnVBvWOpWLhDy6eZ+BM/DMwerHQ5xl1KuXuRHCc +epErSJOxYqbjXuCZL2gF1iBiAuS6pf5JHtJCPCCDkUg +--- CnSLl0Mg5FGSf8G1N/LkX/xygMvCguiE2NGaL7TwGTk +|w8ґ,E`Pr#~Bb{hQ["y_ O#EJ> Ɣo ^#(Ud^bީH\%6NJ \ No newline at end of file diff --git a/newinfra/nix/secrets/hugochat_db_password.age b/newinfra/nix/secrets/hugochat_db_password.age index 68594dd0e2262a99ea2c845a3ab16d29a63f5105..4107bb305267b8d533878e3a5b8e9da8994fa82e 100644 GIT binary patch delta 304 zcmcc2beU;_PJL#PyJ>NxPqBWHL5PoMQhtz=pG$Z^WKn2IP>H3Re!fwDL6&7kV472o zBbQ-OkY!OpS+b{oNlB$?Mr2BMhDTvuhMQSIuD5ovV}7W2WR|vekxN=qB$uwPu0mo} zs#8X#g`;O?RJMgreu!nJkG@HwtD9?3VS%N)S81S6X?=K7k-0~TNj{ft{hOPTmzgT$JefAN|F*H?%0(czf8Ug=QW( zP02A!4lZ4Kjq`L$kX7J(vw21mnGjU&r2t+a7xYm`L1K;?25{-cXPM5CLVgf II;wFw0BDMZ^Z)<= delta 304 zcmcc2beU;_PQ8bTvtx#bQAuW0dP$0tPo8IpkzZgzc~WVqmuE(VQCfDXS!s5bn@4`0 zBUe^oph>WIex;rYF~l*4Yh3&#%7a z3Nd4B`OeQbx0o-14XC-~BlXKSCX{5R=xLc11|aYJ+b%Xt^9(@t&> z)ZeG2xNB#jZro>Q&1^?u^BHG@HYohGF>9Gl03-i{!THmvdz!mPlyh-pIhU@ku7Y`` zc7>^TqF;DoK(cmrRldH5V|a#kaHx^9ex7SexVc+VL6v8rN4iIlMLO5N`)|XT_lu}p z**E8e@&m4g8`95vR#fE{&3Kw&Cw@x#K~SpnGW+{1yZ1k+Vk(T^`>@X_;E#>f_GP8H z8?4N~ezP^W@l535N#CDKq?pXx9TOfzJ($CKtyJx$`qQlKmv^1I_n|X1CS3J6+d|*J L^A!!>GZ+B?xT|OE delta 257 zcmZ3=w3KOrPJKW|aZo{Cke_#nlZ#V&Kvij#QFxGHMP6iNYD8|LcTj{^cBxB5v4MVe zB$ux;fTqZxYHELtO=k*!w5|&B zTReBZ`_mU^YxZkhTHhV2#kG4|($?diiWa`sD)QFdM^`;hNKuq;72Ku#?`7BZjgwfV KKE_oG^aB7h(`F6; diff --git a/newinfra/nix/secrets/loki_env.age b/newinfra/nix/secrets/loki_env.age index e2ecddf..2906c38 100644 --- a/newinfra/nix/secrets/loki_env.age +++ b/newinfra/nix/secrets/loki_env.age @@ -1,6 +1,5 @@ age-encryption.org/v1 --> ssh-ed25519 XzACZQ eBMqugfTB9wfhD2TgF2svakZ0tDdXjfIlurhXBf0+TM -vJoHbSZT6BdvWfwcQVtjBUBa0x3b+Va6SyOuSL4soKY ---- eQQWdfE5bnx0EOu+4IzdlGwPLBEN6AAC8xA0u6/wXhE -}2T? ;1t7kJO{Ǹ$ -3uBAd>tfrX _=jR>^!Q;`[F!VrΠʍM_SDGvaT;PhiͿ ]O< \ No newline at end of file +-> ssh-ed25519 XzACZQ LZJxX7aRBk26DYdfkd3vC2OLvIVBiZrvCroihjzka2c +xze/qJWOJXXJaoUjS2Bd8Rfk3SOkN1HXRN3U0hmiKPQ +--- NgSxh6hohM1C5hiAafFHWifJrb5mY87cTQgLzX9lVe8 +S>g>ٱg?}=FaaT(#RVdB3]m`t7?}Y/MKbesr0w&s?49f3@8q5n=oRVY z$z>XlmXU8_=3QJ?mE)D_m0^&c6I2;d8JV5vY*yxBmTr(9Q4;3tW2l{<&!uapP+Xj$ zo0?)|YHDby5K-mm92KZg78x03QWBKo7MPQhU6z@XS05DRY2=xjY3iAxAC~M?lIdjV zR903RWai??m6eee;vZO^l$ep7S>l|YYHnVblc=Aa?doKy9}*Si8EE7Zo*I%CU>umu zrK_u}V5)EFkzwdpk!zf+9b)d1=4et_8thT%oL^Ls8<0|v8XDx~QcxA?98m7cRg`8e z`#&%4b@KfW1#?}E-4}~VeBZ0K<=?rZS{vj3+}AHyrkQdubNj=kMI2LmovK7<+s^Q4 zf493=$n>k+#~-~j=1lu`OpS9x!|Q03%Y~DRs*XIfV$^z{zy0MY|FDBzY6-7-bE|eM LHCKFCv{VKFa_)+& delta 362 zcmeBW?q!~!Qy-aDY?7uQ7F1xFTxgn_7UUbI9TjBamhN4i;c9Gdl$)Dxky}z4;1OgH z%4KAnXq;nd?iAu~?p+b-?&5D!=x6C{lxY~{=v5vSr0rOiUFcI0o}cCu$fawiP+Xj$ zo0?)|YHDby5K-mm92KY#SWs!{ACwxdZ5)zo7-?=AQg4}@85-ha9_*c8;uls{UY6(U zpJD8goe~nsv3ZtUn+R-EKiUY4n^onCHeq#bBjRg@aZ zrK_u}5LxIFYT#OyZQ`DipI#6UUY=xPoEPkro}L!&;p~%`m{gvX}ZwzM%5CIQQ>;k93Wb0p^?iqBd78JNiXjpvbu<@QUd%^Va{oYd-g_ z?5cgWMUS^!#& ssh-ed25519 qM6TYg yvo9tUxGgQETQ0w1qgr2wMp1Fu1FtryEnSq3CCcHIk8 +tVCZg826Pus5LtguOV22XIzvyQ/vlZFb0rYSyJhg0iE +--- mkZIfeMIepMwEp47GeFo1wiYr66W9nBPP2vfvlzOF2o +qnu6Cؿzu=~ˬ6Q뙲?Wm%`ZU_X]Tu!к߀`Gbuuf<^/i8N(rSmk`dx})tgHЇD`*VE, `i \ No newline at end of file diff --git a/newinfra/nix/secrets/registry_htpasswd.age b/newinfra/nix/secrets/registry_htpasswd.age index d7ce43d..15f74b3 100644 --- a/newinfra/nix/secrets/registry_htpasswd.age +++ b/newinfra/nix/secrets/registry_htpasswd.age @@ -1,5 +1,5 @@ age-encryption.org/v1 --> ssh-ed25519 qM6TYg EJWWxPHa5Rww9uwiEwHPKKBcc5SiwFlpiLjDRXrnfyA -5DGTo4fsFuT8Vsutc4nSXq1NDoljSnUVlmviJcZFVKQ ---- Ha/ILA1plnnAwr3FdjeKicWHKwfHxjxUp9zhwihkgkI -^HH22Vëo Pۯ<8s-MPFMEr]n3iu-Y'#@FXclVxiF \ No newline at end of file +-> ssh-ed25519 qM6TYg 0Y1d6GtpFGUUtfldl4+CKq8e0bWvcPGnR8I/N6L1XSM +8HwFO3zIWh7+3J/rhFQCgty1k1FYU3SS9cF4ekbwZfI +--- a7x+V3pI9cekGbdl6SfR3B7MOUxnNGOf+MJsPLDq/r4 +YUרN9xs@4.G2B;Wz3#Qi4fo˜XEcv]ɚ7 \ No newline at end of file diff --git a/newinfra/nix/secrets/registry_s3_key_secret.age b/newinfra/nix/secrets/registry_s3_key_secret.age index 29337b39ad2aa7c7e5fb9427de0a6427df5fb627..91288e143b0218c35b1af78807cba224585ae8d5 100644 GIT binary patch delta 329 zcmaFE^oD7IPQ5{nQHg7*W2C=}Pk5Pecz&XLa(Sq4o=;h+dq`kXiA7q7g?C|usYzIv z30JOmX1YgJR7q~Ae@2FWMzVIYg?@pLhqhT(T3Sk$xuttX4-FNrZ9iL5BbreS4JtjPRLdpBk zkh|+^?GCm!i!M;z%D;l?_~q%h+xN>S*KK!ryz~7*>EBXqQ7$*_l-OopF;#8;{nBuo zIfLsVtsExj_xFC-I^A-05_6cpp*v4`OTg{eOGiEi9KN$)=eoYh;%1k$>i?a-@ZZq5 jc7AP$hmob#+J)?y9U&W4&zWz#%g5f&_;~TQi=TS{gL07D delta 329 zcmaFE^oD7IPQA9Fc1~DjP*qNHxxaQunTwaPcVSR@Sd~wax1U*Ha#CtRPO?{Nn!k~w z30Fx(vZY^=o4#d`w!eX&pJ8y2d$?P&VUcrAdbn?{p`~j?d6mCeWNKt?HkYohu0lz; zXGUqVi=jz|mwt(7a!#3lQh0fZVWPfgZf>S~zO$cOVtsOcXm+GeYC2akfBg2p@6K(y z{xdAyZM&U%=mF{GE!)+e$$k2=cCv?{rT+{*>Bn=Xv0ST~kp1t^_B%3{R)$=^)$-`G zv#P$(F;V&KmP^xQ=KOmnxA3+vfBHewC00N6KYOtluU?kLw=AI7dCr5HDP=>Dce+32dGgOc0;^@`eNbh3&%NN+7yGEmHuDUG5)O%;xp{YsLEGNH llPerMR`Vvlc$lsd7^)mwrNC8esNTJR)l+?g|oIt zC|71gP@cKBk!ewCWsr+gif2@4PJz2=s)t98w`Y=%g<*kdWq3%wlW|&QD3`9CLUD11 zZfc5=si~o*LPV9Lb5x*$Z;@+mv38Dsg^`7Jn4xh*rJIqrOQB_0vAMrTcBD^eaAdk` zN~uS-mwQz{mt&woPGDMbS&Czpr<1pHTBfOGvR`JfduBjDaiD8KuB&BUgH z-UZshj)tZMk>NQRey(O!MX8>dDJ~VI0omah#mP{me2dv)z)pJkz|x+=AV5D%}dheBF#g z{XDAzGXts$Gu+cMA`2>m%OXw6JoWR8OPq?ibaizV0xI1+BHew=GCj46jGc?Jll=Vk z0}YZ&OI=F+w4MFEbBsgl3qq38Q!65UxkSa*EBfXpWVq~ndiqD+W3|&KWvV6p_xU`l z^zVq9=Ttb=o;R-b)Ir0t6;1N_Oh35^+oY zb$#JWoqZX$&pbc4_%$jlzsCCGwx@-0MS%Lt)rzx|S8Tg+$w=%f-*a(Ev87_{X(~T| zt8AQiMs{(%LfXpJl9fN^#Lh6et~a-zcTbp{)q1PEd55ALemfj9|GK)W=h4E}o2>IE zTdyf;i9I3ub*7SpcuUpW1M}T-8+~VX>-UvT6#CIWxAW`2kh4a6&%X(pXUlwbt-F}1 b5TnbFzukXq>>jZ0mg1PF`)_^Qq6^&sMiC%G delta 732 zcmZ3)wuo(lPQ6=pa+PzazEfI8T1iELYnWwmv1OK7QdL=^WpHFwabQGRu#tynfUBi} z30Gi1aaneVWvX_Ldx1reM?`kEc|@jZqD!8ad2mpEL`hU+s7FPSPnoHqY-l~YwRm$A8vu~U_guTio^PNu7unUQmPrcr2CQJzJyzDKEBetxD&xJhbSNSK?& z#E;_Pm5D}?QKlA&Ze{sVCPBfDo@L1)6&}S#xtW%pfoASLPEMXFDdwfxhK`q?;=0#y4xyDgxenr08+D@+N<}QB5xrXJF;~B;46O#kOicO3> zQe7O2vQyHslD&(9gS|Z~3*AHW4IK5u{oRTq%AHLk(lUIxEG_(tlFhO*-J`O-oJxYy zGRyK^LPNBR1HD~~BP_!*3QAoKEHizx{c>HobaizV!a_?-eIuMRBC{=0B0N%~EFufi zA~J$pElr%#O2V`AG78h`je-YI@G;p^wT2K9Xg#F1ytDJu~(u6LG z>FzMi`x5&8sA=31zsb)6%>Qz}Bk>YI>X%=i$`*(`dA~Uzav)W=d!~8=5t8=a7CWD;%e Vv|%~Vc?&hEGoP&6U4k22RRMYWP(uI! delta 220 zcmZo*YG9h6Q}3)FQITU-kz42$YG_{MQ&f^&QkLSA8Wd@&pX6qol$BQEk#CZllw+9b z$(7=hnV4MSl2eeHo@?T7!KJIKtKj1p zRHU8jA%~tK*Ivi3LIm+m=>-sFPo% X@S<}^J-Y}10xDDU diff --git a/newinfra/nix/secrets/wg_private_dns2.age b/newinfra/nix/secrets/wg_private_dns2.age index 3640ef13e3197dd8fa0b7db8a3fb521e8a7d7c84..3657409769edafc7affd7efe143086405494bbb6 100644 GIT binary patch delta 220 zcmZo*YG9h6Qy=W(6;f5<>5`M4Yi^#M;cgZY;ue--9u!{U?~-3&>X&9*Sx}^H5S8NU z%jFpCo*osE8y1q`Yv5Fot6!PpS>jusZloQi@8gx^oS|LjTw)NClNDlU!KJIKt56o` z9_k#KmF8TO7H)2kS?rgZsGVbIoLG`sX6_d3>~30I5t@}95FX)?70Gok>23V3j(@%L zGUM96RP4Sv;hU*8<7C4qT?5saU9(^BJuR2?Si{z!=iLO|{>_px>r$UteEwxqI(ajL X(p71BS?(Iuj->O3))#N@o3a1^h4+?ky4eH z&6VNn8RlM@?wYEt?Ug#Z8m diff --git a/newinfra/nix/secrets/wg_private_vps1.age b/newinfra/nix/secrets/wg_private_vps1.age index 152a0ee..3e7321e 100644 --- a/newinfra/nix/secrets/wg_private_vps1.age +++ b/newinfra/nix/secrets/wg_private_vps1.age @@ -1,5 +1,6 @@ age-encryption.org/v1 --> ssh-ed25519 qM6TYg wMMdxXZc1yZiD9oS6ne/7Ne29uz+Q97kYYjZtyhR9Qs -hNwS16RMdvb7hNfjRdUow/sYtUcta4YPoe4qh0jAEOE ---- 30m6ILfUyjxm/nindgNcujh4bGOUvMbrcArSLEd2NuI -0f-1T_s>?fI[LύmL4#,qwPY-[n$ 4 \ No newline at end of file +-> ssh-ed25519 qM6TYg vC8XBZQGff/q/SEsiIb+pyhfE/2MCWbo1m+suXpzyhY +r2R02FSzrpiPyoAeiPqWNdXc0Jqd6v2rv4hxo89LqD8 +--- NBCfTZYGNmAHQOABVhlcsgbJmKpmeUM15FdKLQjVazw +,t} | &-^uU6Z_&ue[w _벢 +^\(gPy-j;D \ No newline at end of file diff --git a/newinfra/nix/secrets/wg_private_vps3.age b/newinfra/nix/secrets/wg_private_vps3.age index 80bcbf4..ddb65ce 100644 --- a/newinfra/nix/secrets/wg_private_vps3.age +++ b/newinfra/nix/secrets/wg_private_vps3.age @@ -1,5 +1,5 @@ age-encryption.org/v1 --> ssh-ed25519 XzACZQ k5WVMoS1WD1Jb+RfV0OOW5umLFfEdfIqDodBViQFvzc -kypBLkD32beBsTtEoCyH0b9L4GAxorTFhqH3nhkO72w ---- aUbimoG2VppL5CPG3tES+zp/cINt6ZjNnthvCcpt0ww -k~i"BVMDEQBuK PuhGCޱpT)tln \ No newline at end of file +-> ssh-ed25519 XzACZQ FnGfRDdT9kQXeYzv7yzwI+1fVXmeseC6YVCCzeoeLCQ +HydL6WRBzLmqAKNmf0kzBmZiFRQ8KM3dHEdx2676Nx0 +--- E7+8BYiNPPm3fI6FiEii2txlbsesfSXuE2Nxvb7Zlx4 +m5q~>R-e~+$T5PrnH:$4jkB$CqRuMmF`A4e \ No newline at end of file diff --git a/newinfra/nix/secrets/wg_private_vps4.age b/newinfra/nix/secrets/wg_private_vps4.age index 80365e8..15bf0d4 100644 --- a/newinfra/nix/secrets/wg_private_vps4.age +++ b/newinfra/nix/secrets/wg_private_vps4.age @@ -1,5 +1,5 @@ age-encryption.org/v1 --> ssh-ed25519 51bcvA A5RlnDQ8XJQK5KqxwrvVsrfJKVzb22/c/J/EPvfhtRA -ByXVkK+QIuGV9bCgcqYOAj54k/O6SrYBLrJIQMec0nA ---- S+1ZbskI6F3pIT8Pm9qjoHpHu0BmihvC1c9D77sghVY -{XwG*KD_r;9O"s<әCb6#lQa ssh-ed25519 51bcvA IVcXj0PQpO6Rj7ovi4GgoQF77sRDdumHNavSVdQXcHI +O7j/05HqbjLvIYh9cT/iT8p6GMDn14vDOqU3Jh6tUIc +--- wt0viOUTFWu9ze3CcQ4i1xMrb+RLTOg2hcVsDwbzMzA +i-_rˣ*=@|D3e%nȭY'Rh3V%-=W; icS \ No newline at end of file diff --git a/newinfra/nix/secrets/wg_private_vps5.age b/newinfra/nix/secrets/wg_private_vps5.age index 079f000796887a0f7898aadf2fc1cda98983dd28..b38a13d5416c492aa42c542d1893525e070af504 100644 GIT binary patch delta 220 zcmZo*YG9h6Q=eVo9Ax2~6yRa%o*o>m@9Gy3Xkl0t5U8DJU}BhKUKwUqRTWrfSe#p) z&6S&xXJ`?W;}nrp;F}iZ=us4!m}{C{k`rbcWn>ZRnQjr9mTlspUy>H=$fc{Rs}LTM zTNLVT6qy$oSQr(Uo*!;xXzAk`mhP1Ak*Muw>{sY-5}I6C>}DBIWWjaHZfdT;x>c5?P$79g!AM=ospgA6{Z!nvt91 z$mNq>5$G9i=@RI#9q5;w>|g3@R#lc86jYEFXrAtz7ZjGBnr2{DWNr}{$fc{Rt5BZr zlA0V4Vq{tn5g6ziQ5ogo8Cet2Mhp`Vd!u|Y|BR-{L$t7mb9rH`el1(&X_u7XdJ zad}F%fpMU*V^MB#sFz`iSF(4$WwM`so`Hd9R7S9KXlh=if4)hniz}Cz$!0OzeeJA_ zOXEXs{pMBf_~~>e@1w_;j6Ac`GW*JUBKBT?YUR9%aUmar)vx>Kl%AfnWc_*Y%7tys o*EVtQ)(UU<%YIxwtE_ypiJH&#y7uVDR&~Nz9=WqEeXq6w065lL6aWAK delta 236 zcmbQhG=XV?PQ7+Upp#>1sG)O~OJ+o6RAp&eM3tFuv3o{YWQd=EM^0KQbu8vcV%LzYg#~xb84z_h?%#A1(&X_u7Z1x zkzujEYml*fnn!9_u4Rr}Qej%9Q%Q!YW3s7PxUj3Q)p#rscVM6uaTiyN|k>|xtC9R zGM9Nux~G0}WkH00Rj`S#S8}qWg-cPXr;k}ihGS4!d1j%LQ&EM#p`VduGMBEdu7Zba zK&FdndU2tre_^0&xo2rfm7!roVY!KsrG8?fd$_B6RDF`apKFMhUnm!Q)7Q#xUr%$- zJ$-Y_^zELLYMJlMt5mMoUhOKdcXLkjd8t~7zIFAy&uWZC517?lDCm4vw~+a+jg4O0 zo0x{_{k!(7Jz)}iVEx;HLu3ASCYFfziw~w|aZQzWGfVH$=VQ&}mll-sI-nW2Gw5*p z%=YNo|KGyDuG~=HTlCd-Vtc#y%6IWqcQiZdZ5R`BCVcG{{xxO!{{w3~axIEN9lYlG zGj}O-Y^s@bki*!P{kGeBUa2cn&K~`y36@wd7Kld-;6RVng3KPkXm-_KrTLuu5f5ebB}aCDVK* z?0Gr*iwxeZo!#XkblzYGYfZ~}^JeY5{VNWNe|zD(wZf_LbIdwN?`8g08Jk*WCcmwB z(RTkNY7;J9H6eA9hsquok&wAo&OCRD%vE+S^o+k7@iFAv#~<34rIuPT2VHW1r&7w7 z6XvmHS-)I#&*Lq{M{K9JskZRDGBEyL_t@0+qtNWx^TP!FKAnx5`oyC5-S_N3sZ7VW zx_uUfdxM%*>do?+agE8x=!4vHW!94{y7On;sh<|{mf^t7bq4}9eH4oPC*R!8#I)k+ z`Zey4#rXFyNnA>^ZTT4xv!XG4!PIyYgU005VSneF`u3b<@^C4-Z_LdZ`BY9uq%$RO z{}!9aR`&H5c6^bq{gP?2bK)V_J1- z59g2PpLb4+65B9G^x*8KpzSL@vCLi+W8NS6b#B02xyadbTAl}P`rdNh{dNlPqVij_ z)fK1B`*-tTY4djRsWavN{c^bYp||14BA?15=8t28xnk=ssO#5T$9V3Y_p`e1*_y2{ zw_PreZ*x%gYFoPK)t%j|`<2}oZZWM|zhk}Nywf)C?*7T_HWqWzwCcU+eS!bZFMEc& z0#n>MWsh&3up;%Kt)GNeqx{h=dSN$jew(guEY;2au4wN^|LC%1F~&#pHoI?C4KRHp z{!wbGEA!4X52ZS1p4{@hF0X#0+Qv^O4JPke__m_6r_}d`#X;{c88e#AR=j$h%C5a^ zhxud!iT^v44N}zvPa1hYn4wUuzAxeH6xRL^XZ!Xn|0Y+%<2Si2`ohnxHV1v9@0njc zGTCLPoLcDp=gvDA8t)xf>T=&U@!q8S0U|F;uW0lKNG@@!_L~^~h513ZQ^-WK@cNAv zS^wJgIgkBZXL@kXyOKnYkGmUtoEmq%HCVuX{A!Awo~*c4u#?a$w=JRPk80JFH?7Vs z`&xVYiWTP?wTRA;_36*oaNId{?fv09w+m*jm8d$j*8TgD(64{*XjQCt5?=hP`>e+M zm?t~g?wfAE)#JEu+vQhM6${=Ns3`L{C+MeJ)k|}GJd+hpR(NnQKtGk~VcHj-+G+QH zC)cvOiM_hK|9fh%h2M=^*DgvdeE2FUd+*^nm&N26ubFC_yykIPrzC$R>cZ@`bGVn? ztz=(sXWnk{eU|Ug6Xqp7x_`iRJu`QP1)KNIf7a6-V-{}I z6%(rN*48>tb~ySyiW zH?=(Rh1HzALdlTLOkb~bnTTIo-Sj?avdqk1+r?4>3&Mixzu49PloAm;`QMeJL;1|# z_Yy5TUjDc*tGP<*S@^r#2^)LEZn{2It@xxI@_>EwpTh~vojLMt%Y^+O9ebkrWKFs- z*VNiXr=J|^eaq9zcXb9dD(S^|#zo!?V))CnY+r)^zRM=!|0A_5XBmp!>*$Sp8dW*9 zBuHRMuh&`yhy9Pty5)k4>%~tA`ld3zRpD`2zs%OKXuZaDtLP}ry1b87m$}0Bi*1wg zGo3G|nGm<~uh=fjgxIH9 ze0n4F@b2sIt?ZvOQ{C+ASN)y+dgk1@9N(@tUsZE`(|OKNrL3ok&!0`@cz=EM3eTGh zJDd|lujh7N?+>aL-L{IMGORMMKzIMHP0M`#aNWpybl*#SpWUA{E`1-RLyF$FCP^-R zA{6jduUR|QseIOtGg%h=8maqJbG}_vT)13qaiXQ3|IhGc+rJ(bIg;?cuWn7j!V?mq z?hZF3%K!W_-dTS4%NB2gkN?g|6ek<$)#toP)7jHn#i1XV%aG?`^nH5Pvb?DrnVL!0 zH~&w$sN60!|MnJhtrQV(fgK{?fK}5d&Zi3OluDJl|0B0u89cQcc9zv_S{cw zncB-`Ht&~r-%#@JWdCY$>5i<$Z^C7+CnU!Dt=?tVl~v!!b?5ZlW5;$Mc@rl)d`*;Bw2%-y+g{ z5+@GqT71NRYS+De*)Qrh#Z(=L%VwDw_)?*$2DHN5xdhql|zp10^gY+ZuZbY~~t)Qss1>jh3fd;jjx*5oy}W7HIdviM&tY39>8 z-TQRihTRDPpYHsU}~r_Z&dLGI9N zkJY{TrjL0aX?YnuJ$&l{(}waR94cnb^(>8Mr3>t%PI2=oZoZJ0bTZ?sy3zT?ysH`F)iX^ zM_2v9&iE@PQ4;yDPi#KMn3)t89>u})DZ)?ETdwZ=DzT6WCZ_W5KFm~TZ~B>N9A4~M z;b3{f>Bd3BV%3w*C*+e`AEp^D6$-d2G|{JU?*1pA?QZID-2W$SXgGh0Q@&l(;mmmZ zDRuYv)clOq3bSX4d^6>Q5%W8huYSd0N7?DEdH*(WoTbnw`PWU|IK^z zW9DlvbLI47E~zqq0_6Ie>;%t=?h(|V zFj>Sc{)4pLVumI1r#Sze>pwGb!kp);g{=4QmYKg$yxra>mwn2URks$_|MZ^bx8VZc zp4UHT<>+dsO!G$}Mc5m)OU5(r2Z@!op&*+xqPd=~Gxxi(<@vj{%HXoL}*}LrC%qJ7oza*P% zzGSW9ys=}?p{&_+H*i0Yl9SDK_9=N)FO|v@`6co?f2(R(`TwVv)K2Nusr45a=J9A-C!m>%Yn@5A;{a3$-;*e_@gOL!kWU zu~RO;Z=DQ0tF`~|-FK4@y4;!6c1!JQ!$#JdZVNgT|ILyu@ot>kuy5Dy@V1=3cV$KP z>(16I8f)$?SJiFZDmwjO$VSFLT(j4fc-`|{6`gIMnR<$2&NnxeH%-3N*3ADbbx6-` zl}M?f_(TQ!Cz)^68E3BEP(AsDbn4Y9=2sRlcdXRa{p|3z`K(#Ie&f|OS4H;Dd#KT| zdHcKftg_ys1!oHDCa<10JL8`5oxk<*2KT4zTDJZpqhY;%f6*TC$r^>{!i`&|Ps!PE z>VnShCwJn1GxM!{VzgrU_P273Yj@V4i1}at*O*1nhjEea`L8c$Wt|ocQOS6v;Ibno z>SibNI@vv{>Qbj|<@f3{O3G_;{Qbstu!3>h9|!)q>u*1iXuZUjd*|0ap(z=@#)r8Y z`~|qa9{DkGAAj$nBlY6GH#W6=z4~Cidh@m^3q59X{nE>9?%gMI^iYT3%CsW3#r?9~ z3t9hPbhqJkFuo*KeLz%Yi+@*I#QYnD{Jq-eH+i$aUe~5HiDL_Is>jaRWiyRFN*ni0 z<%pHqdLZxH0>j&g%y~kkNT|E`Usn8l{fHxXXRv)gGAp<` z>&LV%-Y1inx=o2>v9eo!EL+(`*zw?zW2$XW{?ELbyjr&4grgd(uGPlmk~s>6eHT7& znfH5bQN#JFht1ySt0LxP9k_e_`we}`xv{+KdDP!F9Tofb|LM96n*$f-PSctF{v#&< DC{U@u delta 4000 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 H>xFdyPvgPJ diff --git a/newinfra/secrets-git-crypt/openolat_db_password b/newinfra/secrets-git-crypt/openolat_db_password new file mode 100644 index 0000000000000000000000000000000000000000..fc78ce36f8ebf4359a3a9e23ebfc90ed7e05e34b GIT binary patch literal 131 zcmZQ@_Y83kiVO&0$kyGU{q0!q(}){~kUp>L*8>6VGX0vK{VJSXN1L>dMCMeMm@0j6(3qfKY5&7yN8Do#F9D8I nqUB!wOXOeP-BDe{93129AM*O&rnOMvMpotzuV2bR2nK*yX>~