summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWade Cline <wadecline@hotmail.com>2017-06-22 19:56:55 -0700
committerMichał Górny <mgorny@gentoo.org>2017-09-02 10:45:21 +0200
commitbd0cdb2fe6e110d38bd00ee32265433960edda69 (patch)
tree85176cbeea5b28ea66b68aa404e4774e2ad26424
parentdev-libs/libmowgli: Version bump to 2.1.0. (diff)
downloadgentoo-bd0cdb2fe6e110d38bd00ee32265433960edda69.tar.gz
gentoo-bd0cdb2fe6e110d38bd00ee32265433960edda69.tar.bz2
gentoo-bd0cdb2fe6e110d38bd00ee32265433960edda69.zip
net-irc/atheme-services: New package.
Bug: https://bugs.gentoo.org/454840 Bug: https://bugs.gentoo.org/520490 Bug: https://bugs.gentoo.org/574062 Bug: https://bugs.gentoo.org/581960 Closes: https://github.com/gentoo/gentoo/pull/5014
-rw-r--r--net-irc/atheme-services/Manifest1
-rw-r--r--net-irc/atheme-services/atheme-services-7.2.9.ebuild89
-rw-r--r--net-irc/atheme-services/files/atheme-services-7.2.9-configure-logdir.patch25
-rw-r--r--net-irc/atheme-services/files/atheme-services-7.2.9-fix-docdir.patch13
-rw-r--r--net-irc/atheme-services/files/atheme-services.initd27
-rw-r--r--net-irc/atheme-services/metadata.xml18
6 files changed, 173 insertions, 0 deletions
diff --git a/net-irc/atheme-services/Manifest b/net-irc/atheme-services/Manifest
new file mode 100644
index 000000000000..bb730b17086f
--- /dev/null
+++ b/net-irc/atheme-services/Manifest
@@ -0,0 +1 @@
+DIST atheme-services-7.2.9.tar.bz2 1179582 SHA256 a87a046aa73fc4a97a11d41cc08c60b835135ba20bb173ca888b40e0d6b54b27 SHA512 8852bcf4746ad3b8814e2e7ae8b435c538b442f26f6cf8479087d115c0c4d6877ea864f9e19ccaa9ae93ea8a116cfa53d1f22846fffb783f78bfad8e95fd26f7 WHIRLPOOL 2b5ceb38b196567eb64ac11d0866b209b5f0ed00f1ee4c387dde2214bb3ff540996822d9843d7b32c6f0d908b80ca4c5edab7d1ee96e89a0ed59ab9333baf84b
diff --git a/net-irc/atheme-services/atheme-services-7.2.9.ebuild b/net-irc/atheme-services/atheme-services-7.2.9.ebuild
new file mode 100644
index 000000000000..70684a5915fb
--- /dev/null
+++ b/net-irc/atheme-services/atheme-services-7.2.9.ebuild
@@ -0,0 +1,89 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit flag-o-matic perl-functions user
+
+DESCRIPTION="A portable and secure set of open-source and modular IRC services"
+HOMEPAGE="https://github.com/atheme/atheme"
+SRC_URI="https://github.com/atheme/atheme/releases/download/v${PV}/atheme-${PV}.tar.bz2 -> ${P}.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="cracklib largenet ldap nls +pcre perl profile ssl"
+S="${WORKDIR}/atheme-${PV}"
+
+RDEPEND=">=dev-libs/libmowgli-2.1.0:0
+ cracklib? ( sys-libs/cracklib )
+ ldap? ( net-nds/openldap )
+ perl? ( dev-lang/perl )
+ pcre? ( dev-libs/libpcre )
+ ssl? ( dev-libs/openssl:0= )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+PATCHES=( "${FILESDIR}"/${P}-fix-docdir.patch
+ "${FILESDIR}"/${P}-configure-logdir.patch)
+
+pkg_setup() {
+ enewgroup ${PN}
+ enewuser ${PN} -1 -1 /var/lib/atheme ${PN}
+}
+
+src_configure() {
+ # perl scriping module support is also broken in 7.0.0. Yay for QA failures.
+ econf \
+ --sysconfdir="${EPREFIX}"/etc/${PN} \
+ --localstatedir="${EPREFIX}"/var \
+ --enable-fhs-paths \
+ --disable-warnings \
+ --enable-contrib \
+ $(use_enable largenet large-net) \
+ $(use_with cracklib) \
+ $(use_with ldap) \
+ $(use_enable nls) \
+ $(use_enable profile) \
+ $(use_with pcre) \
+ $(use_with perl) \
+ $(use_enable ssl)
+}
+
+src_compile() {
+ emake V=1
+}
+
+src_install() {
+ default
+
+ insinto /etc/${PN}
+ for conf in dist/*.example; do
+ # The .cron file isn't meant to live in /etc/${PN}, so only
+ # install a .example version.
+ [[ ${conf} == *cron* ]] && continue
+
+ local confdest=${conf##*/}
+ newins ${conf} ${confdest%.example}
+ done
+
+ fowners -R 0:${PN} /etc/${PN}
+ keepdir /var/{lib,log}/atheme
+ fowners ${PN}:${PN} /var/{lib,log}/atheme
+ fperms -R go-w,o-rx /etc/${PN}
+ fperms 750 /etc/${PN} /var/{lib,log}/atheme
+
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ mv "${ED}"/usr/bin/{,atheme-}dbverify || die
+
+ # contributed scripts and such:
+ docinto contrib
+ dodoc contrib/*.{c,pl,php,py,rb}
+
+ use perl && perl_domodule -r contrib/Atheme{,.pm}
+
+ rm "${ED%/}/usr/share/doc/${PF}/WINDOWS" || die
+
+ # Bug #454840 #520490
+ rm -rf "${ED%/}/var/run" || die
+}
diff --git a/net-irc/atheme-services/files/atheme-services-7.2.9-configure-logdir.patch b/net-irc/atheme-services/files/atheme-services-7.2.9-configure-logdir.patch
new file mode 100644
index 000000000000..d57af2d9f445
--- /dev/null
+++ b/net-irc/atheme-services/files/atheme-services-7.2.9-configure-logdir.patch
@@ -0,0 +1,25 @@
+diff --git a/dist/atheme.conf.example b/dist/atheme.conf.example
+index ac3ed54dd..be1c2db50 100644
+--- a/dist/atheme.conf.example
++++ b/dist/atheme.conf.example
+@@ -1909,17 +1909,17 @@ ldap {
+ * This block logs all account and channel registrations and drops,
+ * and account and channel setting changes to var/account.log.
+ */
+-logfile "var/account.log" { register; set; };
++logfile "/var/log/atheme/account.log" { register; set; };
+
+ /*
+ * This block logs all command use to var/commands.log.
+ */
+-logfile "var/commands.log" { commands; };
++logfile "/var/log/atheme/commands.log" { commands; };
+
+ /*
+ * This block logs all security auditing information.
+ */
+-logfile "var/audit.log" { denycmd; };
++logfile "/var/log/atheme/audit.log" { denycmd; };
+
+ /*
+ * You can log to IRC channels, and even split it by category, too.
diff --git a/net-irc/atheme-services/files/atheme-services-7.2.9-fix-docdir.patch b/net-irc/atheme-services/files/atheme-services-7.2.9-fix-docdir.patch
new file mode 100644
index 000000000000..e7d4bb2695fc
--- /dev/null
+++ b/net-irc/atheme-services/files/atheme-services-7.2.9-fix-docdir.patch
@@ -0,0 +1,13 @@
+diff --git a/extra.mk.in b/extra.mk.in
+index 39053e48a..e47b27246 100644
+--- a/extra.mk.in
++++ b/extra.mk.in
+@@ -82,7 +82,7 @@ libdir ?= @libdir@
+ CFLAGS ?= @CFLAGS@
+ INSTALL_LIB ?= @INSTALL_LIB@
+ RUNDIR ?= @RUNDIR@
+-DOCDIR ?= @DOCDIR@
++DOCDIR ?= @docdir@
+ localstatedir ?= @localstatedir@
+ docdir ?= @docdir@
+ GREP ?= @GREP@
diff --git a/net-irc/atheme-services/files/atheme-services.initd b/net-irc/atheme-services/files/atheme-services.initd
new file mode 100644
index 000000000000..46a868380aa3
--- /dev/null
+++ b/net-irc/atheme-services/files/atheme-services.initd
@@ -0,0 +1,27 @@
+#!/sbin/openrc-run
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+extra_started_commands="reload"
+
+command="/usr/bin/atheme-services"
+command_user="atheme-services"
+pidfile="/var/run/atheme/atheme.pid"
+
+name="Atheme IRC Services"
+
+depend() {
+ need net
+ use ircd
+ provide irc-services
+}
+
+start_pre() {
+ checkpath -d "/var/run/atheme" -o atheme-services
+}
+
+reload() {
+ ebegin "Reloading ${SVCNAME}"
+ start-stop-daemon --signal HUP --pidfile "${pidfile}"
+ eend $?
+}
diff --git a/net-irc/atheme-services/metadata.xml b/net-irc/atheme-services/metadata.xml
new file mode 100644
index 000000000000..1056f0f4fb25
--- /dev/null
+++ b/net-irc/atheme-services/metadata.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <use>
+ <flag name="cracklib">Enable nickserv/cracklib module for enforcing strong account passwords</flag>
+ <flag name="largenet">Enable support/tweaks for large networks</flag>
+ <flag name="ldap">Enable ldap-backed authentication module</flag>
+ <flag name="perl">Install a perl module which wraps around the services' XML-RPC interface</flag>
+ </use>
+ <maintainer type="person">
+ <email>wadecline@hotmail.com</email>
+ <name>Wade Cline</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+</pkgmetadata>