commit:     1830eb01a20d155c68c440b7322435e32ee95e09
Author:     Hans de Graaff <hans <AT> degraaff <DOT> org>
AuthorDate: Tue Jul 15 09:03:09 2014 +0000
Commit:     Hans de Graaff <graaff <AT> gentoo <DOT> org>
CommitDate: Tue Jul 15 09:03:09 2014 +0000
URL:        
http://git.overlays.gentoo.org/gitweb/?p=dev/graaff.git;a=commit;h=1830eb01

Version bump with LDAP IPv6 patch.

Package-Manager: portage-2.2.8-r1
RepoMan-Options: --force

---
 net-im/ejabberd/ChangeLog                    |   9 +-
 net-im/ejabberd/Manifest                     |   1 +
 net-im/ejabberd/ejabberd-2.1.13-r2.ebuild    | 224 +++++++++++++++++++++++++++
 net-im/ejabberd/files/ejabberd-3.initd       |   6 +-
 net-im/ejabberd/files/ejabberd.logrotate     |  13 ++
 net-im/ejabberd/files/ejabberd.service       |  17 ++
 net-im/ejabberd/files/ejabberd.tmpfiles.conf |   1 +
 7 files changed, 267 insertions(+), 4 deletions(-)

diff --git a/net-im/ejabberd/ChangeLog b/net-im/ejabberd/ChangeLog
index 6725113..d2f9f52 100644
--- a/net-im/ejabberd/ChangeLog
+++ b/net-im/ejabberd/ChangeLog
@@ -1,7 +1,14 @@
 # ChangeLog for net-im/ejabberd
-# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
+# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
 # $Header: $
 
+*ejabberd-2.1.13-r2 (15 Jul 2014)
+
+  15 Jul 2014; Hans de Graaff <[email protected]> +ejabberd-2.1.13-r2.ebuild,
+  files/ejabberd-3.initd, +files/ejabberd.logrotate, +files/ejabberd.service,
+  +files/ejabberd.tmpfiles.conf:
+  Version bump with LDAP IPv6 patch.
+
   26 May 2013; Hans de Graaff <[email protected]> +ejabberd-2.1.12-r1.ebuild:
   Version bump with my LDAP-IPv6 patch.
 

diff --git a/net-im/ejabberd/Manifest b/net-im/ejabberd/Manifest
index 5d0fe76..575c37c 100644
--- a/net-im/ejabberd/Manifest
+++ b/net-im/ejabberd/Manifest
@@ -1,4 +1,5 @@
 DIST ejabberd-2.1.11.tgz 2014232 SHA256 
91d5c10e64f9faa60c345c68304746f493d71f82723302955d40d6619e3d87de SHA512 
6f09c80b03a84595294c679d49b5991985707f6c9e8c2f9fad94618224666e05b4325a5bef840d2ccf0c803038fc11b49b168716a3e258312216e201bdd4bb88
 WHIRLPOOL 
2ab09c84619173090acabf19cde10f14e3240fa6b89fb7d963bd79aca960b11a6f869f691d219c55b1b0a664c676afc800599671dfc923a0302d2075eec0e224
 DIST ejabberd-2.1.12.tgz 1999224 SHA256 
38f0825346773c00c85a66b33586c75f2d191d1eb0ed8ae09fa17368d6ddfd19 SHA512 
725ab9563a6c73e85b5115f66bac157cf9b1170913c1bfed7cf066408c6b3ac5b4bdba22c6c3ed1505391a7048a86ce3b59484f78264ab023612c539422278db
 WHIRLPOOL 
3de3b103f69b8ead3d68cb70f3073808c40cd9541f0fd97aff7173f3ecabf6755295e1c30de83e67c844dc6886a5c2cb55a26980f4275cb32008e922591ae35a
+DIST ejabberd-2.1.13.tgz 1999853 SHA256 
a80d1c72e435da31758261cb0c04fe750ac71fc3e33a3b606123efd3b3abc86d SHA512 
9348271f0cf1d9a7e6c53204121568e77820afc50fff1271e7b7ef66c5c5d7d067034c46472250423c4e9052046b18c1c8178f09eda0b0bfe25a1eac465fd07b
 WHIRLPOOL 
2c366d2f7c4371db56f47f5492ef27028a589186eeddb7a6b4e8aac0537b1b80ee31a9760f0551063ce2c2a658b9b5eafb7ed25294e00eb69480231a599a7b10
 DIST ejabberd-mod_statsdx-1080.patch.gz 14024 SHA256 
0f3a3a991c14d797e795ef4fffcf19aa9a54608f5053b759187ec7d3696b9edb
 DIST ejabberd-mod_statsdx-1118.patch.gz 13989 SHA256 
5e5d975e44248cf2b0d6dd0ecf4c477e8479b2b4d0bd531e80f4623fd787320e SHA512 
99399323150990cda15e707385f0f26fa790d4ba188a97ac46daaaab9c25e72a7ec72a875573136f17a18648017074d76e4e267b544dc4c95a5101ed9ad6815d
 WHIRLPOOL 
05997f03bb70136ee5e829ea9c55e3aeb0704150f1ed54f11c6cce382a82106129fc1a6ef35a62780837cd2b59fbb384fa10f3bb49813acaee8c5edc22ae3702

diff --git a/net-im/ejabberd/ejabberd-2.1.13-r2.ebuild 
b/net-im/ejabberd/ejabberd-2.1.13-r2.ebuild
new file mode 100644
index 0000000..251a210
--- /dev/null
+++ b/net-im/ejabberd/ejabberd-2.1.13-r2.ebuild
@@ -0,0 +1,224 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-im/ejabberd/ejabberd-2.1.13-r1.ebuild,v 
1.4 2013/12/21 17:17:15 ago Exp $
+
+EAPI=5
+
+inherit eutils multilib pam ssl-cert systemd
+
+DESCRIPTION="The Erlang Jabber Daemon"
+HOMEPAGE="http://www.ejabberd.im/ https://github.com/processone/ejabberd/";
+SRC_URI="http://www.process-one.net/downloads/${PN}/${PV}/${P}.tgz
+       mod_statsdx? ( 
http://dev.gentoo.org/~radhermit/dist/${PN}-mod_statsdx-1118.patch.gz )"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~ia64 ppc ~sparc x86"
+EJABBERD_MODULES="mod_irc mod_muc mod_proxy65 mod_pubsub mod_statsdx"
+IUSE="captcha debug ldap odbc pam +web zlib ${EJABBERD_MODULES}"
+
+DEPEND=">=net-im/jabber-base-0.01
+       >=dev-libs/expat-1.95
+       >=dev-lang/erlang-12.2.5[ssl]
+       <dev-lang/erlang-16
+       odbc? ( dev-db/unixODBC )
+       ldap? ( =net-nds/openldap-2* )
+       >=dev-libs/openssl-0.9.8e
+       captcha? ( media-gfx/imagemagick[truetype,png] )
+       zlib? ( sys-libs/zlib )"
+#>=sys-apps/shadow-4.1.4.2-r3 - fixes bug in su that made ejabberdctl 
unworkable.
+RDEPEND="${DEPEND}
+       >=sys-apps/shadow-4.1.4.2-r3
+       pam? ( virtual/pam )"
+
+S=${WORKDIR}/${P}/src
+
+# paths in net-im/jabber-base
+JABBER_ETC="${EPREFIX}/etc/jabber"
+#JABBER_RUN="/var/run/jabber"
+JABBER_SPOOL="${EPREFIX}/var/spool/jabber"
+JABBER_LOG="${EPREFIX}/var/log/jabber"
+JABBER_DOC="${EPREFIX}/usr/share/doc/${PF}"
+
+src_prepare() {
+       epatch "${FILESDIR}/${PN}-2.1.11-ldap-ipv6.patch"
+
+       if use mod_statsdx; then
+               ewarn "mod_statsdx is not a part of upstream tarball but is a 
third-party module"
+               ewarn "taken from here: http://www.ejabberd.im/mod_stats2file";
+               EPATCH_OPTS="-p2" epatch 
"${WORKDIR}"/${PN}-mod_statsdx-1118.patch
+       fi
+
+       # don't install release notes (we'll do this manually)
+       sed '/install .* [.][.]\/doc\/[*][.]txt $(DOCDIR)/d' -i Makefile.in || 
die
+       # Set correct paths
+       sed -e "/^EJABBERDDIR[[:space:]]*=/{s:ejabberd:${PF}:}" \
+               -e 
"/^ETCDIR[[:space:]]*=/{s:@sysconfdir@/ejabberd:${JABBER_ETC}:}" \
+               -e 
"/^LOGDIR[[:space:]]*=/{s:@localstatedir@/log/ejabberd:${JABBER_LOG}:}" \
+               -e 
"/^SPOOLDIR[[:space:]]*=/{s:@localstatedir@/lib/ejabberd:${JABBER_SPOOL}:}" \
+                       -i Makefile.in || die
+       sed -e "/EJABBERDDIR=/{s:ejabberd:${PF}:}" \
+               -e "s|\(ETCDIR=\)@SYSCONFDIR@.*|\1${JABBER_ETC}|" \
+               -e "s|\(LOGS_DIR=\)@LOCALSTATEDIR@.*|\1${JABBER_LOG}|" \
+               -e "s|\(SPOOLDIR=\)@LOCALSTATEDIR@.*|\1${JABBER_SPOOL}|" \
+                       -i ejabberdctl.template || die
+
+       # Set shell, so it'll work even in case jabber user have no shell
+       # This is gentoo specific I guess since other distributions may have
+       # ejabberd user with reall shell, while we share this user among 
different
+       # jabberd implementations.
+       sed '/^HOME/aSHELL=/bin/sh' -i ejabberdctl.template || die
+       sed '/^export HOME/aexport SHELL' -i ejabberdctl.template || die
+
+       #sed -e "s:/share/doc/ejabberd/:${JABBER_DOC}:" -i 
web/ejabberd_web_admin.erl
+
+       # fix up the ssl cert paths in ejabberd.cfg to use our cert
+       sed -e "s:/path/to/ssl.pem:/etc/ssl/ejabberd/server.pem:g" \
+               -i ejabberd.cfg.example || die "Failed sed ejabberd.cfg.example"
+
+       # correct path to captcha script in default ejabberd.cfg
+       sed -e 
's|\({captcha_cmd,[[:space:]]*"\).\+"}|\1/usr/'$(get_libdir)'/erlang/lib/'${P}'/priv/bin/captcha.sh"}|'
 \
+                       -i ejabberd.cfg.example || die "Failed sed 
ejabberd.cfg.example"
+
+       # disable mod_irc in ejabberd.cfg
+       if ! use mod_irc; then
+               sed -i -e "s/{mod_irc,/%{mod_irc,/" \
+                       -i ejabberd.cfg.example || die "Failed to disable 
mod_irc"
+       fi
+
+}
+
+src_configure() {
+       econf \
+               --docdir="${EPREFIX}/usr/share/doc/${PF}/html" \
+               --libdir="${EPREFIX}/usr/$(get_libdir)/erlang/lib/" \
+               $(use_enable mod_irc) \
+               $(use_enable ldap eldap) \
+               $(use_enable mod_muc) \
+               $(use_enable mod_proxy65) \
+               $(use_enable mod_pubsub) \
+               $(use_enable web) \
+               $(use_enable odbc) \
+               $(use_enable zlib ejabberd_zlib) \
+               $(use_enable pam) \
+               --enable-user=jabber
+}
+
+src_compile() {
+       emake $(use debug && echo debug=true ejabberd_debug=true)
+}
+
+src_install() {
+       default
+
+       # Pam helper module permissions
+       # http://www.process-one.net/docs/ejabberd/guide_en.html
+       if use pam; then
+               pamd_mimic_system xmpp auth account || die "Cannot create pam.d 
file"
+               fowners root:jabber 
"/usr/$(get_libdir)/erlang/lib/${PF}/priv/bin/epam"
+               fperms 4750 "/usr/$(get_libdir)/erlang/lib/${PF}/priv/bin/epam"
+       fi
+
+       cd "${WORKDIR}"/${P}/doc
+       dodoc release_notes_${PV%%_rc*}.txt
+
+       newinitd "${FILESDIR}"/${PN}-3.initd ${PN}
+       newconfd "${FILESDIR}"/${PN}-3.confd ${PN}
+       systemd_dounit "${FILESDIR}"/${PN}.service
+       systemd_dotmpfilesd "${FILESDIR}"/${PN}.tmpfiles.conf
+
+       insinto /etc/logrotate.d
+       newins "${FILESDIR}"/${PN}.logrotate ${PN}
+}
+
+pkg_postinst() {
+       if [[ -z ${REPLACING_VERSIONS} ]] ; then
+               elog "For configuration instructions, please see"
+               elog "/usr/share/doc/${PF}/html/guide.html, or the online 
version at"
+               elog "http://www.process-one.net/en/ejabberd/docs/guide_en/";
+
+               if ! use web ; then
+                       ewarn
+                       ewarn "The web USE flag is off, this has disabled the 
web admin interface."
+                       ewarn
+               fi
+
+               elog
+               elog 
'===================================================================='
+               elog 'Quick Start Guide:'
+               elog '1) Add output of `hostname -f` to 
/etc/jabber/ejabberd.cfg line 91'
+               elog '   {hosts, ["localhost", "thehost"]}.'
+               elog '2) Add an admin user to /etc/jabber/ejabberd.cfg line 360'
+               elog '   {acl, admin, {user, "theadmin", "thehost"}}.'
+               elog '3) Start the server'
+               elog '   # /etc/init.d/ejabberd start (for openRC)'
+               elog '   # systemctl start ejabberd (for Systemd)'
+               elog '4) Register the admin user'
+               elog '   # /usr/sbin/ejabberdctl register theadmin thehost 
thepassword'
+               elog '5) Log in with your favourite jabber client or using the 
web admin'
+       fi
+
+       # Upgrading from ejabberd-2.0.x:
+       if grep -E '^[^#]*EJABBERD_NODE=' "${EROOT}/etc/conf.d/ejabberd" 
>/dev/null 2>&1; then
+               source "${EROOT}/etc/conf.d/ejabberd"
+               ewarn
+               ewarn "!!! WARNING !!!  WARNING !!!  WARNING !!!  WARNING !!!"
+               ewarn "Starting with 2.1.x some paths and configuration files 
were"
+               ewarn "changed to reflect upstream intentions better. Notable 
changes are:"
+               ewarn
+               ewarn "1. Everything (even init scripts) is now handled with 
ejabberdctl script."
+               ewarn "Thus main configuration file became 
/etc/jabberd/ejabberdctl.cfg"
+               ewarn "You must update ERLANG_NODE there with the value of 
EJABBERD_NODE"
+               ewarn "from /etc/conf.d/ejebberd or ejabberd will refuse to 
start."
+               ewarn
+               ewarn "2. SSL certificate is now generated with ssl-cert eclass 
and resides"
+               ewarn "at standard location: /etc/ssl/ejabberd/server.pem."
+               ewarn
+               ewarn "3. Cookie now resides at 
/var/spool/jabber/.erlang.cookie"
+               ewarn
+               ewarn "4. /var/log/jabber/sasl.log is now 
/var/log/jabber/erlang.log"
+               ewarn
+               ewarn "5. Crash dumps (if any) will be located at 
/var/log/jabber"
+
+               local i ctlcfg new_ctlcfg
+               i=0
+               ctlcfg=${EROOT}/etc/jabber/ejabberdctl.cfg
+               while :; do
+                       new_ctlcfg=$(printf 
"${EROOT}/etc/jabber/._cfg%04d_ejabberdctl.cfg" ${i})
+                       [[ ! -e ${new_ctlcfg} ]] && break
+                       ctlcfg=${new_ctlcfg}
+                       ((i++))
+               done
+
+               ewarn
+               ewarn "Updating ${ctlcfg} (debug: ${new_ctlcfg})"
+               sed -e "/#ERLANG_NODE=/aERLANG_NODE=$EJABBERD_NODE" "${ctlcfg}" 
> "${new_ctlcfg}" || die
+
+               if [[ -e ${EROOT}/var/run/jabber/.erlang.cookie ]]; then
+                       ewarn "Moving .erlang.cookie..."
+                       if [[ -e ${EROOT}/var/spool/jabber/.erlang.cookie ]]; 
then
+                               mv -v 
"${EROOT}"/var/spool/jabber/.erlang.cookie{,bak}
+                       fi
+                       mv -v 
"${EROOT}"/var/{run/jabber,spool/jabber}/.erlang.cookie
+               fi
+               ewarn
+               ewarn "We'll try to handle upgrade automagically but, please, 
do your"
+               ewarn "own checks and do not forget to run 'etc-update'!"
+               ewarn "PLEASE! Run 'etc-update' now!"
+       fi
+
+       SSL_ORGANIZATION="${SSL_ORGANIZATION:-Ejabberd XMPP Server}"
+       install_cert /etc/ssl/ejabberd/server
+       # Fix ssl cert permissions bug #369809
+       chown root:jabber "${EROOT}/etc/ssl/ejabberd/server.pem"
+       chmod 0440 "${EROOT}/etc/ssl/ejabberd/server.pem"
+       if [[ -e ${EROOT}/etc/jabber/ssl.pem ]]; then
+               ewarn
+               ewarn "The location of SSL certificates has changed. If you are"
+               ewarn "upgrading from ${CATEGORY}/${PN}-2.0.5* or earlier  you 
might"
+               ewarn "want to move your old certificates from /etc/jabber into"
+               ewarn "/etc/ssl/ejabberd/, update config files and"
+               ewarn "rm /etc/jabber/ssl.pem to avoid this message."
+               ewarn
+       fi
+}

diff --git a/net-im/ejabberd/files/ejabberd-3.initd 
b/net-im/ejabberd/files/ejabberd-3.initd
index 526afe9..a8519d4 100644
--- a/net-im/ejabberd/files/ejabberd-3.initd
+++ b/net-im/ejabberd/files/ejabberd-3.initd
@@ -1,7 +1,7 @@
 #!/sbin/runscript
-# Copyright 1999-2012 Gentoo Foundation
+# Copyright 1999-2014 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/net-im/ejabberd/files/ejabberd-3.initd,v 
1.3 2010/06/02 07:12:27 pva Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-im/ejabberd/files/ejabberd-3.initd,v 
1.4 2013/04/05 09:03:34 radhermit Exp $
 
 depend() {
        use dns
@@ -15,7 +15,7 @@ start() {
                return 0
        fi
        ebegin "Starting ejabberd"
-       /usr/sbin/ejabberdctl ${EJABBERDCTL_OPT} start
+       /usr/sbin/ejabberdctl ${EJABBERDCTL_OPTS} start
        eend $?
 }
 

diff --git a/net-im/ejabberd/files/ejabberd.logrotate 
b/net-im/ejabberd/files/ejabberd.logrotate
new file mode 100644
index 0000000..4f32472
--- /dev/null
+++ b/net-im/ejabberd/files/ejabberd.logrotate
@@ -0,0 +1,13 @@
+/var/log/jabber/*.log {
+       su jabber jabber
+       weekly
+       rotate 4
+       missingok
+       nocreate
+       sharedscripts
+       notifempty
+       compress
+       postrotate
+               /usr/sbin/ejabberdctl reopen-log > /dev/null 2>&1 || true
+       endscript
+}

diff --git a/net-im/ejabberd/files/ejabberd.service 
b/net-im/ejabberd/files/ejabberd.service
new file mode 100644
index 0000000..0b79256
--- /dev/null
+++ b/net-im/ejabberd/files/ejabberd.service
@@ -0,0 +1,17 @@
+[Unit]
+Description=A distributed, fault-tolerant Jabber/XMPP server
+After=network.target
+
+[Service]
+Type=oneshot
+User=jabber
+LimitNOFILE=16000
+RestartSec=5
+ExecStart=/usr/sbin/ejabberdctl \
+       --config /etc/jabber/ejabberd.cfg --ctl-config 
/etc/jabber/ejabberdctl.cfg \
+       --logs "/var/log/jabber" --spool "/var/spool/jabber" start
+ExecStop=/usr/sbin/ejabberdctl stop
+RemainAfterExit=yes
+
+[Install]
+WantedBy=multi-user.target

diff --git a/net-im/ejabberd/files/ejabberd.tmpfiles.conf 
b/net-im/ejabberd/files/ejabberd.tmpfiles.conf
new file mode 100644
index 0000000..cf17b73
--- /dev/null
+++ b/net-im/ejabberd/files/ejabberd.tmpfiles.conf
@@ -0,0 +1 @@
+d /var/lock/ejabberdctl 0750 jabber jabber

Reply via email to