From 4157dac7dda38e29bb83321a5b33dad099bd436f Mon Sep 17 00:00:00 2001 From: s-prechtl Date: Wed, 16 Jul 2025 22:33:20 +0200 Subject: [PATCH] feat: whatsapp just works --- hosts/hitsugibune/matrix.nix | 47 ++++++++++++++++++++++++++++++++--- secrets/mautrix-whatsapp.age | Bin 0 -> 1036 bytes secrets/secrets.nix | 1 + 3 files changed, 45 insertions(+), 3 deletions(-) create mode 100644 secrets/mautrix-whatsapp.age diff --git a/hosts/hitsugibune/matrix.nix b/hosts/hitsugibune/matrix.nix index b4e7e2d..290e6d9 100644 --- a/hosts/hitsugibune/matrix.nix +++ b/hosts/hitsugibune/matrix.nix @@ -23,6 +23,12 @@ in { group = "mautrix-signal"; }; + age.secrets.mautrix-whatsapp = { + file = ../../secrets/mautrix-signal.age; + owner = "mautrix-whatsapp"; + group = "mautrix-whatsapp"; + }; + age.secrets.coturn = { file = ../../secrets/coturn.age; owner = "turnserver"; @@ -233,10 +239,45 @@ in { provisioning = { shared_secret = "$PROVISIONING_SHARED_SECRET"; }; + }; + }; - network = { - # INFO: If I ever decide to run this for multiple people this option isnt safe -> change to false - use_contact_avatars = true; + services.mautrix-whatsapp = { + enable = true; + environmentFile = config.age.secrets.mautrix-whatsapp.path; + settings = { + homeserver = { + address = "http://localhost:8008"; + name = config.networking.domain; + }; + # This will break sooner or later when the new config arrives + # https://github.com/NixOS/nixpkgs/pull/420722 + + backfill = { + enabled = true; + }; + + bridge = { + message_status_events = true; + + encryption = { + allow = true; + default = true; + require = false; + pickle_key = "$ENCRYPTION_PICKLE_KEY"; + }; + + history_sync.backfill = true; + + permissions = { + "*" = "relay"; + "sprechtl.me" = "user"; + "@spr3ez:sprechtl.me" = "admin"; + }; + + provisioning = { + shared_secret = "$PROVISIONING_SHARED_SECRET"; + }; }; }; }; diff --git a/secrets/mautrix-whatsapp.age b/secrets/mautrix-whatsapp.age new file mode 100644 index 0000000000000000000000000000000000000000..f4cb0143e5fd778de3417775b0c653a1e7d59ba7 GIT binary patch literal 1036 zcmYdHPt{G$OD?J`D9Oyv)5|YP*Do{V(zR14F3!+RO))YxHMCSP5AezMN>>QWcFf2u zH8(aZ%**sj&&sJR&5No^%G6IOGz>P#G&9onGIEY8HE<8`h~zR$(f2Sab}Dhwu8N2% zGKh>UGB8NS?p_q)pB@ob;vJl7Y93acR~78xt#1;NQEZr><84?~?vxyE9ByP;SX6FM5pG$P zSCG!-m+tB4Smc?VXP8u4o*tDN;Tq}XloVy;91-m49p#&r6sDbFP+%F6;!#-SQc#fX zU7Y9dY!I1Y?i3PWm|{}GrC;o38DQdX9O_tNV(#x|5fSBU?vd?ZQEn8O=IdryVwmL{ zR$k~B>gJSY5|mbK=BSH$Y5$R=F zSza1g5g1%lZdn>&oKX^~?H26oU20z7T4q*e;+vCG91@aQW}KDf=FjCFnPcJOA6Q;q z0WN;?pRik7~xx*>S$2qljj-X8&P6l>Rjp*=#(7p zm6gj?9_CqA8Co3fToM(M99U&+nrq_b9$?^>>s=n2=jIfU>*Hck6d4}kne35QVc?Zj z;A*0snivrhmSvI^kQHdmWnpSyRvu9m7H*ko;T7edVU!f8om}ElmXT3hVpbUGT2&S5 zSs4(PWLfU+oL-WaURYq7ZJDR<7+mRDViD?-$>rpql;dLI8WmZR8Rlo6l46-1nwA&h z>16d$zo`1?>ioNkqB`3LU^BAsuzPj?or4tjE z?b_HRC!~_QF!AqP5k;{%&o9qjvB3WJ6Z>+5+b5Fdl{n9MFk{bEp=mW$2F~2AOD1U= zY4|40_}1ItDfpqJ_*a*o{(AGj^Vqgltr7K9U`Q2dWH8+Ou6mJh(@Z7~?^<_;Xa6d# zez@r$-!k<_(m}11_1^-Yxc=3_Z^?g(wL)qboIjPuYW3+ zOy&5*@owSNj00kU56y)Hk|#cj_{O27&-h(;+wYHQ*Yr3ixruS;+&l9A{Oz4*XM3r} zg<4#w-uOY`^u@Mdsm*i$-ka;X>RA7}`dYVNg-evAjaN-(d-%YrY+Az{tBAfs(F~K1 Pi8gU2{nz0w>;4J=5Y&o~ literal 0 HcmV?d00001 diff --git a/secrets/secrets.nix b/secrets/secrets.nix index c26c18b..1971ec9 100644 --- a/secrets/secrets.nix +++ b/secrets/secrets.nix @@ -8,5 +8,6 @@ in { "speedtest-tracker.age".publicKeys = [saberofxebec key]; "matrix.age".publicKeys = [hitsugibune key]; "mautrix-signal.age".publicKeys = [hitsugibune key]; + "mautrix-whatsapp.age".publicKeys = [hitsugibune key]; "coturn.age".publicKeys = [hitsugibune key]; }