commit:     bdc336c22d1202574db45fc99c4d6b7ff48961e3
Author:     Julien Roy <julien <AT> jroy <DOT> ca>
AuthorDate: Thu Jan 26 04:13:27 2023 +0000
Commit:     Julien Roy <julien <AT> jroy <DOT> ca>
CommitDate: Thu Jan 26 04:13:27 2023 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=bdc336c2

net-im/mautrix-slack: new package, add 0_pre20230124

Signed-off-by: Julien Roy <julien <AT> jroy.ca>

 net-im/mautrix-slack/Manifest                      |  2 +
 net-im/mautrix-slack/files/mautrix-slack.initd     | 25 +++++++++
 net-im/mautrix-slack/files/mautrix-slack.service   | 12 ++++
 .../mautrix-slack-0_pre20230124.ebuild             | 64 ++++++++++++++++++++++
 net-im/mautrix-slack/metadata.xml                  | 18 ++++++
 5 files changed, 121 insertions(+)

diff --git a/net-im/mautrix-slack/Manifest b/net-im/mautrix-slack/Manifest
new file mode 100644
index 000000000..c5148dafb
--- /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 000000000..d971fc549
--- /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 000000000..331d2555b
--- /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 000000000..fca96c067
--- /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/${PN} -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 000000000..88c9bccab
--- /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>jul...@jroy.ca</email>
+               <description>Julien Roy</description>
+       </maintainer>
+       <upstream>
+               <maintainer>
+                       <name>Tulir Asokan</name>
+                       <email>tu...@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>

Reply via email to