summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'net-irc/ergo')
-rw-r--r--net-irc/ergo/Manifest1
-rw-r--r--net-irc/ergo/ergo-2.12.0.ebuild78
2 files changed, 79 insertions, 0 deletions
diff --git a/net-irc/ergo/Manifest b/net-irc/ergo/Manifest
index 9bd5bab4cab7..eff1a98b7659 100644
--- a/net-irc/ergo/Manifest
+++ b/net-irc/ergo/Manifest
@@ -1 +1,2 @@
DIST ergo-2.11.1.tar.gz 3264192 BLAKE2B 9a207fc808277275c43c4c70aec748efe0a5d3a21f4be195885b7058798df8b0d47b52a6b52708f3e04c5aa79faec2fd3f41a0da625fd55fff45a3b12cdb90ba SHA512 9808ecc28dc25e60b942bc74f8fbe4f07b7fda0641c3dd6fc681214e7e2b5fed7fa61f85e2ac0de3c08dc91a54f571e2741ab1b2f6597a2b53405211f327ad81
+DIST ergo-2.12.0.tar.gz 3461568 BLAKE2B 8710ebae2cf840f8ea730fc4c9910d738702dfc55e2f68433e6ffdd7d9647ba081cb5d47ee7fd1e76d8a06017cfd73c377ea10510f37817c6ca63bdc81a33832 SHA512 932179ec05b0c7e5868bb41ebbfa9cc57b8eb8f6e9a0aceaf12081b4b42c6cfa996142d1f9e52c39d2b674d92b409ef8d3792f164281e6bf3f3a5b97def1d3ac
diff --git a/net-irc/ergo/ergo-2.12.0.ebuild b/net-irc/ergo/ergo-2.12.0.ebuild
new file mode 100644
index 000000000000..749773f6dd84
--- /dev/null
+++ b/net-irc/ergo/ergo-2.12.0.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+inherit go-module python-any-r1 systemd
+
+DESCRIPTION="A modern IRC server written in Go"
+HOMEPAGE="https://ergo.chat/ https://github.com/ergochat/ergo"
+SRC_URI="https://github.com/ergochat/ergo/archive/v${PV/_/-}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}"/${P/_/-}
+
+LICENSE="Apache-2.0 BSD-2 BSD ISC MIT MPL-2.0"
+SLOT="0"
+if [[ ${PV} != *_rc* ]] ; then
+ KEYWORDS="~amd64 ~arm ~arm64"
+fi
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+# We may even want to package irctest in future?
+RDEPEND="
+ acct-user/oragono
+ acct-group/oragono
+"
+BDEPEND="test? ( ${PYTHON_DEPS} )"
+
+DOCS=( README.md docs/MANUAL.md docs/USERGUIDE.md )
+
+pkg_setup() {
+ use test && python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ default
+
+ sed -i -e 's:ERGO_USERNAME="ergo":ERGO_USERNAME="oragono":' distrib/openrc/ergo.confd || die
+
+ # Minor fiddling with paths
+ sed -i \
+ -e 's:/home/ergo/ergo:/usr/bin/ergo:' \
+ -e 's:/home/ergo:/var/lib/ergo:' \
+ -e 's:/var/lib/ergo/ircd.yaml:/etc/ergo/ircd.yaml:' \
+ -e 's:User=ergo:User=oragono:' \
+ distrib/systemd/ergo.service || die
+}
+
+src_compile() {
+ ego build .
+}
+
+src_install() {
+ einstalldocs
+
+ dobin ergo
+
+ insinto /etc/ergo
+ doins default.yaml
+
+ newinitd distrib/openrc/ergo.initd ergo
+ newconfd distrib/openrc/ergo.confd ergo
+
+ keepdir /var/lib/ergo
+ fowners oragono:oragono /var/lib/ergo
+
+ insinto /var/lib/ergo
+ doins -r languages/
+
+ systemd_dounit distrib/systemd/ergo.service
+}
+
+pkg_postinst() {
+ if [[ -z "${REPLACING_VERSIONS}" ]] ; then
+ elog "Please copy the example config in ${EROOT}/etc/ergo:"
+ elog "e.g. cp ${EROOT}/etc/ergo/default.yaml ${EROOT}/etc/ergo/ircd.yaml"
+ fi
+}