diff options
author | Wade Cline <wadecline@hotmail.com> | 2017-06-22 19:56:55 -0700 |
---|---|---|
committer | Michał Górny <mgorny@gentoo.org> | 2017-09-02 10:45:21 +0200 |
commit | bd0cdb2fe6e110d38bd00ee32265433960edda69 (patch) | |
tree | 85176cbeea5b28ea66b68aa404e4774e2ad26424 /net-irc/atheme-services | |
parent | dev-libs/libmowgli: Version bump to 2.1.0. (diff) | |
download | gentoo-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
Diffstat (limited to 'net-irc/atheme-services')
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> |