SwordArMor-gentoo-overlay/net-im/mautrix-telegram/mautrix-telegram-0.15.0.ebuild

84 lines
2.6 KiB
Bash

# Copyright 2022-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{10..11} )
inherit distutils-r1 optfeature systemd
DESCRIPTION="A Matrix-Telegram Messenger puppeting bridge "
HOMEPAGE="https://github.com/mautrix/telegram/"
SRC_URI="https://github.com/mautrix/telegram/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz"
S="${WORKDIR}/telegram-${PV}"
LICENSE="AGPL-3"
SLOT="0"
KEYWORDS="~amd64"
RDEPEND="
acct-user/${PN}
app-arch/brotli[python]
dev-python/aiohttp[${PYTHON_USEDEP}]
dev-python/aiodns[${PYTHON_USEDEP}]
>=dev-python/asyncpg-0.20[${PYTHON_USEDEP}]
!<dev-python/asyncpg-0.30[${PYTHON_USEDEP}]
dev-python/commonmark[${PYTHON_USEDEP}]
dev-python/cryptg[${PYTHON_USEDEP}]
dev-python/mako[${PYTHON_USEDEP}]
>=dev-python/mautrix-0.20.3[${PYTHON_USEDEP}]
!<dev-python/mautrix-0.21[${PYTHON_USEDEP}]
dev-python/python-olm[${PYTHON_USEDEP}]
dev-python/phonenumbers[${PYTHON_USEDEP}]
dev-python/pycryptodome[${PYTHON_USEDEP}]
dev-python/python-magic[${PYTHON_USEDEP}]
dev-python/qrcode[${PYTHON_USEDEP}]
>=dev-python/ruamel-yaml-0.15.35[${PYTHON_USEDEP}]
!<dev-python/ruamel-yaml-0.19[${PYTHON_USEDEP}]
>=dev-python/tulir-telethon-1.33.0_alpha1[${PYTHON_USEDEP}]
dev-python/unpaddedbase64[${PYTHON_USEDEP}]
dev-python/yarl[${PYTHON_USEDEP}]
"
DEPEND="${RDEPEND}"
src_install() {
distutils-r1_src_install
keepdir /var/log/mautrix
fowners root:mautrix /var/log/mautrix
fperms 770 /var/log/mautrix
sed -i -e "s/\.\/${PN}.log/\/var\/log\/mautrix\/${PN}.log/" "${ED}/usr/example-config.yaml" || die
insinto "/etc/mautrix"
newins "${ED}/usr/example-config.yaml" "${PN/-/_}.yaml"
rm "${ED}/usr/example-config.yaml" || die
newinitd "${FILESDIR}/${PN}.initd" "${PN}"
systemd_dounit "${FILESDIR}/${PN}.service"
fowners -R root:mautrix /etc/mautrix
fperms -R 770 /etc/mautrix
}
pkg_postinst() {
optfeature "Prometheus statistics" dev-python/prometheus_client
optfeature "Sqlite backend" dev-python/aiosqlite
einfo
elog ""
elog "Before you can use ${PN}, you must configure it correctly"
elog "The configuration file is located at \"/etc/mautrix/${PN/-/_}.yaml\""
elog "When done, run the following command: emerge --config ${CATEGORY}/${PN}"
elog "Then, you must register the bridge with your homeserver"
elog "Refer your homeserver's documentation for instructions"
elog "The registration file is located at /var/lib/${PN/-/\/}/registration.yaml"
elog "Finally, you may start the ${PN} daemon"
einfo
}
pkg_config() {
su - "${PN}" -s /bin/sh -c \
"/usr/bin/python -m ${PN/-/_} -c /etc/mautrix/${PN/-/_}.yaml -g -r /var/lib/${PN/-/\/}/registration.yaml"
}