From c2d6b8c034a2f6abf6777ea89f39e512408510f9 Mon Sep 17 00:00:00 2001 From: Julien Roy Date: Wed, 25 Jan 2023 22:16:12 -0500 Subject: net-im/mautrix-slack: new package, add 0_pre20230124 Signed-off-by: Julien Roy --- 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(+) create mode 100644 net-im/mautrix-slack/Manifest create mode 100644 net-im/mautrix-slack/files/mautrix-slack.initd create mode 100644 net-im/mautrix-slack/files/mautrix-slack.service create mode 100644 net-im/mautrix-slack/mautrix-slack-0_pre20230124.ebuild create mode 100644 net-im/mautrix-slack/metadata.xml (limited to 'net-im') 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 @@ + + + + + julien@jroy.ca + Julien Roy + + + + Tulir Asokan + tulir@maunium.net + + https://github.com/mautrix/slack/releases + https://docs.mau.fi/bridges/go/slack/index.html + https://github.com/mautrix/slack/issues + mautrix/slack + + -- cgit v1.2.3