summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--net-im/synapse/Manifest10
-rw-r--r--net-im/synapse/files/synapse.initd-r110
-rw-r--r--net-im/synapse/synapse-1.82.0.ebuild204
3 files changed, 224 insertions, 0 deletions
diff --git a/net-im/synapse/Manifest b/net-im/synapse/Manifest
index 1b666fc51ce9..c13e1a3703b5 100644
--- a/net-im/synapse/Manifest
+++ b/net-im/synapse/Manifest
@@ -1,5 +1,6 @@
DIST aho-corasick-0.7.19.crate 113070 BLAKE2B 5ddaa0d415d19cf9922b5723bf3480750634ea68cb66fd05bfa2bf57607eb6383ba86d8c55f70adb87b71b98caa73d8f6ebd075c006493530c81979032899b60 SHA512 0d63d29079650bde4e8a9f8529716b9d8c42db076a1d74715116240c2628173f1e86fb29c08a25ad07a0148e48789ab20de0c186a8b3dfb193cbfeb0d76ae78c
DIST anyhow-1.0.69.crate 43576 BLAKE2B deb44b3110aee1314dd599b730df8c2f03b7d13c0d945d4ef00a0e30ca74257269e43107be19868adfea331a8c730e0aec2dff3abea704e56bc6a35b9581fe14 SHA512 d65e5c9404a70b1e0af90dd66af157f8c31ad0858f703765d5fc6c828f1fc8db690b17451c4108e3a52a7da2d6c2366e745d7b4bd7d19e6dba3485f7c3a43071
+DIST anyhow-1.0.70.crate 43803 BLAKE2B 574da0e447592c12051deef171850b00ac2347dd336f71915dd21f45cc03439fbcdbaffe261097d53cc11fa0db75b1e3b21ba667f26c08db7125b1c6264973de SHA512 6fd1338e4cbe915cb01fcc5e05e7e0c051868701eeb27f03577a7cfdd59057493922b36e2308f7050608a851112d4d24cff2826456160ac8930fe961640e809b
DIST arc-swap-1.5.1.crate 66157 BLAKE2B 9060ef4f9d699fadc03be1a116d9301f6308fbb7f8bcad6f01926d584386d26d03f9dd2ea35b6771a6725ee7819e028d0e1b256e8b5f3b812cbd388e757491fb SHA512 8636149e92c068d5ff5352a19c9973e7bf2aba68b9363c783178903a8665f6edabbd30c25ad7992646635efe5830d67c958f8d41b44a4ed1fe5698628b41c074
DIST autocfg-1.1.0.crate 13272 BLAKE2B 7724055c337d562103f191f4e36cab469e578f0c51cc24d33624dea155d108a07578703766341fd6a4cc1ef52acda406e7dba1650d59115f18261281e5b40203 SHA512 df972c09abbdc0b6cb6bb55b1e29c7fed706ece38a62613d9e275bac46a19574a7f96f0152cccb0239efea04ee90083a146b58b15307696c4c81878cd12de28f
DIST bitflags-1.3.2.crate 23021 BLAKE2B eb990bb27b2bdeb66fd7212ce582cb36e1c616debbac85df642d0c82b25439e6bf9b1e811fac76b59e58ea3c1bbea6170d03a61e8f9a395e4334a0e2e2987eda SHA512 3c698f757b5cc62f815f9a1cce365c3d2dd88e4db71f331dff8bba86c2865f755b81cb4c9bfc59bd86b7643b0943f9e09a7c4f8ad75eb2ab0e714803d0129f62
@@ -22,6 +23,7 @@ DIST once_cell-1.15.0.crate 31460 BLAKE2B ae4481883865abe6a684d63520fb2e91b64d6c
DIST parking_lot-0.12.1.crate 40967 BLAKE2B 940a112a066e3cbd15e2f6df89bfff37e4ece2194118618a96fa14871813c91798f93181ab0f768d3e1f3d60805508f216724013afb7e3da95678d0d951a42d4 SHA512 07327d3b737a913508dffb66023766348ce7f9d555c224a099cabb05baefd16a28e15fec638e3a148a5169dbd980c4541b0f8820ae9d06dfe0704482838fbd5c
DIST parking_lot_core-0.9.3.crate 32256 BLAKE2B 79a1924a983b948a5c2b0c074452a7b2b61abda973d3bc8040d9153d34b378f0ee330e36aa813f49544319c479665d6328be71481f2e1e41bc94abb9bfbd12a0 SHA512 fa30db0fc73b268ab8395adb8bda35d12dc15363b247a95b7c4bb848ff9b8dbfb971a20f320b4feff3317d5b533c59b62152e4c652c1809a422c5671310b30df
DIST proc-macro2-1.0.46.crate 41954 BLAKE2B 3bdc274c8ada8bf1a84d4480b25e0348f4ec5bfacebb74da144a36d4dc0efeb341fa24525e7e8408c3589013a048563a46f1e094944afc1726e594534e2455fa SHA512 1c2ae8dc4bebeeaa4af02f8edce18b3d159109a1639d8e9f26be2b7023ade9d09824ee0f2a60ae034967d982158196826fdb989d23a4b3bc81188a9a63e18cb9
+DIST proc-macro2-1.0.52.crate 42982 BLAKE2B c432e889c6d02e359863ca40d30e20b5c3567d065ea16e5963eb713ea9a02a9979ec996939efbb23aa37857ec37e6587b2519d8267a1a713d1b17fce014acca6 SHA512 76b24c82bfd37a7eed4dda59a56fa2101ec4e8d6ad726e3fdace9daa729090de2cb2bcfd4246dd691129645c613ae18c6fc448c940b459724681202f7a232f3f
DIST pyo3-0.17.3.crate 408939 BLAKE2B e67ce34c626dbede3c76abf66ba5078827e8a75644ff9fbd83eccf3d53096a3c2e0991da8b3489ea9984c665751308bcf4aa9c3d31dd62c72127694156a7a0a9 SHA512 5c83ea76202edce13c370d023562a9009382e36fdf3fcd7c4dea844ab8e5e048db4cc79a9c0ea98fb7017a83da16924ba0981ad98bd83e75e2fac434738e9740
DIST pyo3-build-config-0.17.3.crate 29230 BLAKE2B 193df0c15a2150505c823338e76f4d75e2f28158626edf332da2b10b6a81bfaf7f95a3a32c9f218717504b2f0dd80d3fb61c78ab3df9cb9024c3686f8ca002b0 SHA512 92652ffdfb3f6c3c8a1c2f97f5e2ed19175ba6bad5cd0f0c113b569369193aa18d95adc780bbdb8202d815a1ec0b6aeaf40d93d64faab42f4e8b452c806906a2
DIST pyo3-ffi-0.17.3.crate 62854 BLAKE2B 3f1c519b210de0aee19b832845c1d44237f780f18173ddc1b1cef5eac1060fab40fd8dbec067a49e4d28fc7edcd0bd751f54438ad42a8b98641de0517052c64b SHA512 c08481d1530207fee544a5dde14253415e5451c1c013b86ac1f0e9bcb3c1df7866764cd11bad523105b6821725560329b89ff689b3aa2f0698cdab148d0fc12e
@@ -30,18 +32,26 @@ DIST pyo3-macros-0.17.3.crate 7257 BLAKE2B 4c5e166a37c31f2cc21b7dce9b46dcdaeea0f
DIST pyo3-macros-backend-0.17.3.crate 49992 BLAKE2B a922c3c2c1f494002fa8592704c43ddbb4d9bf650187adcfc94f82c1275bcb69d444ede404d1b40bdf1e199427e8de880464b76c7385c2f96633544ad021c4b4 SHA512 b4dbddc3ac7ae542560459376127cabdbb4de83c04d70a4efe0976fa94e6ce94a7a62723f689a8fbb1d795fc235b1ac3611f8b4985ae2af0db4a9dc08de48927
DIST pythonize-0.17.0.crate 10949 BLAKE2B 6d3c311aae1ef97a2a965124eb23e312f94c4d1e2a8ec17d9316c9fd2f72990b95977a87f722012e4fb54ce0a8be1a2eaac57b71e9d429dbbe59b0da387b2b81 SHA512 a9a46d27b8aa9e5bd7bb0b114b7457275131d90e20acd07110fbc18b3af3b9aa0683b9306fb645645f3801b64c0c479998665f3e4fcec0ed8e5b5947008b76bc
DIST quote-1.0.21.crate 28030 BLAKE2B 547344ba9272874f5fbb4bd27a69ef5be99823e10e1318afe71971b18f37e9c73d54168f16efb82c53a332e4874c80a82ea951fb2c85fad50cdfe783622b79fc SHA512 0728eb4df7e1f7c4d32ab08c901c2c969db8eb46b03bcec3e4956a4f6b360939d32abc6b6ebd7a31058e8e9b69c3d995a24cb484f93656f05b4ee963be1c74fc
+DIST quote-1.0.26.crate 28397 BLAKE2B b468a5e9350843ea81e540d17c9fcb302b46fbd450e10280c5fff6fd7c98a439df8c3d3d47e551bc6d67ed02052b5b5c65d215d5ff8ee34f045747e75c1ba37e SHA512 6fcfe4d31f601aa60beb858c25df217421b0a184d185eebc7a4cb9fbf97c687992b77bebd8671a9e6193716387c3e926fed9b75a08684eb2d9a5b155fbc321a5
DIST redox_syscall-0.2.16.crate 24012 BLAKE2B 9497a52044458b1435ea16e86ee072e379b6b11ee31602ea72d6b6072a4a99426f409c2e58108a4e9c36dc193fa49c83951e71f4fd4e158eafff18c594dc01ad SHA512 63b5d876baaf99f5cf737679bc6ac7a9e3d8a41aa93f5c59416ce7e3841e2513bff678773553cfe62fb452707f82acc384ea63aec932a31bf94679cd1caddd27
DIST regex-1.7.1.crate 239648 BLAKE2B d68591ab0627f0bbcead8e81de2b9f6c7eb7be2d29b2c1700e06ffb541c073ecc054dfc76aba8f55ac0630b191d4136805bd04c7d1b9f6cbb1ca2437668ab244 SHA512 ee19bc6d24b981a151324ad4115488383227ec33dfba0225b35b6252f0d363b8d906db59a45170139c7a687fe681a983c2392d2921c7365db38c7c0e9745066f
+DIST regex-1.7.3.crate 239886 BLAKE2B 8d9413178b626b09243e18a1c5e0336cd41e05659128d4026bd551df0c34b9e141e36c3134f3b22200b18828ef89082a08515047159afb4f4960e5fa840fd54b SHA512 f7e8dbcfaa10c2443b9a6dfa514edf0e149d33f1a135e4a828adf97dbb0f1af5a4b58a2bad75ea8cbecb9641f499b30ed06b8ba60c7eaba79409ca18ede85e4f
DIST regex-syntax-0.6.27.crate 297300 BLAKE2B 4ca1a2e23d04e29c5925085ea4ab7ebcc398dfe135eacaab1e686aa8be43a110a28e8bec05a6910183f9a6bb1fd0d635fcb1a60b5a6a03fed4d2cf937a542a5a SHA512 5cc705a5dda08cbdb4dbcf3fa98763cadcda13d9c3ba407b35f3e88d77935efc2704bb40b3fb5aad7dfbad0df43bcb4c4cad9732defb954e2228a0739f7c37c6
+DIST regex-syntax-0.6.29.crate 299752 BLAKE2B 2408ebfe5f0dd6578c33f18e8ea9a0a7a84388420c5b67adcaedde477f3f67fb3e39ba9fab1f6892c7ae7fff754c4aca51314601529cabc6a8fc43af38a11f88 SHA512 28a58950d15df1f0ac4ff4185c05b535e8f5bf0b75f79fad24e40e17a02570d1c9bd9cfc919eed8756a1069bc489c5fdccfd04f6b8266c83e3412b7b4bdc262e
DIST ryu-1.0.11.crate 47007 BLAKE2B d03e8df69c3b21c1b2e4ffa91ece794f141e9f9bce4e9ed1ebf394b1cb0f796147b86189885f0734df8f431b2d166d8f6ed6a261be398d6d088fd56046a85c2e SHA512 dd2642aab2d3017c31432436226d5350b894c8b88a09395eb7de6350964b3cc48451a829ce78b04a9e4e0480076fe1bddd0604f4e57700faa2d60cac6e361408
DIST scopeguard-1.1.0.crate 11470 BLAKE2B f774eb90b7d3ffb2efba47518e9d1dead4017ab4b38a4bd74914daa84a5af4bf9eb63da0496e3924499d79cd0439c37447aeda4a21226f95645bddcd6becfabe SHA512 368fa5726df8f42b599993681579a9ffd0196480ee3cd0f9f671e8493f3bedd1e1779bdf2beb329e77e0005fa09b816e3385f309490c0f2781568db275d4d17d
DIST serde-1.0.152.crate 77091 BLAKE2B 89c01ce359042ebe6b1b64ea710580886f965a98e1d6085c58a75269a9b43401e2cace080c4c93ee51982855fb7e2f09fdefe9bd237bbf30c5537f3a4258283b SHA512 b47bd58fdc1a81d96cc0c9d14c8b19153b6689e893851975b1d7c7010c4448750e7fa09056dd4f13ed475a4aea2a3950952ff528832976919a6e78504a37bea7
+DIST serde-1.0.160.crate 77010 BLAKE2B 45d2585bd7e5dcd368b72c29046bd595c577826da4aea6d019adaf07d23adc096db7aba952037dfdac9dbf08a1e92ababd44cc784ace557fe2cfe83beca446cf SHA512 b03eb453ac01a483843829952462de4e8f6d0fa4a244d38a6f476a911e2e991a508121265befd108134ae7cce8a7a40c4d217f80f3e025f9a612a0bf80862306
DIST serde_derive-1.0.152.crate 55586 BLAKE2B f133c6cdb87d435ea0c05144e685047fec22b93df7c61df4aa139358c2732326c98d0f62fda629da0f648aaacfc9d6f312813940238f45b359546dd435e7a516 SHA512 2f4dffb5671b4758f0b7dc0939f6b5cfe3b3ba02a53c62c75b5a0ec89d2db26bdd95f3e269d1fd4b07ec921bc0ca5f0741c26fdfcd25bd6532ac698c6c701e91
+DIST serde_derive-1.0.160.crate 55081 BLAKE2B 851cbd173bd758d46c9f545f05a17f65f7b0a2cd353cc75a985072e3772ca6d8395b63208d845dfba231d7cb5fcee97ec0df0bd0df010096577d618fad8bffb0 SHA512 14b2a2ad7131efa7ec95d5a6e7633a9d1e991b046c0b00cce9c3681edd73cb53ff477aa52a430d8465aa8b362696244ea80f12ffbf0e6f98e35605fe4c60f407
DIST serde_json-1.0.94.crate 144406 BLAKE2B cb4098da36ae5792e8c8e129e3148f27a4c646a57f3e59fde75febe252de79c8e1b310d947c2fb5ed7ec75e68b146f61b0b1d31dcc6f510ac61a37f64a47afc9 SHA512 0c85ccfce884a12dc7d57c110de4c96994f84e6a23ed28b9d38c9ac53ad6be506ad414735bfbd4d90fb49ea087460bb9da1929bb3aad7bbfc518b812ce92516a
+DIST serde_json-1.0.96.crate 144652 BLAKE2B 2754e63479aa07507015dcb0f989d6447f5b2c01e5f02cf8a843d90c90c6fd0acd3ecb68d80d76c249efdabe0bd0670649a9e576269928d2276ba00a3153131d SHA512 39779419900e1d395d81e70cff0e7a688564a66124b08e74da54ac30f389c912707f4bf5e29afab6fa106faf4bf4e0b841f42fef125cf7bec185482ff6bbba0e
DIST smallvec-1.10.0.crate 31564 BLAKE2B e3e46a0781d3a7892a739b001592d462d0704f010363984c439e3fe4f75aecb9720648aa1e9bcc56bb3be848dd40cee578212439f78f07a807c9441c3c3e0147 SHA512 a09110184582dcc01d7a0d3fa8f74c17bf726935126d3654667b8e9c4bc43ad16ccfd8fa94feae7d9b31913aa7ee030fe5936e4b44a36302b6ce5fe37372a7ae
DIST subtle-2.4.1.crate 12630 BLAKE2B 05a90232bfdc2cf67522e2972bddcd8dc9a165b1d1cf775d0b1c8358fc7c4d0559b2b899126b6688b8ef77b8b7580b3b300f74a599a7ee77f99c064a3917693b SHA512 7fd8234b7ffa3ca7e473539cad958df0842186e1dd735905e0d4977564f40a5f2e18b58180fcbe52614a00964dc150bd9f6964500847ea658f22bffe030f5c6a
DIST syn-1.0.104.crate 236683 BLAKE2B 865904923ecac469f1d92bab04ea9ee384be0592c7a303d9d0f2f4bc755744bd883372c215a8f1add8bc2728d7c2c27489ab292fc8a89bdce918fc4a32deae44 SHA512 8feabd8e6b1b5eb15077d7c92f0b3269e848d33b1f233b3df343b6d445ed332fb23e0222911a13edfd82cee969d25c43434268cd7a20ce1c0a608a1bbe327b29
+DIST syn-2.0.10.crate 240095 BLAKE2B d2def2e1354d41bfcc3ad9cfd80ed611a56fd8560dc1b3c45aabd1927847fe69a92eb7c9575f159a5d3a004e8463f7f13ed60a4aa4ec6055552c1f731badc6fb SHA512 31f9c461b296453dcc0b7fbc71c2350658f447d4d90644b1bb35782fdf4067405090a0f9875a96fce9473855275d800d5986200b7a575b9fafd48218157b673e
DIST synapse-1.79.0.gh.tar.gz 8230631 BLAKE2B 7ee06ef19b6a00022d26f3a58c91eb0b5dd2471e7e2cd0b90b8e6ab4b08ffd07b051aa472cdca1d8c6cf31a98d851fdce42fd45258b978e2511a6b6664217d8b SHA512 0ba9e0513ee4eccea7de270c9d3e4775b044a6815bb22b5b12cf4d36b367fb30cb3e7be0b7c0e1c8634e439acc2b5b37e6ee40095f48e089502cb648b91dabdf
+DIST synapse-1.82.0.gh.tar.gz 8239769 BLAKE2B b61c67af76255b240618497cdbf2ab7fdad0050e913a4ac5e3fc0a045a9566128315c68d4844e9f20c842872cb51d645fccfe47892e28da5ae45394ca6d5a46f SHA512 2c62e795cc927c1352d0387ca59fe9eceeefbff1aef93a7510dd423bead81f66a3bb579426c3f6ec592d4dda4743613131f895e5e626eb5aeb05d72b94d91dd0
DIST target-lexicon-0.12.4.crate 23020 BLAKE2B ad9780b9478b00b4fdcb07bd016d83216695413090ac29cca06388c3790e2832c978b1c7e69f6d34bb6fc9adc39c0a0b6b6636e50a9715a9f5f16445dba22d19 SHA512 194fe1946ad8d9fdb383bf8a65374e24d216382c1ed5379dabc98d58842512624c32838b8d6d0658d866f6559d37f1343a30c5809e8914dd85790399252b3e06
DIST typenum-1.15.0.crate 40741 BLAKE2B 5752d80396d0a37b0069b98ace9efe96d94ccaf41b33b8149c8b8c6a767537dbffe64251bbf61f3812465ecbc8cb45544f177dc97ac9735d84454282e4d1ed66 SHA512 a3c1ceac85e1aed98d0829449c35f4f36db860218b955b4e5f8f01da1d27ee6213f3c60e2b25c3745dcd67369049da5de737a9473fa9402db99cf7cddeb42288
DIST unicode-ident-1.0.5.crate 35455 BLAKE2B 7e14ce97ac53a88ccec015dea690918a673dc5b49e44de7fdcb5421871da35c4f514c6db9a363d6f4bfcf2e9a61a50a593d345d0b6f388ea882b17a00cd0335d SHA512 d355370daac356d900cd4c0a792d6c0eff114524c4bffce4d7e74469fe2117883ee00bf0e27d950b72e88739473f2045d5f83440a0aedfede97b4d9163b64a6c
diff --git a/net-im/synapse/files/synapse.initd-r1 b/net-im/synapse/files/synapse.initd-r1
new file mode 100644
index 000000000000..f4c53a0f117b
--- /dev/null
+++ b/net-im/synapse/files/synapse.initd-r1
@@ -0,0 +1,10 @@
+#!/sbin/openrc-run
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+name="Matrix synapse daemon"
+description=""
+command=/usr/bin/synapse_homeserver
+command_args="--daemonize --config-path /etc/synapse/homeserver.yaml"
+command_user="synapse:synapse"
+pidfile=/var/lib/synapse/homeserver.pid
diff --git a/net-im/synapse/synapse-1.82.0.ebuild b/net-im/synapse/synapse-1.82.0.ebuild
new file mode 100644
index 000000000000..0a07abe00e3e
--- /dev/null
+++ b/net-im/synapse/synapse-1.82.0.ebuild
@@ -0,0 +1,204 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9..11} )
+DISTUTILS_USE_PEP517=poetry
+
+CRATES="
+ aho-corasick-0.7.19
+ anyhow-1.0.70
+ arc-swap-1.5.1
+ autocfg-1.1.0
+ bitflags-1.3.2
+ blake2-0.10.6
+ block-buffer-0.10.3
+ cfg-if-1.0.0
+ crypto-common-0.1.6
+ digest-0.10.5
+ generic-array-0.14.6
+ hex-0.4.3
+ indoc-1.0.7
+ itoa-1.0.4
+ lazy_static-1.4.0
+ libc-0.2.135
+ lock_api-0.4.9
+ log-0.4.17
+ memchr-2.5.0
+ memoffset-0.6.5
+ once_cell-1.15.0
+ parking_lot-0.12.1
+ parking_lot_core-0.9.3
+ proc-macro2-1.0.52
+ pyo3-0.17.3
+ pyo3-build-config-0.17.3
+ pyo3-ffi-0.17.3
+ pyo3-log-0.8.1
+ pyo3-macros-0.17.3
+ pyo3-macros-backend-0.17.3
+ pythonize-0.17.0
+ quote-1.0.26
+ redox_syscall-0.2.16
+ regex-1.7.3
+ regex-syntax-0.6.29
+ ryu-1.0.11
+ scopeguard-1.1.0
+ serde-1.0.160
+ serde_derive-1.0.160
+ serde_json-1.0.96
+ smallvec-1.10.0
+ subtle-2.4.1
+ syn-1.0.104
+ syn-2.0.10
+ target-lexicon-0.12.4
+ typenum-1.15.0
+ unicode-ident-1.0.5
+ unindent-0.1.10
+ version_check-0.9.4
+ windows-sys-0.36.1
+ windows_aarch64_msvc-0.36.1
+ windows_i686_gnu-0.36.1
+ windows_i686_msvc-0.36.1
+ windows_x86_64_gnu-0.36.1
+ windows_x86_64_msvc-0.36.1
+"
+
+inherit cargo distutils-r1 multiprocessing optfeature systemd
+
+DESCRIPTION="Reference implementation of Matrix homeserver"
+HOMEPAGE="
+ https://matrix.org/
+ https://github.com/matrix-org/synapse/
+"
+SRC_URI="
+ https://github.com/matrix-org/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+ $(cargo_crate_uris)
+"
+
+LICENSE="Apache-2.0"
+# Dependent crate licenses
+LICENSE+="
+ Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD MIT Unicode-DFS-2016
+"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="postgres systemd test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ acct-user/synapse
+ acct-group/synapse
+"
+RDEPEND="
+ ${DEPEND}
+ dev-python/attrs[${PYTHON_USEDEP}]
+ dev-python/bcrypt[${PYTHON_USEDEP}]
+ dev-python/bleach[${PYTHON_USEDEP}]
+ >=dev-python/canonicaljson-2[${PYTHON_USEDEP}]
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ dev-python/ijson[${PYTHON_USEDEP}]
+ dev-python/immutabledict[${PYTHON_USEDEP}]
+ >=dev-python/jinja-3.0[${PYTHON_USEDEP}]
+ dev-python/jsonschema[${PYTHON_USEDEP}]
+ >=dev-python/matrix-common-1.3.0[${PYTHON_USEDEP}]
+ dev-python/msgpack[${PYTHON_USEDEP}]
+ dev-python/netaddr[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ dev-python/phonenumbers[${PYTHON_USEDEP}]
+ dev-python/pillow[${PYTHON_USEDEP},webp]
+ dev-python/prometheus_client[${PYTHON_USEDEP}]
+ dev-python/pyasn1-modules[${PYTHON_USEDEP}]
+ dev-python/pyasn1[${PYTHON_USEDEP}]
+ dev-python/pydantic[${PYTHON_USEDEP}]
+ dev-python/pymacaroons[${PYTHON_USEDEP}]
+ dev-python/pyopenssl[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/service_identity[${PYTHON_USEDEP}]
+ dev-python/signedjson[${PYTHON_USEDEP}]
+ dev-python/sortedcontainers[${PYTHON_USEDEP}]
+ dev-python/treq[${PYTHON_USEDEP}]
+ dev-python/twisted[${PYTHON_USEDEP}]
+ dev-python/typing-extensions[${PYTHON_USEDEP}]
+ dev-python/unpaddedbase64[${PYTHON_USEDEP}]
+ postgres? ( dev-python/psycopg:2[${PYTHON_USEDEP}] )
+ systemd? ( dev-python/python-systemd[${PYTHON_USEDEP}] )
+"
+BDEPEND="
+ dev-python/setuptools-rust[${PYTHON_USEDEP}]
+ test? (
+ dev-python/idna[${PYTHON_USEDEP}]
+ dev-python/parameterized[${PYTHON_USEDEP}]
+ dev-python/pyicu[${PYTHON_USEDEP}]
+ postgres? ( dev-db/postgresql[server] )
+ )
+"
+
+# Rust extension
+QA_FLAGS_IGNORED="usr/lib/python3.*/site-packages/synapse/synapse_rust.abi3.so"
+
+src_test() {
+ if use postgres; then
+ einfo "Preparing postgres test instance"
+ initdb --pgdata="${T}/pgsql" || die
+ pg_ctl --wait --pgdata="${T}/pgsql" start \
+ --options="-h '' -k '${T}'" || die
+ createdb --host="${T}" synapse_test || die
+
+ # See https://matrix-org.github.io/synapse/latest/development/contributing_guide.html#running-tests-under-postgresql
+ local -x SYNAPSE_POSTGRES=1
+ local -x SYNAPSE_POSTGRES_HOST="${T}"
+ fi
+
+ # This remove is necessary otherwise python is not able to locate
+ # synapse_rust.abi3.so.
+ rm -rf synapse || die
+
+ nonfatal distutils-r1_src_test
+ local ret=${?}
+
+ if use postgres; then
+ einfo "Stopping postgres test instance"
+ pg_ctl --wait --pgdata="${T}/pgsql" stop || die
+ fi
+
+ [[ ${ret} -ne 0 ]] && die
+}
+
+python_test() {
+ "${EPYTHON}" -m twisted.trial -j "$(makeopts_jobs)" tests
+}
+
+src_install() {
+ distutils-r1_python_install_all
+ keepdir /var/{lib,log}/synapse /etc/synapse
+ fowners synapse:synapse /var/{lib,log}/synapse /etc/synapse
+ fperms 0750 /var/{lib,log}/synapse /etc/synapse
+ newinitd "${FILESDIR}/${PN}.initd-r1" "${PN}"
+ systemd_dounit "${FILESDIR}/synapse.service"
+}
+
+pkg_postinst() {
+ optfeature "Improve user search for international display names" dev-python/pyicu
+ optfeature "VoIP relaying on your homeserver with turn" net-im/coturn
+
+ if [[ -z "${REPLACING_VERSIONS}" ]]; then
+ einfo
+ elog "In order to generate initial configuration run:"
+ elog "sudo -u synapse synapse_homeserver \\"
+ elog " --server-name matrix.domain.tld \\"
+ elog " --config-path /etc/synapse/homeserver.yaml \\"
+ elog " --generate-config \\"
+ elog " --data-directory /var/lib/synapse \\"
+ elog " --report-stats=no"
+ einfo
+ else
+ einfo
+ elog "Please refer to upgrade notes if any special steps are required"
+ elog "to upgrade from the version you currently have installed:"
+ elog
+ elog " https://github.com/matrix-org/synapse/blob/develop/docs/upgrade.md"
+ einfo
+ fi
+}