From e55ab84c4425efb676f22303ff2bdea6e5642df4 Mon Sep 17 00:00:00 2001 From: Daniel Kempkens Date: Tue, 1 Aug 2023 18:32:28 +0200 Subject: [PATCH] matrix: bridges are no longer containers --- agenix/hosts/tanker/config.nix | 10 ---- agenix/hosts/tanker/mautrix-signal/config.age | Bin 16398 -> 16486 bytes .../hosts/tanker/mautrix-whatsapp/config.age | Bin 24701 -> 24640 bytes agenix/hosts/tanker/signald/environment.age | 18 +++--- container/matrix/default.nix | 54 ------------------ flake.lock | 18 +++--- home/programs/nvim/plugins.nix | 6 +- system/hosts/tanker.nix | 3 +- system/nixos/matrix/default.nix | 7 +++ system/nixos/matrix/mautrix-signal.nix | 39 +++++++++++++ system/nixos/matrix/mautrix-whatsapp.nix | 30 ++++++++++ system/nixos/{ => matrix}/synapse.nix | 11 +--- 12 files changed, 100 insertions(+), 96 deletions(-) delete mode 100644 container/matrix/default.nix create mode 100644 system/nixos/matrix/default.nix create mode 100644 system/nixos/matrix/mautrix-signal.nix create mode 100644 system/nixos/matrix/mautrix-whatsapp.nix rename system/nixos/{ => matrix}/synapse.nix (91%) diff --git a/agenix/hosts/tanker/config.nix b/agenix/hosts/tanker/config.nix index 96cd51c..5eeaa07 100644 --- a/agenix/hosts/tanker/config.nix +++ b/agenix/hosts/tanker/config.nix @@ -107,11 +107,6 @@ mautrix-signal-config = { file = ./mautrix-signal/config.age; - symlink = false; - path = "/var/lib/matrix-bridges/signal/config.yaml"; - mode = "640"; - owner = "1337"; - group = "1337"; }; signald-environment = { @@ -130,11 +125,6 @@ mautrix-whatsapp-config = { file = ./mautrix-whatsapp/config.age; - symlink = false; - path = "/var/lib/matrix-bridges/whatsapp/config.yaml"; - mode = "640"; - owner = "1337"; - group = "1337"; }; weewx-config = { diff --git a/agenix/hosts/tanker/mautrix-signal/config.age b/agenix/hosts/tanker/mautrix-signal/config.age index 43e272ea7327abc7369be2ccda4996a865714d98..4a1ae366d7c40a3b6cc87d56485d0a4f9f906245 100644 GIT binary patch literal 16486 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 Rv?Boh>$uWyfS_>*PNmhQsjUD2 literal 16398 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

Da)l4tuBUH)_{#mb8JbY#1!pX!C$- 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 diff --git a/agenix/hosts/tanker/mautrix-whatsapp/config.age b/agenix/hosts/tanker/mautrix-whatsapp/config.age index 392bd75d55404dc7c2def36e4bc04d93cc52f6ca..cff3194ca9c1407355f4c1ba3646ca8647cc58b4 100644 GIT binary patch literal 24640 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 ssh-ed25519 MtGp6g TjcF9u1gbYjURFImt7uh+O7hNw3E2pR6H/i8Xd90DkU -wdeuBiwP0BTzMeVx+i7+jpWFaAW+dMnsXakFenPad/E --> ssh-ed25519 iO8/4g V/BUJLff8IK0g5UFXqJ5ftK6Fs8zpheFr4ETzKQd5xs -0hzEB9qG6VX878t7tZzfjyH2BkgAhl+uDR4jX9chwgY --> g.G-grease X;7X` 3ecO{T|m -/2RKLQzMCznCQXYnltmy7YhoXzHRJ4oxdArYCfQzJEcWDwy465xgm8EMNdu0mNA+ -O15n2g ---- C896AcFfLEvwf3tcYqZP5dfPKFmE4oaaKH6KveEao6A -'{3*v䖋Ѷ4ޫ<;QC(b- `.gon˲< >:l0ԑ]T⵽ 2Δ*h%l*WA O(屄WRA0[_HC6` \ No newline at end of file +-> ssh-ed25519 MtGp6g /N1cHH7SmlpEdvKEcMzVflInTXChp+eWJFU2RoPWMUk +7nLndAtQ3DWXYmPvwq9tDPBiPLJMuDuCRtSXdFveSoo +-> ssh-ed25519 iO8/4g WSUXe/SRWLMN23PWyOM7qOCbXOFvTrzmTcq0zW/ABFs +NmQoYqT0x6t0WByQrIg+OAvP4VUU5tVydAHfVTZvPUE +-> eo6mwb;-grease :nS'C`f ?/iI) +oQ4Y4ksapQU8WwrdzObrSTiUiS37dk+c180046s7BqC6GX8iXFjR9kQSPb6tR9bl +Nhh/zHwzdGQmy7VekRL8ZdpbUeKd5D6X7w +--- aHWIb4WJ+O2kXUGFczOA6ngejy6jkMOmrFmcKLllq8s +*?DGL5Bf&AH;as%1h1rdO&q"D`CQ5xq2_[gDd'+g)6n/*,;lxS;R[c ( \ No newline at end of file diff --git a/container/matrix/default.nix b/container/matrix/default.nix deleted file mode 100644 index 7d1291c..0000000 --- a/container/matrix/default.nix +++ /dev/null @@ -1,54 +0,0 @@ -{ config, ... }: - -{ - virtualisation.oci-containers.containers = { - # https://gitlab.com/signald/signald - signald = { - image = "registry.gitlab.com/signald/signald:0.23.2"; - environmentFiles = [ config.age.secrets.signald-environment.path ]; - volumes = [ - "/var/lib/matrix-bridges/signald:/signald" - ]; - }; - - # https://mau.dev/mautrix/signal - matrix-signal = { - image = "dock.mau.dev/mautrix/signal:v0.4.3"; - dependsOn = [ "signald" ]; - ports = [ "127.0.0.1:29328:29328" ]; - volumes = [ - "/var/lib/matrix-bridges/signal:/data" - "/var/lib/matrix-bridges/signald:/signald" - ]; - }; - - # https://mau.dev/mautrix/whatsapp - matrix-whatsapp = { - image = "dock.mau.dev/mautrix/whatsapp:v0.8.6"; - ports = [ "127.0.0.1:29318:29318" ]; - volumes = [ - "/var/lib/matrix-bridges/whatsapp:/data" - ]; - }; - }; - - systemd.services = { - podman-signald.restartTriggers = [ - "${config.age.secrets.signald-environment.file}" - ]; - - podman-matrix-signal.restartTriggers = [ - "${config.age.secrets.mautrix-signal-config.file}" - ]; - - podman-matrix-whatsapp.restartTriggers = [ - "${config.age.secrets.mautrix-whatsapp-config.file}" - ]; - }; - - systemd.tmpfiles.rules = [ - "d /var/lib/matrix-bridges/signald 0775 0 0" - "d /var/lib/matrix-bridges/signal 0775 1337 1337" - "d /var/lib/matrix-bridges/whatsapp 0775 1337 1337" - ]; -} diff --git a/flake.lock b/flake.lock index 86caa31..f27b306 100644 --- a/flake.lock +++ b/flake.lock @@ -415,11 +415,11 @@ ] }, "locked": { - "lastModified": 1690846843, - "narHash": "sha256-sfguzocpi42+juoiUNLMtXws33DeEZkbEVTLtx/LKC8=", + "lastModified": 1690887397, + "narHash": "sha256-ckasuN7MgAiDgLkUo1IdEq8FEKymcUWKzmY6/R9KOOo=", "owner": "nix-community", "repo": "home-manager", - "rev": "310c0063b2558e94ad8bc3c1f2ddead82e0872cd", + "rev": "4542db605602898fe0c431e19f01e1af2865dae8", "type": "github" }, "original": { @@ -514,11 +514,11 @@ }, "nixos-stable": { "locked": { - "lastModified": 1690726002, - "narHash": "sha256-cACz6jCJZtsZHGCJAN4vMobxzH5s6FCOTZHMrh/Hu0M=", + "lastModified": 1690835256, + "narHash": "sha256-SZy/Nvwbf6CorhEsvmjqgjoYNLnRfaKVZMfSnpUDPnc=", "owner": "nixos", "repo": "nixpkgs", - "rev": "391e8db1f06c3f74c2d313a73135515023af3993", + "rev": "b7cde1c47b7316f6138a2b36ef6627f3d16d645c", "type": "github" }, "original": { @@ -530,11 +530,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1690833316, - "narHash": "sha256-+YU+/pTJmVKNW12R07/SJiTn7PQk90xwCI4D2PfLRPs=", + "lastModified": 1690860117, + "narHash": "sha256-srkCfjMlg777HxDVMfhkIFgRhhtuZjIOIyR2ejLYK+Y=", "owner": "nixos", "repo": "nixpkgs", - "rev": "9418167277f665de6f4a29f414d438cf39c55b9e", + "rev": "96d403ee2479f2070050353b94808209f1352edb", "type": "github" }, "original": { diff --git a/home/programs/nvim/plugins.nix b/home/programs/nvim/plugins.nix index 3d83b36..995e1ea 100644 --- a/home/programs/nvim/plugins.nix +++ b/home/programs/nvim/plugins.nix @@ -308,12 +308,12 @@ in }; comment-nvim = buildVimPluginFrom2Nix { pname = "comment.nvim"; - version = "2023-06-12"; + version = "2023-08-01"; src = fetchFromGitHub { owner = "numtostr"; repo = "comment.nvim"; - rev = "176e85eeb63f1a5970d6b88f1725039d85ca0055"; - sha256 = "0y3zhv82hi8avxhmp1c9h0r17kfclwxphzyk7701f6wjky375ksw"; + rev = "bacbed6346d1c5a095897f3fde3451a9a08e7f7d"; + sha256 = "19s2kmflga4v0dqwjb79imbv4aa4hcck340159rbzdb8a3bfhrji"; fetchSubmodules = false; }; }; diff --git a/system/hosts/tanker.nix b/system/hosts/tanker.nix index b066905..e9bb165 100644 --- a/system/hosts/tanker.nix +++ b/system/hosts/tanker.nix @@ -49,13 +49,12 @@ in ../nixos/rimgo.nix - ../nixos/synapse.nix + ../nixos/matrix ../nixos/tailscale.nix ../nixos/websites-tanker.nix - ../../container/matrix ../../container/proxitok ../../container/weewx ]; diff --git a/system/nixos/matrix/default.nix b/system/nixos/matrix/default.nix new file mode 100644 index 0000000..c1692a4 --- /dev/null +++ b/system/nixos/matrix/default.nix @@ -0,0 +1,7 @@ +{ + imports = [ + ./synapse.nix + ./mautrix-whatsapp.nix + ./mautrix-signal.nix + ]; +} diff --git a/system/nixos/matrix/mautrix-signal.nix b/system/nixos/matrix/mautrix-signal.nix new file mode 100644 index 0000000..7a2a9e3 --- /dev/null +++ b/system/nixos/matrix/mautrix-signal.nix @@ -0,0 +1,39 @@ +{ pkgs, config, ... }: + +{ + services.signald.enable = true; + systemd.services.signald.serviceConfig.EnvironmentFile = [ + config.age.secrets.signald-environment.path + ]; + + systemd.services.mautrix-signal = { + description = "A Matrix-Signal puppeting bridge"; + wantedBy = [ "multi-user.target" ]; + requires = [ "matrix-synapse.service" "signald.service" ]; + after = [ "matrix-synapse.service" "signald.service" ]; + restartTriggers = [ "${config.age.secrets.mautrix-signal-config.file}" ]; + serviceConfig = { + User = config.services.signald.user; + Group = config.services.signald.group; + LoadCredential = [ "config:${config.age.secrets.mautrix-signal-config.path}" ]; + ExecStart = "${pkgs.mautrix-signal}/bin/mautrix-signal --config=%d/config --no-update"; + Restart = "on-failure"; + RestartSec = "5s"; + + StateDirectory = "mautrix-signal"; + RuntimeDirectory = "mautrix-signal"; + StateDirectoryMode = "0750"; + RuntimeDirectoryMode = "0750"; + + ProtectHome = true; + ProtectKernelTunables = true; + ProtectKernelModules = true; + ProtectControlGroups = true; + PrivateTmp = true; + }; + }; + + services.matrix-synapse.settings.app_service_config_files = [ + "/var/lib/matrix-synapse/bridges/registration-signal.yaml" + ]; +} diff --git a/system/nixos/matrix/mautrix-whatsapp.nix b/system/nixos/matrix/mautrix-whatsapp.nix new file mode 100644 index 0000000..7471e9a --- /dev/null +++ b/system/nixos/matrix/mautrix-whatsapp.nix @@ -0,0 +1,30 @@ +{ pkgs, config, ... }: + +{ + systemd.services.mautrix-whatsapp = { + description = "Matrix <-> Whatsapp hybrid puppeting/relaybot bridge"; + wantedBy = [ "multi-user.target" ]; + requires = [ "matrix-synapse.service" ]; + after = [ "matrix-synapse.service" ]; + restartTriggers = [ "${config.age.secrets.mautrix-whatsapp-config.file}" ]; + serviceConfig = { + DynamicUser = true; + StateDirectory = "mautrix-whatsapp"; + LoadCredential = [ "config:${config.age.secrets.mautrix-whatsapp-config.path}" ]; + ExecStart = "${pkgs.mautrix-whatsapp}/bin/mautrix-whatsapp --config=%d/config --no-update"; + Restart = "on-failure"; + RestartSec = "5s"; + + ProtectSystem = "strict"; + ProtectHome = true; + ProtectKernelTunables = true; + ProtectKernelModules = true; + ProtectControlGroups = true; + PrivateTmp = true; + }; + }; + + services.matrix-synapse.settings.app_service_config_files = [ + "/var/lib/matrix-synapse/bridges/registration-whatsapp.yaml" + ]; +} diff --git a/system/nixos/synapse.nix b/system/nixos/matrix/synapse.nix similarity index 91% rename from system/nixos/synapse.nix rename to system/nixos/matrix/synapse.nix index 2952a85..b9dcd20 100644 --- a/system/nixos/synapse.nix +++ b/system/nixos/matrix/synapse.nix @@ -15,7 +15,7 @@ in listeners = [ { - bind_addresses = [ "127.0.0.1" "10.88.0.1" ]; + bind_addresses = [ "127.0.0.1" ]; port = 8008; tls = false; type = "http"; @@ -81,11 +81,6 @@ in enable_metrics = false; report_stats = false; - app_service_config_files = [ - "/var/lib/matrix-bridges/signal/registration.yaml" - "/var/lib/matrix-bridges/whatsapp/registration.yaml" - ]; - experimental_features = { msc3202_device_masquerading = true; msc3202_transaction_extensions = true; @@ -107,9 +102,7 @@ in }; }; - systemd.services.matrix-synapse.after = [ "postgresql.service" "podman-wait-for-host-interface.service" ]; - - networking.firewall.interfaces."podman+".allowedTCPPorts = [ 8008 ]; + systemd.services.matrix-synapse.after = [ "postgresql.service" ]; services.nginx.virtualHosts."${fqdn}" = { quic = true;