commit:     b76db27c6a1df649c61a72b67a95825735087c54
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Aug  9 21:59:17 2021 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Aug  9 22:21:51 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b76db27c

net-irc/anope: add 2.0.10

Signed-off-by: Sam James <sam <AT> gentoo.org>

 net-irc/anope/Manifest            |   1 +
 net-irc/anope/anope-2.0.10.ebuild | 150 ++++++++++++++++++++++++++++++++++++++
 2 files changed, 151 insertions(+)

diff --git a/net-irc/anope/Manifest b/net-irc/anope/Manifest
index db202f75903..fe6207869db 100644
--- a/net-irc/anope/Manifest
+++ b/net-irc/anope/Manifest
@@ -1 +1,2 @@
+DIST anope-2.0.10.tar.gz 1809378 BLAKE2B 
d10323ace767aff19194f7cff353aecbced6122ef72d379d050c8dab3c7013adf6b3e649ffd95edc03bc8ca4873f60ad84991ef0f5c9c454b27ec0eda29edc6d
 SHA512 
2a0e4f14a275a6b986fd224449dddd66584de92509770311262076bd659ba0bbd6e2726fc7a22a6edef57ade5268756ac0c56e6f220fb953ed83e72017d1c67b
 DIST anope-2.0.9.tar.gz 1808866 BLAKE2B 
db5755dbb88edb9fcc2f00c1dc324894f22b9e6bc97c9cf57b40d2296014341fe3ade8a8e1b64879b852aef6637e1bb89947deb7a41e009e25101a0a992515e7
 SHA512 
0ce2caa5ede2831215781a333d896f1169f90bbb515078912f32beaff1699b7957384974cca7c86f1d584d624cb43c76769299ce245ee1fb6836ce7f14ada3e0

diff --git a/net-irc/anope/anope-2.0.10.ebuild 
b/net-irc/anope/anope-2.0.10.ebuild
new file mode 100644
index 00000000000..b9938645cb9
--- /dev/null
+++ b/net-irc/anope/anope-2.0.10.ebuild
@@ -0,0 +1,150 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake
+
+DESCRIPTION="Anope IRC Services"
+HOMEPAGE="https://anope.org/ https://github.com/anope/anope/";
+SRC_URI="https://github.com/anope/anope/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+IUSE="gnutls ldap mysql pcre sql sqlite ssl tre"
+REQUIRED_USE="sql? ( || ( mysql sqlite ) )"
+
+DEPEND="
+       acct-group/anope
+       acct-user/anope
+       mysql? ( dev-db/mysql-connector-c:0= )
+       ssl? ( dev-libs/openssl:0= )
+       gnutls? (
+               net-libs/gnutls:0=
+               dev-libs/libgcrypt:0=
+       )
+       ldap? ( net-nds/openldap )
+       pcre? ( dev-libs/libpcre )
+       sqlite? ( dev-db/sqlite:3 )
+       tre? ( dev-libs/tre )
+       virtual/libintl
+"
+RDEPEND="${DEPEND}"
+BDEPEND="sys-devel/gettext"
+
+PATCHES=(
+       "${FILESDIR}/${PN}-2.0.6-example.conf-pid-path.patch"
+       "${FILESDIR}/${PN}-2.0.7-example.conf-user.patch"
+)
+
+src_prepare() {
+       anope_enable_mod() {
+               local modulefile=${1}
+               ln -s "extra/${modulefile}" "modules/" || \
+                       die "Failed to use ${modulefile}"
+       }
+
+       # These all require MySQL specifically
+       if use mysql ; then
+               anope_enable_mod "m_mysql.cpp"
+               anope_enable_mod "stats/irc2sql/irc2sql.cpp"
+               anope_enable_mod "stats/irc2sql/irc2sql.h"
+               anope_enable_mod "stats/irc2sql/tables.cpp"
+               anope_enable_mod "stats/irc2sql/utils.cpp"
+               anope_enable_mod "stats/m_chanstats.cpp"
+               anope_enable_mod "stats/cs_fantasy_top.cpp"
+               anope_enable_mod "stats/cs_fantasy_stats.cpp"
+               anope_enable_mod "m_sql_log.cpp"
+               anope_enable_mod "m_sql_oper.cpp"
+       fi
+
+       use sqlite && anope_enable_mod "m_sqlite.cpp"
+
+       # Any SQL implementation
+       if use sql ; then
+               anope_enable_mod "m_sql_authentication.cpp"
+       fi
+
+       if use ldap ; then
+               anope_enable_mod "m_ldap.cpp"
+               anope_enable_mod "m_ldap_authentication.cpp"
+               anope_enable_mod "m_ldap_oper.cpp"
+       fi
+
+       use gnutls && anope_enable_mod "m_ssl_gnutls.cpp"
+       use pcre && anope_enable_mod "m_regex_pcre.cpp"
+       use ssl && anope_enable_mod "m_ssl_openssl.cpp"
+       use tre && anope_enable_mod "m_regex_tre.cpp"
+
+       # Unconditional modules
+       anope_enable_mod "m_regex_posix.cpp"
+
+       # Avoid a silly sandbox error - tries to delete /usr/lib/modules
+       sed -i '/install.*REMOVE_RECURSE.*/d' CMakeLists.txt || die
+
+       # Copy anope.conf for fixup to comply w/ prefix
+       cp "${FILESDIR}"/anope-conf.d-v2 "${T}" || die
+
+       # Look in the right place for modules
+       sed -i "s~%LIBDIR%~${EPREFIX}/usr/$(get_libdir)/anope/~" \
+               "${T}"/anope-conf.d-v2 || die
+
+       cmake_src_prepare
+}
+
+src_configure() {
+       local mycmakeargs=(
+               -DBIN_DIR="libexec/anope"
+               -DDB_DIR="../var/lib/anope"
+               -DDOC_DIR="share/doc/${PF}"
+               -DLIB_DIR="$(get_libdir)/anope"
+               -DLOCALE_DIR="share/locale"
+               -DCONF_DIR="/etc/anope"
+               -DLOGS_DIR="../var/log/anope/"
+       )
+
+       cmake_src_configure
+}
+
+src_install() {
+       cmake_src_install
+
+       newinitd "${FILESDIR}"/anope-init.d ${PN}
+       newconfd "${T}"/anope-conf.d-v2 ${PN}
+
+       dosym ../libexec/anope/services /usr/bin/services
+       dosym ../libexec/anope/anopesmtp /usr/bin/anopesmtp
+
+       keepdir /var/log/anope /var/lib/anope/backups
+       fowners anope:anope /var/{lib,log}/anope /var/lib/anope/backups
+
+       dodoc -r docs/* data/example.conf
+
+       insinto /etc/anope
+       newins data/example.conf services.conf
+
+       fowners anope:anope /var/log/anope
+       fowners anope:anope /var/lib/anope/backups/
+}
+
+pkg_postinst() {
+       if [[ -z "${REPLACING_VERSIONS}" ]] ; then
+               # Only tell them about this on a fresh install.
+               ewarn "Anope won't run out of the box, you still have to 
configure it to match your IRCd's configuration."
+               ewarn "Edit /etc/anope/services.conf to configure Anope."
+       else
+               # We're replacing some versions. Find out which.
+               local ver
+               for ver in "${REPLACING_VERSIONS}" ; do
+                       if ver_test ${ver} -lt 2.0.7 ; then
+                               # In this version, we introduced correct FHS 
structure
+                               # We need the users to make some changes to 
their services.conf
+                               ewarn "Please modify your services.conf to 
include the following directive:"
+                               ewarn "in options{}, please include 
user=\"anope\" and group=\"anope\""
+                               ewarn "This is needed because Anope now starts 
as root and drops down."
+                               ewarn "Reference: 
https://wiki.anope.org/index.php/2.0/Configuration#Services_Process_Options";
+                       fi
+               done
+       fi
+}

Reply via email to