summaryrefslogtreecommitdiff
path: root/net-im
diff options
context:
space:
mode:
authorPacho Ramos <pacho@gentoo.org>2013-09-08 13:00:23 +0000
committerPacho Ramos <pacho@gentoo.org>2013-09-08 13:00:23 +0000
commit162531903abbb0028dfa819fc420f8f4e3d1caaa (patch)
tree22b43e3c5df20a86a138c4b46c8a82cc52903125 /net-im
parentStable for amd64, wrt bug #478904 (diff)
downloadhistorical-162531903abbb0028dfa819fc420f8f4e3d1caaa.tar.gz
historical-162531903abbb0028dfa819fc420f8f4e3d1caaa.tar.bz2
historical-162531903abbb0028dfa819fc420f8f4e3d1caaa.zip
Add unit file (#482444 by Andrius Štikonas)
Package-Manager: portage-2.2.1/cvs/Linux x86_64 Manifest-Sign-Key: 0xA188FBD4
Diffstat (limited to 'net-im')
-rw-r--r--net-im/ejabberd/ChangeLog8
-rw-r--r--net-im/ejabberd/Manifest15
-rw-r--r--net-im/ejabberd/ejabberd-2.1.13-r1.ebuild222
-rw-r--r--net-im/ejabberd/files/ejabberd.service17
-rw-r--r--net-im/ejabberd/files/ejabberd.tmpfiles.conf1
5 files changed, 254 insertions, 9 deletions
diff --git a/net-im/ejabberd/ChangeLog b/net-im/ejabberd/ChangeLog
index 943df1f5e2cd..76fd8d73466d 100644
--- a/net-im/ejabberd/ChangeLog
+++ b/net-im/ejabberd/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for net-im/ejabberd
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-im/ejabberd/ChangeLog,v 1.119 2013/07/10 01:46:43 radhermit Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-im/ejabberd/ChangeLog,v 1.120 2013/09/08 13:00:18 pacho Exp $
+
+*ejabberd-2.1.13-r1 (08 Sep 2013)
+
+ 08 Sep 2013; Pacho Ramos <pacho@gentoo.org> +ejabberd-2.1.13-r1.ebuild,
+ +files/ejabberd.service, +files/ejabberd.tmpfiles.conf:
+ Add unit file (#482444 by Andrius Štikonas)
*ejabberd-2.1.13 (10 Jul 2013)
diff --git a/net-im/ejabberd/Manifest b/net-im/ejabberd/Manifest
index a237d15e0557..c159f62e394c 100644
--- a/net-im/ejabberd/Manifest
+++ b/net-im/ejabberd/Manifest
@@ -4,6 +4,8 @@ Hash: SHA256
AUX ejabberd-3.confd 161 SHA256 0296d3d281a321cd7380772c1d89a94e4a86f85b7f43bf9dc1af74935c2e6386 SHA512 07143642982df18461fdecd16daaad3baf6a06f8222d7a76757797c531be2803975ed60cc43aace24a624aa7c73bd8fdc6e023e739de492271b79e571f27c8fb WHIRLPOOL 657c44991244d58c10590093a7f58f654cb45cf7e22244b474459c63a449c17d0cf1d6f2d62008ddb34f0022f8fc9e31f22d2010cb3d1070a462bcb22a9a81fc
AUX ejabberd-3.initd 1025 SHA256 2810ca25fbe9d41a175b15c82d9ea1254fc4c934fd6ec02d9ee10bc34079e168 SHA512 5705074bd564568295d6d098394937ea44f5ea38ebc386fbcc3f8a239734acb77784500e8761e5fb3864fb56f7d136c9ef1f65603810d31b1f9a0ee4005d389a WHIRLPOOL 13718736e2ff08380c8a2df38099f11a0c5257188731fe9830e1ccdbe304b7c9984956ec7b1f9db11f677293a939604db79ac0870c1a74116d1eb70c1c373391
AUX ejabberd.logrotate 203 SHA256 42f28222c6a5b7c691eb371085cccdef3fcba059a1e89f18744aa9bfc25e6294 SHA512 53cead768a76d18c01b229d0a1c0f38561c7a872fd751f1bb9b427c107f36a5536654a0047c5aef05507223f75c0e0f91e9a83b6c283fb9eceb8e31938de00d2 WHIRLPOOL ffbdfc1b22e855666aedbf816ec44439addcae21d82509399de046fa6a7c0182c1df756377a9d08d3b1f1d73e1e09ecd85da145357850d8a11d8ddb4b3b29d2a
+AUX ejabberd.service 422 SHA256 a699466dd95b8fb98aca078ca7e57a2d9f0fed13ecdc70d10b96e96df61b64af SHA512 91ba2ca5b0104a7628a63a80efd0ec4aa016f9100b631701e18ab7b524c2e2e9471a6ece4adcc90bbea16af05479dfa5a2414d2f50bdd4b0cd06a1e40539c5e3 WHIRLPOOL eb3b5af56eaf4292cdb67854e46ccc9d0c4f3f8674ad7992fdbfb037c3a441b27c922ac80f2fd8819c84411f045c689e67eeca4e331d088c7749fa4fc74437a3
+AUX ejabberd.tmpfiles.conf 43 SHA256 2ee7fb4fb9c9c931ffa8c1dfa273e6658f3bbd37bb6ae25765b9e4f2a7459506 SHA512 8bdc297d5cb405e82c33627b36730992584d7f8b92d15c47933edd01ba6575983009c1f6607a21eee0280abdf7b51639d99d7836712a8d3629ec1e960b8a02c4 WHIRLPOOL f27e3a9bff1ab941c4a80fc5573d8541e40804f24b2f2e40e0f77c2ea2016e5c0b323e59674ed880df95037d0d82a956bc9ea984b5b371dd16e50858faa7e0d0
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
@@ -11,17 +13,14 @@ DIST ejabberd-mod_statsdx-1080.patch.gz 14024 SHA256 0f3a3a991c14d797e795ef4fffc
DIST ejabberd-mod_statsdx-1118.patch.gz 13989 SHA256 5e5d975e44248cf2b0d6dd0ecf4c477e8479b2b4d0bd531e80f4623fd787320e SHA512 99399323150990cda15e707385f0f26fa790d4ba188a97ac46daaaab9c25e72a7ec72a875573136f17a18648017074d76e4e267b544dc4c95a5101ed9ad6815d WHIRLPOOL 05997f03bb70136ee5e829ea9c55e3aeb0704150f1ed54f11c6cce382a82106129fc1a6ef35a62780837cd2b59fbb384fa10f3bb49813acaee8c5edc22ae3702
EBUILD ejabberd-2.1.11.ebuild 7940 SHA256 343b0ff68bcf8d6d4379628b3dfee5ed5bf4565caf981e4113edcb87d260f2fa SHA512 9782f0993dc5734b3b57e50020f7952c706b97f518040934737364edfcca78597cf39152cd8c9f4e86063168abf4975cf6f3d78f9f4e6426db59adf04ec9f04d WHIRLPOOL b375b28cafdfb6ba7e5f46ec0dd844a80477bf82c37a690a5e2a7d27dcfb54f60abdee1922d2098313cf9b701ecef46638341792a0ef2b98d97bda7c1ed1e0a3
EBUILD ejabberd-2.1.12.ebuild 7967 SHA256 fe4879395e71b4fe9d913d7e6e480042b25d517cb696c8b4d5fc09755cedb213 SHA512 e09721742102fe83abc9f934c576bf70295edf738c6f9a1bb949e3745c999bb241220b5618d18e65f67510c67ab140284fa1b4ed089be255ccd8c1222431f637 WHIRLPOOL 311a65cc5ccec4983518e104b6c25473c492a250843531be817fa09f84805f3c9539a5b416e16392d2e58082df6da2ff546182ac9845df6af30f500f7f241397
+EBUILD ejabberd-2.1.13-r1.ebuild 8277 SHA256 d9c8b798fee6a4349a42ef189384eb808cd53ce80f242d7b63cfd784a5f9377c SHA512 61269b396353baa23bf13764e9ba955153614cf2078ced86513dd4339935be62fefe546de9c1dff25e5bb1a38329adac3050ff7d02ec6c1a4e711f2afc6b0a86 WHIRLPOOL 23bf3869731b5003ea42c59b50ccc0e49649dab93a53c50b4a9238d0b2990d079fc7bb4b2b173e59ea4695cd181f686d917704f97e828afa2f836451400467f6
EBUILD ejabberd-2.1.13.ebuild 8106 SHA256 a562cb248c59a47fe7fc9b57c674fbcdc14bd382defed32461d274a1e605a0b9 SHA512 313a4fd981c3066e0d5de86de9ff7f706e571e26a3b2624177c2b5f312b8700cda7f90d0fa9cab62228b821e3a5f7c736f0a5846a27d97d94c17b9473e6d375b WHIRLPOOL fa5619ae5ef03e17a004bcd4fc5c72f06c4b6ecafa14399e1777715cccb2317e596e1c3a4848ebec8a6f4577481ee731a951307f31998bdcb49ac37c3ba1e07f
-MISC ChangeLog 23070 SHA256 4eef456fdbee191baa1512f4766c121f3b0a6b142bcf2c134cc48a1496a702d5 SHA512 01e4336df628cbdfc89654c0d099af2d3d180f1a979b7e6483d83f90bb7eabdb0daf9f1ec657c38e61b9b9af57e7878163e38621dde034d271ff6ddf95826991 WHIRLPOOL 478140d59c7cbbcb1e6fd545870b521a418cc2eecbb0b6e10b0dfb7091d9309a66b82b85cc1eb98ad2faec529772e495a58c92eeea400f028cf67e8a20a9bdce
+MISC ChangeLog 23281 SHA256 0cb3f009374e019196e7d138123383924c31701a721782472f226ef7640a3d40 SHA512 aa7dabd161cbfe5b046934105cbe39eb6c560aabaeefb9cee0a4209682c2fb0215b99ad343665485a0e5976f9baf6b78af82b477bad8f708b1286b51ec2ab83b WHIRLPOOL 66dfad4706ab8a8f8a6815335813a39906c8684a071b600cf69c273d61a4915c372d00a0087e59e1d5f9948cde825c8c9cb37c90a1552aa163bef6cf5798249d
MISC metadata.xml 915 SHA256 9c1956a6be7e957bf41c3ac9b5b176a9edd963fc5c8055609461689e09e0cbc6 SHA512 7ce2467693ba5db6397e28fe71a5add944c005aadfe83d21ced82a830c26971a4e94b1273239e1c0a729f2bf8b2e46a603a65109b93d7f2695e764dddbb114b8 WHIRLPOOL 19ef3e6c81ccfe6aa11b8e796956a19cdc80e56645dea70b28e1a67db211b88f36893e196f243a839d40613c6ff8b421c73f0d72ffea925fe13dbdf484b59804
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.20 (GNU/Linux)
-iQEcBAEBCAAGBQJR3L0IAAoJEEqz6FtPBkyjIDcH/2f7qZpelCpmBRBdEAPZnruE
-4qnoXOXk7y6UobSe3SU4plAVUAQhWCEH6pvrEGd5otQBEczswyIPSAKmKsQ7lO/P
-hzBf6qVALVHNm+tt3W4fX13FUz0po74mvOtupaHX/mVTaiggFm1ZO1/XUenSOZWX
-a6otB0deTo8wdeAGG5xF+v4osLhcK3HapenNPEDsTViHgA6bnR+D22ol/cMuecmz
-uHwivNmVz/D+6kvLiOngTTbSGuPJgtKj7TV2FLD6DoL+eWmqdVIAcRWtCqYhp78O
-QAm+85UcGEfzptOeIG/Z5sk32zaEU2UzvhQQR4aJI7Xlzib4db5oR8WnzYiQ+yc=
-=hq8U
+iEYEAREIAAYFAlIsdOQACgkQCaWpQKGI+9QE2wCffkESgR5BNoEd6/KVfwvXn3Qi
+xw0An2iRdirnjbUyNg0ETv7xtyLEG+o7
+=0JHD
-----END PGP SIGNATURE-----
diff --git a/net-im/ejabberd/ejabberd-2.1.13-r1.ebuild b/net-im/ejabberd/ejabberd-2.1.13-r1.ebuild
new file mode 100644
index 000000000000..9820c4ed9438
--- /dev/null
+++ b/net-im/ejabberd/ejabberd-2.1.13-r1.ebuild
@@ -0,0 +1,222 @@
+# Copyright 1999-2013 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.1 2013/09/08 13:00:18 pacho 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() {
+ 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.service b/net-im/ejabberd/files/ejabberd.service
new file mode 100644
index 000000000000..0b792565b75e
--- /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 000000000000..cf17b73b43a3
--- /dev/null
+++ b/net-im/ejabberd/files/ejabberd.tmpfiles.conf
@@ -0,0 +1 @@
+d /var/lock/ejabberdctl 0750 jabber jabber