aboutsummaryrefslogtreecommitdiff
path: root/net-im/mautrix-slack
diff options
context:
space:
mode:
authorJulien Roy <julien@jroy.ca>2023-01-25 22:16:12 -0500
committerJulien Roy <julien@jroy.ca>2023-01-25 22:16:12 -0500
commitc2d6b8c034a2f6abf6777ea89f39e512408510f9 (patch)
tree2f101c8264092585db9a0db70009e2b8cdcc9b3c /net-im/mautrix-slack
parentf8deeddc6d2ff6672ca32dcccc9b590dd3ceb883 (diff)
downloadMrRoy-Overlay-c2d6b8c034a2f6abf6777ea89f39e512408510f9.tar.gz
MrRoy-Overlay-c2d6b8c034a2f6abf6777ea89f39e512408510f9.tar.bz2
MrRoy-Overlay-c2d6b8c034a2f6abf6777ea89f39e512408510f9.zip
net-im/mautrix-slack: new package, add 0_pre20230124
Signed-off-by: Julien Roy <julien@jroy.ca>
Diffstat (limited to 'net-im/mautrix-slack')
-rw-r--r--net-im/mautrix-slack/Manifest2
-rw-r--r--net-im/mautrix-slack/files/mautrix-slack.initd25
-rw-r--r--net-im/mautrix-slack/files/mautrix-slack.service12
-rw-r--r--net-im/mautrix-slack/mautrix-slack-0_pre20230124.ebuild64
-rw-r--r--net-im/mautrix-slack/metadata.xml18
5 files changed, 121 insertions, 0 deletions
diff --git a/net-im/mautrix-slack/Manifest b/net-im/mautrix-slack/Manifest
new file mode 100644
index 0000000..c5148da
--- /dev/null
+++ b/net-im/mautrix-slack/Manifest
@@ -0,0 +1,2 @@
+DIST mautrix-slack-0_pre20230124.gh.tar.gz 92932 BLAKE2B 502f633e649e5ce38136593df8ad347de1d7e524c4165f801641951a887412d3b9fd071ef6e19e14684f69f1d17f11689d310021bc0bd850bbef5b607640a597 SHA512 f548673e91a520236f6ec6201758eec28790a2862eeeb8ecec1060ca150203f2a4940563c802eba245066d8e33539fd09fd88fc862f80a0d303b63bf1e0c31fe
+DIST mautrix-slack-0_pre20230124.tar.xz 14514900 BLAKE2B 9c8e114606f3656cf6a3996608a1d750f655b8d395787093ad87cbe65f0a3ca6d20b5597dd791af87eeab5813fd83c8f35f7377b2ddb150fe93396f9cb5eb800 SHA512 8e7557ddb6c5479707d14a52410859b56f7068f9932b4f546d0d4d8feda5ba9514c8f5175976b8eb0837f9deb3f761d737268cb3582aa466335bc3cf41a6a12b
diff --git a/net-im/mautrix-slack/files/mautrix-slack.initd b/net-im/mautrix-slack/files/mautrix-slack.initd
new file mode 100644
index 0000000..d971fc5
--- /dev/null
+++ b/net-im/mautrix-slack/files/mautrix-slack.initd
@@ -0,0 +1,25 @@
+#!/sbin/openrc-run
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+name="mautrix-slack daemon"
+description="A Matrix-Slack puppeting bridge"
+module="mautrix_slack"
+
+pidfile="/run/${RC_SVCNAME}.pid"
+command="/usr/bin/mautrix-slack"
+command_args="-c /etc/mautrix/${module}.yaml -r /var/lib/mautrix/slack/registration.yaml"
+command_background=true
+command_user="mautrix-slack:mautrix"
+
+output_log="/var/log/mautrix/slack/daemon.log"
+error_log="/var/log/mautrix/slack/daemon.log"
+
+depend() {
+ need net
+}
+
+start_pre() {
+ checkpath -d -m 0755 -o "$command_user" /var/lib/mautrix/slack
+ checkpath -f -m 0644 -o "$command_user" "$output_log"
+}
diff --git a/net-im/mautrix-slack/files/mautrix-slack.service b/net-im/mautrix-slack/files/mautrix-slack.service
new file mode 100644
index 0000000..331d255
--- /dev/null
+++ b/net-im/mautrix-slack/files/mautrix-slack.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=A Matrix-Slack puppeting bridge
+After=network.target
+
+[Service]
+User=mautrix-slack
+Group=mautrix
+Restart=always
+ExecStart=/usr/bin/mautrix-slack -c /etc/mautrix/mautrix_slack.yaml -r /var/lib/mautrix/slack/registration.yaml
+
+[Install]
+WantedBy=multi-user.target \ No newline at end of file
diff --git a/net-im/mautrix-slack/mautrix-slack-0_pre20230124.ebuild b/net-im/mautrix-slack/mautrix-slack-0_pre20230124.ebuild
new file mode 100644
index 0000000..9a94aae
--- /dev/null
+++ b/net-im/mautrix-slack/mautrix-slack-0_pre20230124.ebuild
@@ -0,0 +1,64 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module systemd
+
+COMMIT="67b1e7b1ff9a01d82f46187f2b9bdbadea69b63b"
+DESCRIPTION="A Matrix-Slack puppeting bridge based on slack-go"
+HOMEPAGE="https://github.com/mautrix/slack"
+SRC_URI="https://github.com/mautrix/slack/archive/${COMMIT}.tar.gz -> ${P}.gh.tar.gz
+ https://jroy.ca/dist/${P}.tar.xz
+"
+S="${WORKDIR}/slack-${COMMIT}"
+
+LICENSE="AGPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ acct-user/${PN}
+ dev-libs/olm
+"
+DEPEND="${RDEPEND}"
+
+src_compile() {
+ ego build
+}
+
+src_install() {
+ dobin mautrix-slack
+
+ keepdir /var/log/mautrix/slack
+ fowners -R root:mautrix /var/log/mautrix
+ fperms -R 770 /var/log/mautrix
+ sed -i -e "s/\.\/logs/\/var\/log\/mautrix\/slack/" "example-config.yaml" || die
+
+ insinto "/etc/mautrix"
+ newins "example-config.yaml" "${PN/-/_}.yaml"
+
+ newinitd "${FILESDIR}/${PN}.initd" "${PN}"
+ systemd_dounit "${FILESDIR}/${PN}.service"
+
+ fowners -R root:mautrix /etc/mautrix
+ fperms -R 770 /etc/mautrix
+}
+
+pkg_postinst() {
+ 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/mautrix-slack -c /etc/mautrix/${PN/-/_}.yaml -g -r /var/lib/${PN/-/\/}/registration.yaml"
+}
diff --git a/net-im/mautrix-slack/metadata.xml b/net-im/mautrix-slack/metadata.xml
new file mode 100644
index 0000000..88c9bcc
--- /dev/null
+++ b/net-im/mautrix-slack/metadata.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>julien@jroy.ca</email>
+ <description>Julien Roy</description>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <name>Tulir Asokan</name>
+ <email>tulir@maunium.net</email>
+ </maintainer>
+ <changelog>https://github.com/mautrix/slack/releases</changelog>
+ <doc>https://docs.mau.fi/bridges/go/slack/index.html</doc>
+ <bugs-to>https://github.com/mautrix/slack/issues</bugs-to>
+ <remote-id type="github">mautrix/slack</remote-id>
+ </upstream>
+</pkgmetadata>