diff options
Diffstat (limited to 'heisenbridge')
| -rw-r--r-- | heisenbridge/.SRCINFO | 26 | ||||
| -rw-r--r-- | heisenbridge/PKGBUILD | 52 | ||||
| -rw-r--r-- | heisenbridge/heisenbridge.install | 7 | ||||
| -rw-r--r-- | heisenbridge/heisenbridge.service | 12 | ||||
| -rw-r--r-- | heisenbridge/heisenbridge.sysusers | 1 | ||||
| -rw-r--r-- | heisenbridge/heisenbridge.tmpfiles | 2 |
6 files changed, 100 insertions, 0 deletions
diff --git a/heisenbridge/.SRCINFO b/heisenbridge/.SRCINFO new file mode 100644 index 0000000..f1f47da --- /dev/null +++ b/heisenbridge/.SRCINFO | |||
| @@ -0,0 +1,26 @@ | |||
| 1 | pkgbase = heisenbridge | ||
| 2 | pkgdesc = a bouncer-style Matrix IRC bridge | ||
| 3 | pkgver = 1.14.1 | ||
| 4 | pkgrel = 1 | ||
| 5 | url = https://github.com/hifi/heisenbridge | ||
| 6 | install = heisenbridge.install | ||
| 7 | arch = any | ||
| 8 | license = MIT | ||
| 9 | makedepends = python-setuptools | ||
| 10 | makedepends = python-pytest-runner | ||
| 11 | depends = python | ||
| 12 | depends = python-irc | ||
| 13 | depends = python-ruamel-yaml | ||
| 14 | depends = python-aiohttp-socks | ||
| 15 | depends = python-mautrix | ||
| 16 | backup = etc/heisenbridge/registration.yaml | ||
| 17 | source = heisenbridge-1.14.1.tar.gz::https://github.com/hifi/heisenbridge/archive/v1.14.1.tar.gz | ||
| 18 | source = heisenbridge.service | ||
| 19 | source = heisenbridge.sysusers | ||
| 20 | source = heisenbridge.tmpfiles | ||
| 21 | sha256sums = ec7848b550c4cb00563276508a8924d731da658bb0f961ccbb886514e3a817f2 | ||
| 22 | sha256sums = 67487b221bff329952f5c95186c4ea794c7e7a3e25e6d213075fd306c68cfa95 | ||
| 23 | sha256sums = b3bc4328ead7afd186d5a191fabc347543c0fad17dc01047a4cf0532d999f255 | ||
| 24 | sha256sums = 24bd23e4427aaf635a91b170c07abe8a6b1c62cbad47e50a161c12807641d351 | ||
| 25 | |||
| 26 | pkgname = heisenbridge | ||
diff --git a/heisenbridge/PKGBUILD b/heisenbridge/PKGBUILD new file mode 100644 index 0000000..8aa24b4 --- /dev/null +++ b/heisenbridge/PKGBUILD | |||
| @@ -0,0 +1,52 @@ | |||
| 1 | # Maintainer: Yigit Sever <yigit at yigitsever dot com> | ||
| 2 | # Contributor: Bjoern Franke <bjo+aur@schafweide.org> | ||
| 3 | |||
| 4 | pkgname=heisenbridge | ||
| 5 | pkgver=1.14.1 | ||
| 6 | pkgrel=1 | ||
| 7 | pkgdesc="a bouncer-style Matrix IRC bridge" | ||
| 8 | url="https://github.com/hifi/heisenbridge" | ||
| 9 | depends=('python' 'python-irc' 'python-ruamel-yaml' 'python-aiohttp-socks' | ||
| 10 | 'python-mautrix') | ||
| 11 | makedepends=('python-setuptools' 'python-pytest-runner') | ||
| 12 | license=('MIT') | ||
| 13 | arch=('any') | ||
| 14 | source=("${pkgname}-${pkgver}.tar.gz::${url}/archive/v${pkgver}.tar.gz" "${pkgname}.service" "${pkgname}.sysusers" "${pkgname}.tmpfiles") | ||
| 15 | sha256sums=('ec7848b550c4cb00563276508a8924d731da658bb0f961ccbb886514e3a817f2' | ||
| 16 | '67487b221bff329952f5c95186c4ea794c7e7a3e25e6d213075fd306c68cfa95' | ||
| 17 | 'b3bc4328ead7afd186d5a191fabc347543c0fad17dc01047a4cf0532d999f255' | ||
| 18 | '24bd23e4427aaf635a91b170c07abe8a6b1c62cbad47e50a161c12807641d351') | ||
| 19 | backup=("etc/${pkgname}/registration.yaml") | ||
| 20 | install="${pkgname}.install" | ||
| 21 | _dirname="${pkgname}-${pkgver}" | ||
| 22 | |||
| 23 | prepare() { | ||
| 24 | cd "${srcdir}/${_dirname}" | ||
| 25 | # create an empty registration file so that permissions get written | ||
| 26 | # properly from the get go this way secret keys are never world | ||
| 27 | # readable | ||
| 28 | touch registration.yaml | ||
| 29 | } | ||
| 30 | |||
| 31 | build() { | ||
| 32 | cd "${srcdir}/${_dirname}" | ||
| 33 | python setup.py build | ||
| 34 | } | ||
| 35 | |||
| 36 | package() { | ||
| 37 | cd "${srcdir}/${_dirname}" | ||
| 38 | |||
| 39 | _shared_dir="/usr/share/${pkgname}" | ||
| 40 | |||
| 41 | python setup.py install --optimize=1 --skip-build --root="${pkgdir}/" --prefix="/usr" --install-data="${_shared_dir}" | ||
| 42 | |||
| 43 | # it's a semi-common failure for python packages to install tests in | ||
| 44 | # the main dir which would make them conflict eachother | ||
| 45 | rm -rf "${pkgdir}$(python -c 'import site; print(site.getsitepackages()[0])')/tests" | ||
| 46 | |||
| 47 | install -Dvm 644 "${srcdir}/${pkgname}.service" "${pkgdir}/usr/lib/systemd/system/${pkgname}.service" | ||
| 48 | install -Dvm 644 "${srcdir}/${pkgname}.sysusers" "${pkgdir}/usr/lib/sysusers.d/${pkgname}.conf" | ||
| 49 | install -Dvm 644 "${srcdir}/${pkgname}.tmpfiles" "${pkgdir}/usr/lib/tmpfiles.d/${pkgname}.conf" | ||
| 50 | |||
| 51 | install -Dvm 640 registration.yaml "${pkgdir}/etc/${pkgname}/registration.yaml" | ||
| 52 | } | ||
diff --git a/heisenbridge/heisenbridge.install b/heisenbridge/heisenbridge.install new file mode 100644 index 0000000..10184df --- /dev/null +++ b/heisenbridge/heisenbridge.install | |||
| @@ -0,0 +1,7 @@ | |||
| 1 | post_install() { | ||
| 2 | cat <<- 'EOF' | ||
| 3 | You may adjust the homeserver via | ||
| 4 | # systemctl edit heisenbridge.service | ||
| 5 | if you don't use localhost:8008 as your homeserver URL | ||
| 6 | EOF | ||
| 7 | } | ||
diff --git a/heisenbridge/heisenbridge.service b/heisenbridge/heisenbridge.service new file mode 100644 index 0000000..e40dcf9 --- /dev/null +++ b/heisenbridge/heisenbridge.service | |||
| @@ -0,0 +1,12 @@ | |||
| 1 | [Unit] | ||
| 2 | Description=a bouncer-style Matrix IRC bridge | ||
| 3 | |||
| 4 | [Service] | ||
| 5 | ExecStart=python -m heisenbridge -c /etc/heisenbridge/registration.yaml | ||
| 6 | Restart=on-failure | ||
| 7 | User=heisenbridge | ||
| 8 | WorkingDirectory=~ | ||
| 9 | |||
| 10 | |||
| 11 | [Install] | ||
| 12 | WantedBy=multi-user.target | ||
diff --git a/heisenbridge/heisenbridge.sysusers b/heisenbridge/heisenbridge.sysusers new file mode 100644 index 0000000..47fc57c --- /dev/null +++ b/heisenbridge/heisenbridge.sysusers | |||
| @@ -0,0 +1 @@ | |||
| u heisenbridge - "Matrix IRC bridge" /var/lib/heisenbridge | |||
diff --git a/heisenbridge/heisenbridge.tmpfiles b/heisenbridge/heisenbridge.tmpfiles new file mode 100644 index 0000000..94db647 --- /dev/null +++ b/heisenbridge/heisenbridge.tmpfiles | |||
| @@ -0,0 +1,2 @@ | |||
| 1 | z /etc/heisenbridge/* 640 heisenbridge heisenbridge | ||
| 2 | d /var/lib/heisenbridge/ 700 heisenbridge heisenbridge | ||
