Gentoo Archives: gentoo-commits

From: Viorel Munteanu <ceamac@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/proj/guru:master commit in: net-im/mautrix-signal/, net-im/mautrix-signal/files/
Date: Sun, 29 Jan 2023 10:40:26
Message-Id: 1674953965.ab691bb7e109d523c76003beffb76e77e2b8a922.ceamac@gentoo
1 commit: ab691bb7e109d523c76003beffb76e77e2b8a922
2 Author: Julien Roy <julien <AT> jroy <DOT> ca>
3 AuthorDate: Sun Jan 29 00:59:25 2023 +0000
4 Commit: Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
5 CommitDate: Sun Jan 29 00:59:25 2023 +0000
6 URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=ab691bb7
7
8 net-im/mautrix-signal: new package, add 0.4.2
9
10 Signed-off-by: Julien Roy <julien <AT> jroy.ca>
11
12 net-im/mautrix-signal/Manifest | 1 +
13 net-im/mautrix-signal/files/mautrix-signal.initd | 25 +++++++
14 net-im/mautrix-signal/files/mautrix-signal.service | 12 ++++
15 net-im/mautrix-signal/mautrix-signal-0.4.2.ebuild | 80 ++++++++++++++++++++++
16 net-im/mautrix-signal/metadata.xml | 19 +++++
17 5 files changed, 137 insertions(+)
18
19 diff --git a/net-im/mautrix-signal/Manifest b/net-im/mautrix-signal/Manifest
20 new file mode 100644
21 index 000000000..15c840bcc
22 --- /dev/null
23 +++ b/net-im/mautrix-signal/Manifest
24 @@ -0,0 +1 @@
25 +DIST mautrix-signal-0.4.2.gh.tar.gz 99310 BLAKE2B 31150d71bd7be79e081e31399964df2df3f855ea1c779c4f568419c4f84c007fd8c935095f3b1f57987dfcb786ca166682ff2ba6a75be64ee47bd4a1c5318fdc SHA512 381f4838182834e696697bbc1f159d51bd905f8e9a1c1d18b1ccdd84553d383c3f9c71f20dbef74d7634aae587f9db733fa7b944916d4be7cc02f37db7cdb956
26
27 diff --git a/net-im/mautrix-signal/files/mautrix-signal.initd b/net-im/mautrix-signal/files/mautrix-signal.initd
28 new file mode 100644
29 index 000000000..aa35ee908
30 --- /dev/null
31 +++ b/net-im/mautrix-signal/files/mautrix-signal.initd
32 @@ -0,0 +1,25 @@
33 +#!/sbin/openrc-run
34 +# Copyright 1999-2023 Gentoo Authors
35 +# Distributed under the terms of the GNU General Public License v2
36 +
37 +name="mautrix-signal daemon"
38 +description="A Matrix-Signal Messenger puppeting bridge"
39 +module="mautrix_signal"
40 +
41 +pidfile="/run/${RC_SVCNAME}.pid"
42 +command="/usr/bin/python"
43 +command_args="-m ${module} -c /etc/mautrix/${module}.yaml -r /var/lib/mautrix/signal/registration.yaml"
44 +command_background=true
45 +command_user="mautrix-signal:mautrix"
46 +
47 +output_log="/var/log/mautrix/mautrix-signal_daemon.log"
48 +error_log="/var/log/mautrix/mautrix-signal_daemon.log"
49 +
50 +depend() {
51 + need signald
52 +}
53 +
54 +start_pre() {
55 + checkpath -d -m 0755 -o "$command_user" /var/lib/mautrix/signal
56 + checkpath -f -m 0644 -o "$command_user" "$output_log"
57 +}
58
59 diff --git a/net-im/mautrix-signal/files/mautrix-signal.service b/net-im/mautrix-signal/files/mautrix-signal.service
60 new file mode 100644
61 index 000000000..799c520c0
62 --- /dev/null
63 +++ b/net-im/mautrix-signal/files/mautrix-signal.service
64 @@ -0,0 +1,12 @@
65 +[Unit]
66 +Description=A Matrix-Signal Messenger puppeting bridge
67 +After=network.target
68 +
69 +[Service]
70 +User=mautrix-signal
71 +Group=mautrix
72 +Restart=always
73 +ExecStart=/usr/bin/python -m mautrix_signal -c /etc/mautrix/mautrix_signal.yaml -r /var/lib/mautrix/signal/registration.yaml
74 +
75 +[Install]
76 +WantedBy=multi-user.target
77 \ No newline at end of file
78
79 diff --git a/net-im/mautrix-signal/mautrix-signal-0.4.2.ebuild b/net-im/mautrix-signal/mautrix-signal-0.4.2.ebuild
80 new file mode 100644
81 index 000000000..f25d7e0b3
82 --- /dev/null
83 +++ b/net-im/mautrix-signal/mautrix-signal-0.4.2.ebuild
84 @@ -0,0 +1,80 @@
85 +# Copyright 2022-2023 Gentoo Authors
86 +# Distributed under the terms of the GNU General Public License v2
87 +
88 +EAPI=8
89 +
90 +DISTUTILS_USE_PEP517=setuptools
91 +PYTHON_COMPAT=( python3_{9..10} )
92 +
93 +inherit distutils-r1 optfeature systemd
94 +
95 +DESCRIPTION="A Matrix-Telegram Messenger puppeting bridge "
96 +HOMEPAGE="https://github.com/mautrix/signal/"
97 +SRC_URI="https://github.com/mautrix/signal/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz"
98 +S="${WORKDIR}/signal-${PV}"
99 +
100 +LICENSE="AGPL-3"
101 +SLOT="0"
102 +KEYWORDS="~amd64"
103 +
104 +RDEPEND="
105 + acct-user/${PN}
106 + dev-python/aiohttp[${PYTHON_USEDEP}]
107 + dev-python/asyncpg[${PYTHON_USEDEP}]
108 + dev-python/attrs[${PYTHON_USEDEP}]
109 + dev-python/commonmark[${PYTHON_USEDEP}]
110 + dev-python/mautrix[${PYTHON_USEDEP}]
111 + dev-python/olm[${PYTHON_USEDEP}]
112 + dev-python/phonenumbers[${PYTHON_USEDEP}]
113 + dev-python/pillow[${PYTHON_USEDEP}]
114 + dev-python/pycryptodome[${PYTHON_USEDEP}]
115 + dev-python/python-magic[${PYTHON_USEDEP}]
116 + dev-python/qrcode[${PYTHON_USEDEP}]
117 + dev-python/ruamel-yaml[${PYTHON_USEDEP}]
118 + dev-python/signalstickers-client[${PYTHON_USEDEP}]
119 + dev-python/unpaddedbase64[${PYTHON_USEDEP}]
120 + dev-python/yarl[${PYTHON_USEDEP}]
121 + net-libs/signald
122 +"
123 +DEPEND="${RDEPEND}"
124 +
125 +src_install() {
126 + distutils-r1_src_install
127 +
128 + keepdir /var/log/mautrix
129 + fowners root:mautrix /var/log/mautrix
130 + fperms 770 /var/log/mautrix
131 + sed -i -e "s/\/var\/run\/signald\/signald\.sock/\/tmp\/signald\.sock/" "${ED}/usr/example-config.yaml" || die
132 + sed -i -e "s/\.\/${PN}.log/\/var\/log\/mautrix\/${PN}.log/" "${ED}/usr/example-config.yaml" || die
133 +
134 + insinto "/etc/mautrix"
135 + newins "${ED}/usr/example-config.yaml" "${PN/-/_}.yaml"
136 + rm "${ED}/usr/example-config.yaml" || die
137 +
138 + newinitd "${FILESDIR}/${PN}.initd" "${PN}"
139 + systemd_dounit "${FILESDIR}/${PN}.service"
140 +
141 + fowners -R root:mautrix /etc/mautrix
142 + fperms -R 770 /etc/mautrix
143 +}
144 +
145 +pkg_postinst() {
146 + optfeature "Prometheus statistics" dev-python/prometheus_client
147 + optfeature "Sqlite backend" dev-python/aiosqlite
148 +
149 + einfo
150 + elog ""
151 + elog "Before you can use ${PN}, you must configure it correctly"
152 + elog "The configuration file is located at \"/etc/mautrix/${PN/-/_}.yaml\""
153 + elog "When done, run the following command: emerge --config ${CATEGORY}/${PN}"
154 + elog "Then, you must register the bridge with your homeserver"
155 + elog "Refer your homeserver's documentation for instructions"
156 + elog "The registration file is located at /var/lib/${PN/-/\/}/registration.yaml"
157 + elog "Finally, you may start the ${PN} daemon"
158 + einfo
159 +}
160 +
161 +pkg_config() {
162 + su - "${PN}" -s /bin/sh -c \
163 + "/usr/bin/python -m ${PN/-/_} -c /etc/mautrix/${PN/-/_}.yaml -g -r /var/lib/${PN/-/\/}/registration.yaml"
164 +}
165
166 diff --git a/net-im/mautrix-signal/metadata.xml b/net-im/mautrix-signal/metadata.xml
167 new file mode 100644
168 index 000000000..233fdb479
169 --- /dev/null
170 +++ b/net-im/mautrix-signal/metadata.xml
171 @@ -0,0 +1,19 @@
172 +<?xml version="1.0" encoding="UTF-8"?>
173 +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
174 +<pkgmetadata>
175 + <maintainer type="person">
176 + <email>julien@××××.ca</email>
177 + <description>Julien Roy</description>
178 + </maintainer>
179 + <upstream>
180 + <maintainer>
181 + <name>Tulir Asokan</name>
182 + <email>tulir@×××××××.net</email>
183 + </maintainer>
184 + <changelog>https://github.com/mautrix/telegram/releases</changelog>
185 + <doc>https://docs.mau.fi/bridges/python/telegram/index.html</doc>
186 + <bugs-to>https://github.com/mautrix/telegram/issues</bugs-to>
187 + <remote-id type="github">mautrix/telegram</remote-id>
188 + <remote-id type="pypi">mautrix-telegram</remote-id>
189 + </upstream>
190 +</pkgmetadata>