summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMel <mel@rnrd.eu>2025-08-18 15:50:56 +0200
committerMel <mel@rnrd.eu>2025-08-18 15:51:06 +0200
commita76a5e9fad265f281c55b5e4a80ae97d9f234cc7 (patch)
treef3c3c77c0fbec7e6d6da2546b27780cfd0b3c94f
parentdcc5f8e5624919c887969343fc9b743b88c60ce7 (diff)
downloadnetwork-a76a5e9fad265f281c55b5e4a80ae97d9f234cc7.tar.zst
network-a76a5e9fad265f281c55b5e4a80ae97d9f234cc7.zip
Migrate Matrix from conduwuit to continuwuity, now on renard
Signed-off-by: Mel <mel@rnrd.eu>
-rw-r--r--machines/lapin/default.nix4
-rw-r--r--machines/renard/default.nix4
-rw-r--r--secrets/conduwuit-registration-token.agebin917 -> 0 bytes
-rw-r--r--secrets/continuwuity-registration-token.age18
-rw-r--r--secrets/secrets.nix4
-rw-r--r--services/conduwuit.nix70
-rw-r--r--services/matrix.nix87
7 files changed, 110 insertions, 77 deletions
diff --git a/machines/lapin/default.nix b/machines/lapin/default.nix
index f774bea..376c7a4 100644
--- a/machines/lapin/default.nix
+++ b/machines/lapin/default.nix
@@ -7,9 +7,6 @@
./hardware.nix
./devices.nix
- # TODO: migrate to fork.
- # R.I.P. conduwuit :(
- # ../../services/conduwuit.nix
../../services/pds.nix
../../services/akkoma
];
@@ -28,7 +25,6 @@
"base"
"akkoma"
"pds"
- "conduwuit"
];
};
};
diff --git a/machines/renard/default.nix b/machines/renard/default.nix
index 2f9dcb6..c3fb0fe 100644
--- a/machines/renard/default.nix
+++ b/machines/renard/default.nix
@@ -15,6 +15,7 @@
../../services/minecraft.nix
../../services/miniflux.nix
../../services/shiori.nix
+ ../../services/matrix.nix
../../services/irc
];
@@ -42,6 +43,7 @@
"git"
"mel"
"shorest"
+ "matrix"
];
};
};
@@ -53,7 +55,7 @@
return = "301 https://soc.rnrd.eu$request_uri";
};
- # delegate matrix to lapin
+ # delegate matrix to subdomain `matrix.rnrd.eu`
"/.well-known/matrix/server" = {
return = "200 '{ \"m.server\": \"matrix.rnrd.eu:443\" }'";
extraConfig = ''
diff --git a/secrets/conduwuit-registration-token.age b/secrets/conduwuit-registration-token.age
deleted file mode 100644
index 9f1e340..0000000
--- a/secrets/conduwuit-registration-token.age
+++ /dev/null
Binary files differ
diff --git a/secrets/continuwuity-registration-token.age b/secrets/continuwuity-registration-token.age
new file mode 100644
index 0000000..e957a31
--- /dev/null
+++ b/secrets/continuwuity-registration-token.age
@@ -0,0 +1,18 @@
+age-encryption.org/v1
+-> ssh-ed25519 p1ieXg tqSFB3EtfciTASyLj/b7cTH1Hc8D1+W03qw3s7q70Ag
+Sx3QivmJMU3YIMOmiSMSWdfVPEVKAe30DRKAMFUU65U
+-> ssh-ed25519 ztr2Fw aRXAnFDPN8ZAvr+5JmbQvFOnz8I/p+is3nl/BW3XQlg
+ET2goN6Ej28Xgy0w9SblbHMKZGSXELxx8dRPUtRUgo4
+-> ssh-ed25519 lYrVNQ RDfLU+bkbFKxfwp9cGSw2l/jTQ4GZ7y+6m8fNAAIImo
++NF6+rrHd575TzcmjVxb8M+XQTHE8jeG63Ab+zmX7vs
+-> ssh-ed25519 COVM9Q lnV4LgJupeoQgj9zo+618v4hLXj1lVoD+/3FW2vqjH8
+DXgiM9SxbYq1mcYtb/nw3tAIjMKU72EUv9+wSMYNttY
+-> ssh-ed25519 aV3pTQ RVGzAFJBnOYKP5AneTwE0mQQxShK1kUHfTSlKJpBIUM
+GAvK26vGJ0wCQTIrWXSSpzfcPG55Scoxeu/dcdeut7A
+-> ssh-ed25519 jWuO5g EZ5YeYWwaMIw/gegtOpQEJFOOTPpDD3a/h/LHbH2UlE
+uqdxi5bDBgFJbTdqEwWi5bSHxwLuXXjttxFYa7HlNos
+-> ssh-ed25519 sqz3iQ zbfQbMHIznpAVR93jGt7WDkXqPhq0x5N6aOsFO7QszU
+JdxRsbhURvmnJEhwK6OSHi2I4LZXIGCpqsVXJlDpPd8
+--- tE2a2Xb9NHHH0EgmbiP6sqsD7gmtW+PQRu1EztvAdh0
+òPÎè+ ¦¼×Ú9º j ‡KþªÄg¶qýÉÆJ7€àß‹^*]=g’Ô;Ðu‘{9N
+^q•û`ìjŸànq¬¤–&OïJ \ No newline at end of file
diff --git a/secrets/secrets.nix b/secrets/secrets.nix
index 30bb62d..2a31d11 100644
--- a/secrets/secrets.nix
+++ b/secrets/secrets.nix
@@ -22,8 +22,8 @@ in
lapin
] ++ allAdmins;
- "conduwuit-registration-token.age".publicKeys = [
- lapin
+ "continuwuity-registration-token.age".publicKeys = [
+ renard
] ++ allAdmins;
"pia-login-secrets.age".publicKeys = [
diff --git a/services/conduwuit.nix b/services/conduwuit.nix
deleted file mode 100644
index 03b0dcb..0000000
--- a/services/conduwuit.nix
+++ /dev/null
@@ -1,70 +0,0 @@
-{ config, pkgs, auxiliaryPkgs, ... }:
-
-let
- inherit (pkgs) conduwuit dockerTools;
- inherit (auxiliaryPkgs) common;
-
- conduwuitLocalPort = 2123;
- conduwuitDir = "/srv/conduwuit";
-
- conduwuitImage = dockerTools.streamLayeredImage {
- name = "conduwuit";
- tag = conduwuit.version;
- fromImage = common.alpine.base;
-
- contents = [ conduwuit ];
- };
-
-in
-{
- age.secrets.conduwuit-registration-token = {
- file = ../secrets/conduwuit-registration-token.age;
- };
-
- foundation.service.conduwuit = {
- conduwuit = {
- image = conduwuitImage;
- ports = [ conduwuitLocalPort ];
-
- volumes = [
- [ "${conduwuitDir}/db" "/var/lib/conduwuit" ]
- [ "${conduwuitDir}/conduwuit.toml" "/etc/conduwuit/conduwuit.toml" ]
- [
- "${config.age.secrets.conduwuit-registration-token.path}"
- "/etc/conduwuit/registration-itoken"
- ]
- ];
-
- environment = {
- CONDUWUIT_CONFIG = "/etc/conduwuit/conduwuit.toml";
- };
-
- entrypoint = "${conduwuit}/bin/conduit";
- };
- };
-
- services.nginx.virtualHosts = {
- "matrix.rnrd.eu" = let
- proxySettings = { proxyPass = "http://127.0.0.1:${toString conduwuitLocalPort}"; };
- in
- {
- useACMEHost = "rnrd.eu";
- forceSSL = true;
-
- locations."/" = proxySettings;
- locations."/_matrix" = proxySettings;
- locations."/_conduwuit" = proxySettings;
-
- extraConfig = ''
- client_max_body_size 20M;
-
- proxy_connect_timeout 600;
- proxy_send_timeout 600;
- proxy_read_timeout 600;
- send_timeout 600;
-
- access_log /var/log/nginx/conduwuit.access.log json_combined;
- '';
- };
- };
-}
diff --git a/services/matrix.nix b/services/matrix.nix
new file mode 100644
index 0000000..3586cc8
--- /dev/null
+++ b/services/matrix.nix
@@ -0,0 +1,87 @@
+{
+ config,
+ pkgs,
+ unstablePkgs,
+ auxiliaryPkgs,
+ ...
+}:
+
+let
+ inherit (pkgs) dockerTools;
+ inherit (unstablePkgs) matrix-continuwuity;
+ inherit (auxiliaryPkgs) common;
+
+ continuwuityLocalPort = 2123;
+ continuwuityDir = "/srv/matrix";
+
+ continuwuityImage = dockerTools.streamLayeredImage {
+ name = "continuwuity";
+ tag = matrix-continuwuity.version;
+ fromImage = common.alpine.base;
+
+ contents = [ matrix-continuwuity ];
+ };
+
+in
+{
+ age.secrets.continuwuity-registration-token = {
+ file = ../secrets/continuwuity-registration-token.age;
+ };
+
+ foundation.service.continuwuity = {
+ continuwuity = {
+ image = continuwuityImage;
+ ports = [ continuwuityLocalPort ];
+
+ volumes = [
+ [
+ "${continuwuityDir}/db"
+ "/var/lib/continuwuity"
+ ]
+ [
+ "${continuwuityDir}/continuwuity.toml"
+ "/etc/continuwuity/continuwuity.toml"
+ ]
+ [
+ "${config.age.secrets.continuwuity-registration-token.path}"
+ "/etc/continuwuity/registration-token"
+ ]
+ ];
+
+ environment = {
+ CONDUWUIT_CONFIG = "/etc/continuwuity/continuwuity.toml";
+ };
+
+ entrypoint = "${matrix-continuwuity}/bin/conduwuit";
+ };
+ };
+
+ services.nginx.virtualHosts = {
+ "matrix.rnrd.eu" =
+ let
+ proxySettings = {
+ proxyPass = "http://127.0.0.1:${toString continuwuityLocalPort}";
+ };
+ in
+ {
+ useACMEHost = "rnrd.eu";
+ forceSSL = true;
+
+ locations."/" = proxySettings;
+ locations."/_matrix" = proxySettings;
+ locations."/_conduwuit" = proxySettings;
+ locations."/_continuwuity" = proxySettings;
+
+ extraConfig = ''
+ client_max_body_size 20M;
+
+ proxy_connect_timeout 600;
+ proxy_send_timeout 600;
+ proxy_read_timeout 600;
+ send_timeout 600;
+
+ access_log /var/log/nginx/matrix.access.log json_combined;
+ '';
+ };
+ };
+}