diff options
author | Caleb Tennis <caleb@gentoo.org> | 2008-04-13 12:27:10 +0000 |
---|---|---|
committer | Caleb Tennis <caleb@gentoo.org> | 2008-04-13 12:27:10 +0000 |
commit | 94f1f19d1e9470a3acb67fccc76fc17adb062d67 (patch) | |
tree | fcda049504503c0df6778e1da9f3e3075d407373 /net-im/ejabberd | |
parent | Remove amarok mask now that it's officially released. (diff) | |
download | historical-94f1f19d1e9470a3acb67fccc76fc17adb062d67.tar.gz historical-94f1f19d1e9470a3acb67fccc76fc17adb062d67.tar.bz2 historical-94f1f19d1e9470a3acb67fccc76fc17adb062d67.zip |
Bump revision with a whole new ebuild, thanks to the folks in bug #207586
Package-Manager: portage-2.1.4.4
Diffstat (limited to 'net-im/ejabberd')
-rw-r--r-- | net-im/ejabberd/ChangeLog | 12 | ||||
-rw-r--r-- | net-im/ejabberd/Manifest | 21 | ||||
-rw-r--r-- | net-im/ejabberd/ejabberd-2.0.0-r1.ebuild | 151 | ||||
-rw-r--r-- | net-im/ejabberd/ejabberd-2.0.0.ebuild | 137 | ||||
-rw-r--r-- | net-im/ejabberd/files/2.0.0-ejab-542-mod_proxy65.patch | 12 | ||||
-rw-r--r-- | net-im/ejabberd/files/2.0.0-erlang12-s2s-in.patch | 35 | ||||
-rw-r--r-- | net-im/ejabberd/files/ejabberd-2.0.0.confd | 23 | ||||
-rw-r--r-- | net-im/ejabberd/files/ejabberd-2.0.0.initd | 47 | ||||
-rw-r--r-- | net-im/ejabberd/files/ejabberd-wrapper-2.0.0.template | 49 | ||||
-rw-r--r-- | net-im/ejabberd/files/ejabberdctl-wrapper-2.0.0.template | 30 |
10 files changed, 339 insertions, 178 deletions
diff --git a/net-im/ejabberd/ChangeLog b/net-im/ejabberd/ChangeLog index ada9bc21ed21..4920965e2ace 100644 --- a/net-im/ejabberd/ChangeLog +++ b/net-im/ejabberd/ChangeLog @@ -1,6 +1,16 @@ # ChangeLog for net-im/ejabberd # Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-im/ejabberd/ChangeLog,v 1.33 2008/03/17 16:17:13 chainsaw Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-im/ejabberd/ChangeLog,v 1.34 2008/04/13 12:27:09 caleb Exp $ + +*ejabberd-2.0.0-r1 (13 Apr 2008) + + 13 Apr 2008; Caleb Tennis <caleb@gentoo.org> +files/ejabberd-2.0.0.confd, + files/ejabberd-2.0.0.initd, +files/ejabberd-wrapper-2.0.0.template, + +files/ejabberdctl-wrapper-2.0.0.template, + +files/2.0.0-ejab-542-mod_proxy65.patch, + +files/2.0.0-erlang12-s2s-in.patch, -ejabberd-2.0.0.ebuild, + +ejabberd-2.0.0-r1.ebuild: + Bump revision with a whole new ebuild, thanks to the folks in bug #207586 17 Mar 2008; Tony Vroon <chainsaw@gentoo.org> metadata.xml: Mark caleb as maintainer of this package. diff --git a/net-im/ejabberd/Manifest b/net-im/ejabberd/Manifest index a88be9db00d0..1c2a197bcb32 100644 --- a/net-im/ejabberd/Manifest +++ b/net-im/ejabberd/Manifest @@ -1,7 +1,6 @@ ------BEGIN PGP SIGNED MESSAGE----- -Hash: SHA1 - AUX 1.1.4-missing-declaration.patch 411 RMD160 f314900dd00fd23c9043cb5a60982448c39d2fa9 SHA1 687066247c9ad74c4e9ec869a9f4f0d9e80bae6d SHA256 1c32a57f4f187d55b28b240820875fcd3e731f6d91cd9429d14c318222f07e7b +AUX 2.0.0-ejab-542-mod_proxy65.patch 598 RMD160 bfe11518b5dbfcfb64c7bb04be965d2e383c2d90 SHA1 9161450bf883209f4c2ff2c061f94ef401e4fa51 SHA256 80ce546763de423430efcb60376ff2fda1fcd15ab7b80003ef5d7380a1a4caa3 +AUX 2.0.0-erlang12-s2s-in.patch 1164 RMD160 5bcb04354c02749cdec302dc30354a49872ef2f5 SHA1 c27402b062b58ecf74c9e8c0cf2e879dbe600656 SHA256 ebc66c2a507e39f7f794b32f91148ea5e8c34e46ad41b4b876983da4aa9c1342 AUX 2.0.0-missing-declaration.patch 411 RMD160 f314900dd00fd23c9043cb5a60982448c39d2fa9 SHA1 687066247c9ad74c4e9ec869a9f4f0d9e80bae6d SHA256 1c32a57f4f187d55b28b240820875fcd3e731f6d91cd9429d14c318222f07e7b AUX ejabberd 355 RMD160 bf400cf3a84169a79797db9228ad102d93c9147b SHA1 83bae90f0e211f6e59c96dd6ce419a4c0bcdd3d9 SHA256 1f2254ce2835a986eb75adaf5602d1cb74ced989c2360331822a2c5e11c9837b AUX ejabberd-1.1.1-r1.initd 1401 RMD160 7513d6b71200591a3266e9355505f0b715879ca8 SHA1 14624338a1520291cd08bf0044d3a8845fefd796 SHA256 a69e65d6ec26ed2af1e8cda83493e0a2a652b165560317bf6679fbc97d83db49 @@ -9,8 +8,11 @@ AUX ejabberd-1.1.1.confd 772 RMD160 e250deb4895d02637043877b5f17db447488da0d SHA AUX ejabberd-1.1.4-erlang-12.patch 3746 RMD160 17e6dc9ded6f598c27cf2cda098d2804e3c93957 SHA1 85e03ffd4e85b792759f23353d8e278f85276311 SHA256 bb96a790b948cd5c7359a7bdd2f2486d83dd7430b3556307c22188183be1f3aa AUX ejabberd-1.1.4.confd 736 RMD160 100b2b7957766380b0267d6fc91b3fe8a0f827fc SHA1 7c7283615eddafe24f7d331b76b598ad3f10699c SHA256 8c3f96ebaa0bf200ef145dbc6ebea82451cfaceec9ff7802fdc0ef48bf507715 AUX ejabberd-1.1.4.initd 1437 RMD160 96d9d35de36585a9e735f124b7be1618949541aa SHA1 623713cfb28a247f16a14f6b2ca6a8555609bd35 SHA256 59f983e32f7b530b66b5242ac6f06405b7440a112b2f980abe602508459d923e -AUX ejabberd-2.0.0.initd 1434 RMD160 dcaf0056eb0f9d903fd550139d4c218e00b7c791 SHA1 eb99a7a8154ad094313451ada9cacb065f240590 SHA256 72f151da8193bafec7c578d1a74e5a3da52f0376e5786d620329fe7a20dfa201 +AUX ejabberd-2.0.0.confd 840 RMD160 64f0956b37a15e19d04c58c5fc99b06c2304782c SHA1 4f48611130aa3eae36f4b2d0ee55fc9a58700672 SHA256 6831964009708caac98b40a508eb37bb89c1a7e11adf973f8391319d2115db57 +AUX ejabberd-2.0.0.initd 1183 RMD160 bd70192726db9078d2c0e160d8d0ffac149363d2 SHA1 2d5e46dbb2aa40d2fa2ba5ff9bf8493dc45ea08a SHA256 2ba35bb8f16293d44e3502e443c2c41a118c935f1ce39cb81f28ab6a4d8d22bc +AUX ejabberd-wrapper-2.0.0.template 1243 RMD160 989700850578dd86fe6cefeb465a1c84ba49df48 SHA1 115d10f04dd92ca090e853013dde3e5ffa3d6904 SHA256 1d3abfbb1b4dd79ba9fed74a5c86c97af70dc11927d8fa109a1486999d5f7a96 AUX ejabberdctl 199 RMD160 1f4be5dcd018f0936baaeb41e2fd1c4a6a59bc62 SHA1 347200e8dd5790282cedb6a70c71fd4a6db9a0f5 SHA256 b88de8e8e5e8730ac7fe04b49ae3cf131c49a4e1ba451b35f1305d1c24a2dda0 +AUX ejabberdctl-wrapper-2.0.0.template 530 RMD160 f39037aac0f7ae65c2ca41bef59aa500553a7077 SHA1 84f340e60ce66b3b01c6e82122783fa590edf282 SHA256 6436820e8d015f7831464e0fb175074397ab9906ee8d552f97292acc3cd9e756 AUX inetrc 36 RMD160 4b79020864689ede547969610fde18fe490f5810 SHA1 1e0bae0f7251e2ae3b62ba9d3e5cc86bb5dd271e SHA256 0f383befc4c46134d88ce14d3bd06c404ef6575391f4ac0b5e8c28ba383b28fc AUX self-cert-v2.sh 1009 RMD160 48b7091243bb30718121bad3e771a9335404d75e SHA1 5fe0516f5001a6580cb977bbce2bf63c117fe26a SHA256 a17d411a138b9130b13d9eb7036984ddca2a47b2f66f55eee738f028e817e327 AUX self-cert.sh 491 RMD160 89bb577975eef172fa3c6e07b08d323162d1278b SHA1 61a4c8b79141ec1bc846e8ede6fa19a07210c619 SHA256 6a0c53a8573411c18ed6f5dd79ce4807b72fb10bc5eb3a3a7f4641c57e4ddceb @@ -19,13 +21,6 @@ DIST ejabberd-1.1.4.tar.gz 846059 RMD160 4c72548129b0196ff0096bd85936e0750fc4d7b DIST ejabberd-2.0.0.tar.gz 1387404 RMD160 9e7bb30825f2d480d75516136fcc62a49d871255 SHA1 d70257c1e75f59b7284d52c038431664cfd53e08 SHA256 086e105cb402ef868e3187277db1486807e1b34a2e3e3679f0ee6de1e5fd2e54 EBUILD ejabberd-1.1.4-r1.ebuild 3454 RMD160 b6f24b03584ad7ef7ea4e02961acbd29d3064a97 SHA1 38254b06eeb5eb87306718b39cde50e1c7990cca SHA256 4fb8f36dbca8d5f422e7b6a8a049af86c5d1c262f753453eeccd65a178ff109b EBUILD ejabberd-1.1.4.ebuild 3395 RMD160 1c283f5b60c0ee8b31d279737769f2d7228469a6 SHA1 847dababa185b3fdc74035ecf24096576b71ba0a SHA256 177ecebf528b074651803eb88655123c4b33d1214179b00daba7a8245a5493a1 -EBUILD ejabberd-2.0.0.ebuild 3450 RMD160 16dcf0a34066b9962d09cd06a0fa15c5ece61f01 SHA1 0cc3ff09d050ec3bee2de28ecd997681220cc0cd SHA256 de8913a00636433dddad7192183703b19ce76962c31bd34526e30b7b68b034bd -MISC ChangeLog 7263 RMD160 30ca495d383d3eb5c5728e1c461f212c51c282c3 SHA1 85ca4f65bfec8de226ca890704ceae6c3ba6402f SHA256 bb697bd1f182c9f7f25e2f14d545ca29e3889f76f59862cc421acf08ceee38e8 +EBUILD ejabberd-2.0.0-r1.ebuild 4785 RMD160 c71f5188e1223f014a450c897844dc238838f264 SHA1 e38d19c9426607c754534b8a76d12a361c4c56b8 SHA256 2e639a676d2784f31a10579f4157a2dceb45abc75df643a030fc1dd7a2f0404f +MISC ChangeLog 7696 RMD160 0443207a60d0aeb6db3d84d070504a3d3028c795 SHA1 c2f8718762a5d55082855871c079970b9c533fce SHA256 5c04c9e55c5a3021cf7cb75e771fcb5c5aa981f3cd975df3db1b20b60d8c93f4 MISC metadata.xml 380 RMD160 263fa813b6c2ff8d7c50f08865fe3bdabbcaf013 SHA1 a7ff13422ec7f99adbacfb3e7fc7eb3aca1288e2 SHA256 cb114a6c8c357b6b7bc48bde4c85308a330ab3323239df2bb822269182c71bcd ------BEGIN PGP SIGNATURE----- -Version: GnuPG v2.0.7 (GNU/Linux) - -iD8DBQFH3plHp5vW4rUFj5oRAmK7AKCHbfbfu/Gg1uc21JvIL0uKANKvWACeIhrx -pK+VVKboBaBOovJaauY92a8= -=tR6E ------END PGP SIGNATURE----- diff --git a/net-im/ejabberd/ejabberd-2.0.0-r1.ebuild b/net-im/ejabberd/ejabberd-2.0.0-r1.ebuild new file mode 100644 index 000000000000..87bed3616b21 --- /dev/null +++ b/net-im/ejabberd/ejabberd-2.0.0-r1.ebuild @@ -0,0 +1,151 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-im/ejabberd/ejabberd-2.0.0-r1.ebuild,v 1.1 2008/04/13 12:27:09 caleb Exp $ + +inherit eutils multilib + +JABBER_ETC="/etc/jabber" +JABBER_RUN="/var/run/jabber" +JABBER_SPOOL="/var/spool/jabber" +JABBER_LOG="/var/log/jabber" + +MY_PV=${PV} +MY_P=${PN}-${MY_PV} + +DESCRIPTION="The Erlang Jabber Daemon" +HOMEPAGE="http://ejabberd.jabber.ru/" +SRC_URI="http://process-one.net/en/projects/${PN}/download/${PV/_/-}/${P/_/-}.tar.gz" +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86" +IUSE="debug mod_irc mod_muc mod_pubsub ldap odbc ssl web zlib" + +DEPEND=">=net-im/jabber-base-0.01 + >=dev-libs/expat-1.95 + >=dev-lang/erlang-11.2.5 + odbc? ( dev-db/unixODBC ) + ldap? ( =net-nds/openldap-2* ) + ssl? ( >=dev-libs/openssl-0.9.8e ) + zlib? ( sys-libs/zlib )" + +PROVIDE="virtual/jabber-server" +S=${WORKDIR}/${MY_P}/src + +src_unpack() { + unpack ${A} + cd "${S}" + + # Bug #171427 + epatch "${FILESDIR}/${MY_PV}-missing-declaration.patch" + # Bug #215853 + epatch "${FILESDIR}/${MY_PV}-erlang12-s2s-in.patch" + # patch for mod_proxy65 using erlang12 + # http://support.process-one.net/browse/EJAB-542 + epatch "${FILESDIR}/${MY_PV}-ejab-542-mod_proxy65.patch" + + # get rid of the prefix + sed -i -e "s/\\@prefix\\@//" "${S}/Makefile.in" \ + || die "cannot sed Makefile.in" + # we want ejabberdctl in /usr/sbin not /sbin !!! + sed -i -e "s/\\/sbin/\\/usr\\/sbin/" "${S}/Makefile.in" \ + || die "cannot sed Makefile.in" +} + +src_compile() { + econf --prefix=/ \ + $(use_enable mod_irc) \ + $(use_enable ldap eldap) \ + $(use_enable mod_muc) \ + $(use_enable mod_pubsub) \ + $(use_enable ssl tls) \ + $(use_enable web) \ + $(use_enable odbc) \ + $(use_enable zlib ejabberd_zlib) \ + || die "econf failed" + + if useq debug; then + emake ejabberd_debug=true || die "compiling ejabberd core failed" + else + emake || die "compiling ejabberd core failed" + fi +} + +src_install() { + make \ + DESTDIR="${D}" \ + EJABBERDDIR="${D}/usr/$(get_libdir)/erlang/lib/${P}" \ + ETCDIR="${D}${JABBER_ETC}" \ + LOGDIR="${D}${JABBER_LOG}" \ + install || die "install failed" + + # remove the default ejabberdctl as we use our own + rm "${D}/usr/sbin/ejabberdctl" + + insinto ${JABBER_ETC} + + chown -R jabber:jabber "${D}${JABBER_ETC}" + chown -R jabber:jabber "${D}${JABBER_LOG}" + chown -R jabber:jabber "${D}/usr/$(get_libdir)/erlang/lib/${P}" + + if useq ssl ; then + doins "${FILESDIR}/ssl.cnf" + newins "${FILESDIR}/self-cert-v2.sh" self-cert.sh + fi + + dohtml "${WORKDIR}/${MY_P}/doc/*.{html,png}" + + # set up /usr/sbin/ejabberd wrapper + cat "${FILESDIR}/ejabberd-wrapper-2.0.0.template" \ + | sed -e "s/\@libdir\@/$(get_libdir)/g" -e "s/\@version\@/${PV}/g" \ + > "${T}/ejabberd" + exeinto /usr/sbin + doexe "${T}/ejabberd" + + # set up /usr/sbin/ejabberdctl wrapper + cat "${FILESDIR}/ejabberdctl-wrapper-2.0.0.template" \ + | sed -e "s/\@libdir\@/$(get_libdir)/g" -e "s/\@version\@/${PV}/g" \ + > "${T}/ejabberdctl" + doexe "${T}/ejabberdctl" + + newinitd "${FILESDIR}/${MY_P}.initd" ${PN} + newconfd "${FILESDIR}/${MY_P}.confd" ${PN} + + # fix up the ssl cert paths in /etc/jabber/ejabberd.cfg to use the cert + # that would be generated by /etc/jabber/self-cert.sh + sed -i -e "s/\/path\/to\/ssl.pem/\/etc\/jabber\/ssl.pem/g" \ + "${D}${JABBER_ETC}/ejabberd.cfg" || die "Cannot sed ejabberd.cfg" + + # if mod_irc is not enabled, comment out the mod_irc in the default + # ejabberd.cfg + if ! use mod_irc; then + sed -i -e "s/{mod_irc,/%{mod_irc,/" \ + "${D}${JABBER_ETC}/ejabberd.cfg" || die "Cannot sed ejabberd.cfg" + fi +} + +pkg_postinst() { + 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/projects/ejabberd/docs/guide_en.html" + if useq ssl ; then + if [ ! -e /etc/jabber/ssl.pem ]; then + elog "Please edit ${JABBER_ETC}/ssl.cnf and run ${JABBER_ETC}/self-cert.sh" + elog "Ejabberd may refuse to start without an SSL certificate" + fi + fi + if ! useq web ; then + elog "The web USE flag is off, this has disabled the web admin interface." + fi + elog "====================================================================" + elog 'Quick Start Guide:' + elog '1) Add output of `hostname -s` to /etc/jabber/ejabberd.cfg line 89' + elog ' {hosts, ["localhost", "thehost"]}.' + elog '2) Add an admin user to /etc/jabber/ejabberd.cfg line 324' + elog ' {acl, admin, {user, "theadmin", "thehost"}}.' + elog '3) Start the server twice (needed to set cookie permissions);' + elog ' # /etc/init.d/ejabberd start; /etc/init.d/ejabberd start' + 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' +} + diff --git a/net-im/ejabberd/ejabberd-2.0.0.ebuild b/net-im/ejabberd/ejabberd-2.0.0.ebuild deleted file mode 100644 index c13843ba9456..000000000000 --- a/net-im/ejabberd/ejabberd-2.0.0.ebuild +++ /dev/null @@ -1,137 +0,0 @@ -# Copyright 1999-2008 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-im/ejabberd/ejabberd-2.0.0.ebuild,v 1.1 2008/02/22 14:55:58 caleb Exp $ - -inherit eutils multilib - -JABBER_ETC="/etc/jabber" -JABBER_RUN="/var/run/jabber" -JABBER_SPOOL="/var/spool/jabber" -JABBER_LOG="/var/log/jabber" - -MY_PV=${PV} -MY_P=${PN}-${MY_PV} - -DESCRIPTION="The Erlang Jabber Daemon" -HOMEPAGE="http://ejabberd.jabber.ru/" -SRC_URI="http://process-one.net/en/projects/${PN}/download/${PV/_/-}/${P/_/-}.tar.gz" -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~amd64 ~ppc ~x86" -IUSE="debug mod_irc mod_muc mod_pubsub ldap odbc ssl web zlib" - -DEPEND=">=net-im/jabber-base-0.01 - >=dev-libs/expat-1.95 - >=dev-lang/erlang-11.2.5 - odbc? ( dev-db/unixODBC ) - ldap? ( =net-nds/openldap-2* ) - ssl? ( >=dev-libs/openssl-0.9.8e ) - zlib? ( sys-libs/zlib )" - -PROVIDE="virtual/jabber-server" -S=${WORKDIR}/${MY_P}/src - -src_unpack() { - unpack ${A} - cd "${S}" - - # Bug #171427 - epatch "${FILESDIR}/${MY_PV}-missing-declaration.patch" -} - -src_compile() { - econf \ - $(use_enable mod_irc) \ - $(use_enable ldap eldap) \ - $(use_enable mod_muc) \ - $(use_enable mod_pubsub) \ - $(use_enable ssl tls) \ - $(use_enable web) \ - $(use_enable odbc) \ - $(use_enable zlib ejabberd_zlib) \ - || die "econf failed" - - if useq debug; then - emake ejabberd_debug=true || die "compiling ejabberd core failed" - else - emake || die "compiling ejabberd core failed" - fi -} - -src_install() { - make \ - DESTDIR="${D}" \ - EJABBERDDIR="${D}/usr/$(get_libdir)/erlang/lib/${P}" \ - ETCDIR="${D}${JABBER_ETC}" \ - LOGDIR="${D}${JABBER_LOG}" \ - install \ - || die "install failed" - - chown -R jabber:jabber "${D}${JABBER_ETC}" - chown -R jabber:jabber "${D}${JABBER_LOG}" - chown -R jabber:jabber "${D}/usr/$(get_libdir)/erlang/lib/${P}" - - insinto /usr/share/doc/${PF} - dohtml doc/*.{html,png} - - # - # Create /usr/bin/ejabberd - # - cat <<EOF > "${T}/ejabberd" -#!/bin/bash - -erl -pa /usr/$(get_libdir)/erlang/lib/${P}/ebin \\ - ${pa} \\ - -sname ejabberd \\ - -s ejabberd \\ - -ejabberd config \"${JABBER_ETC}/ejabberd.cfg\" \\ - log_path \"${JABBER_LOG}/ejabberd.log\" \\ - -kernel inetrc \"${JABBER_ETC}/inetrc\" \\ - -sasl sasl_error_logger \{file,\"${JABBER_LOG}/sasl.log\"\} \\ - -mnesia dir \"${JABBER_SPOOL}\" \\ - \$@ -EOF - - # - # Create /usr/bin/ejabberdctl - # - cat <<EOF > "${T}/ejabberdctl" -#!/bin/sh - -exec env HOME=${JABBER_RUN} \\ - erl -pa /usr/$(get_libdir)/erlang/lib/${P}/ebin \\ - ${pa} \\ - -noinput \\ - -sname ejabberdctl \\ - -s ejabberd_ctl \\ - -extra \$@ -EOF - - dobin "${T}/ejabberdctl" - dobin "${T}/ejabberd" - - newinitd "${FILESDIR}/${MY_P}.initd" ${PN} - newconfd "${FILESDIR}/ejabberd-1.1.3.confd" ${PN} - - insinto ${JABBER_ETC} - doins "${FILESDIR}/inetrc" - if useq ssl ; then - doins "${FILESDIR}/ssl.cnf" - newins "${FILESDIR}/self-cert-v2.sh" self-cert.sh - fi -} - -pkg_postinst() { - elog "For configuration instructions, please see /usr/share/doc/${PF}/html/guide.html" - elog "or the online version at http://www.process-one.net/en/projects/ejabberd/docs/guide_en.html" - echo - if useq ssl ; then - if [ ! -e /etc/jabber/ssl.pem ]; then - elog "Please edit ${JABBER_ETC}/ssl.cnf and run ${JABBER_ETC}/self-cert.sh" - elog "Ejabberd may refuse to start without an SSL certificate" - fi - fi - if ! useq web ; then - elog "The web USE flag is off, this has disabled the web admin interface." - fi -} diff --git a/net-im/ejabberd/files/2.0.0-ejab-542-mod_proxy65.patch b/net-im/ejabberd/files/2.0.0-ejab-542-mod_proxy65.patch new file mode 100644 index 000000000000..6cc3bc815a56 --- /dev/null +++ b/net-im/ejabberd/files/2.0.0-ejab-542-mod_proxy65.patch @@ -0,0 +1,12 @@ +--- ejabberd-2.0.0/src/mod_proxy65/mod_proxy65_service.erl.original 2008-04-11 00:10:26.000000000 +0100 ++++ ejabberd-2.0.0/src/mod_proxy65/mod_proxy65_service.erl 2008-04-11 00:11:12.000000000 +0100 +@@ -201,7 +201,7 @@ + none -> get_proxy_or_domainip(ServerHost, MyHost); + Addr -> Addr + end, +- [_ | StrIP] = lists:append([[$. | integer_to_list(X)] || X <- inet:ip_to_bytes(IP)]), ++ StrIP = inet_parse:ntoa(IP), + StreamAddr = [{"jid", MyHost}, {"host", StrIP}, {"port", integer_to_list(Port)}], + {IP, #state{myhost = MyHost, + serverhost = ServerHost, + diff --git a/net-im/ejabberd/files/2.0.0-erlang12-s2s-in.patch b/net-im/ejabberd/files/2.0.0-erlang12-s2s-in.patch new file mode 100644 index 000000000000..68cc69810056 --- /dev/null +++ b/net-im/ejabberd/files/2.0.0-erlang12-s2s-in.patch @@ -0,0 +1,35 @@ +--- ejabberd-2.0.0/src/ejabberd_s2s_in.erl.original 2008-02-21 10:02:12.000000000 +0000 ++++ ejabberd-2.0.0/src/ejabberd_s2s_in.erl 2008-04-08 18:00:04.000000000 +0100 +@@ -50,9 +50,13 @@ + -include("jlib.hrl"). + -ifdef(SSL39). + -include_lib("ssl/include/ssl_pkix.hrl"). ++-define(PKIXEXPLICIT, 'OTP-PKIX'). ++-define(PKIXIMPLICIT, 'OTP-PKIX'). + -else. + -include_lib("ssl/include/PKIX1Explicit88.hrl"). + -include_lib("ssl/include/PKIX1Implicit88.hrl"). ++-define(PKIXEXPLICIT, 'PKIX1Explicit88'). ++-define(PKIXIMPLICIT, 'PKIX1Implicit88'). + -endif. + -include("XmppAddr.hrl"). + +@@ -603,7 +607,7 @@ + lists:flatmap( + fun(#'AttributeTypeAndValue'{type = ?'id-at-commonName', + value = Val}) -> +- case 'PKIX1Explicit88':decode('X520CommonName', Val) of ++ case ?PKIXEXPLICIT:decode('X520CommonName', Val) of + {ok, {_, D1}} -> + D = if + is_list(D1) -> D1; +@@ -637,7 +641,7 @@ + is_binary(Val) -> Val; + true -> Val + end, +- case 'PKIX1Implicit88':decode('SubjectAltName', BVal) of ++ case ?PKIXIMPLICIT:decode('SubjectAltName', BVal) of + {ok, SANs} -> + lists:flatmap( + fun({otherName, + diff --git a/net-im/ejabberd/files/ejabberd-2.0.0.confd b/net-im/ejabberd/files/ejabberd-2.0.0.confd new file mode 100644 index 000000000000..6399d27d2473 --- /dev/null +++ b/net-im/ejabberd/files/ejabberd-2.0.0.confd @@ -0,0 +1,23 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-im/ejabberd/files/ejabberd-2.0.0.confd,v 1.1 2008/04/13 12:27:10 caleb Exp $ + +# Name of your ejabberd node. Used by ejabberdctl to determine which +# node to communicate with. +EJABBERD_NODE="ejabberd@`hostname -s`" + +# Max number of open network connections. Default is 1024. Increasing +# this will slightly increase memory usage. +#ERL_MAX_PORTS=1024 + +# Return memory to the system after using it, instead of keeping it +# allocated for future use. Decreases the memory required by ejabberd, +# but makes it run slower. Default is unset, set to any value to +# activate. +#ERL_FULLSWEEP_AFTER=0 + +# set to 1, "true" or "yes" if you have a symmetric-multi-processor +# default is non smp +#HAVE_SMP=0 + + diff --git a/net-im/ejabberd/files/ejabberd-2.0.0.initd b/net-im/ejabberd/files/ejabberd-2.0.0.initd index c16b849602dd..1b351c464241 100644 --- a/net-im/ejabberd/files/ejabberd-2.0.0.initd +++ b/net-im/ejabberd/files/ejabberd-2.0.0.initd @@ -1,7 +1,7 @@ #!/sbin/runscript -# Copyright 1999-2007 Gentoo Foundation +# Copyright 1999-2008 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-im/ejabberd/files/ejabberd-2.0.0.initd,v 1.1 2008/02/05 13:27:45 caleb Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-im/ejabberd/files/ejabberd-2.0.0.initd,v 1.2 2008/04/13 12:27:10 caleb Exp $ opts="${opts} reload" @@ -13,7 +13,7 @@ depend() { checkconfig() { if [ ! -e /etc/jabber/ejabberd.cfg ] ; then - eerror "You need an /etc/jabber/ejabberd.cfg file to run ejabberd" + eerror "You need a /etc/jabber/ejabberd.cfg file to run ejabberd" return 1 fi } @@ -21,8 +21,21 @@ checkconfig() { start() { checkconfig || return 1 ebegin "Starting eJabberd" + # the process name of beam is different depending whether smp is used. + # set it explicitly so start-stop-daemon works + case "$HAVE_SMP" in + "1"|"true"|"yes") + BEAMNAME="beam.smp" + SMPOPT="enable" + ;; + *) + BEAMNAME="beam" + SMPOPT="disable" + ;; + esac start-stop-daemon --start --quiet --chuid jabber:jabber \ - --exec /usr/bin/env HOME=/var/run/jabber /usr/bin/ejabberd -- -noshell -detached + --name $BEAMNAME \ + --exec /usr/sbin/ejabberd -- -detached -noinput -smp $SMPOPT eend $? # For bug #190266 chown jabber:jabber /var/run/jabber/.erlang.cookie @@ -30,33 +43,13 @@ start() { stop() { ebegin "Stopping eJabberd" - if [ -z "$EJABBERD_NODE" ]; - then - EJABBERD_NODE="ejabberd@`hostname -s`" - fi - /usr/bin/ejabberdctl $EJABBERD_NODE stop - eend $? -} - -# Work around a bug in /sbin/runscript.sh - it won't run our custom -# restart() unless it finds these two strings in the file. -# svc_start svc_stop -restart() { - ebegin "Restarting eJabberd" - if [ -z "$EJABBERD_NODE" ]; - then - EJABBERD_NODE="ejabberd@`hostname -s`" - fi - /usr/bin/ejabberdctl $EJABBERD_NODE restart + /usr/sbin/ejabberdctl stop eend $? } reload() { ebegin "Reloading eJabberd" - if [ -z "$EJABBERD_NODE" ]; - then - EJABBERD_NODE="ejabberd@`hostname -s`" - fi - /usr/bin/ejabberdctl $EJABBERD_NODE reopen-log + /usr/sbin/ejabberdctl reopen-log eend $? } + diff --git a/net-im/ejabberd/files/ejabberd-wrapper-2.0.0.template b/net-im/ejabberd/files/ejabberd-wrapper-2.0.0.template new file mode 100644 index 000000000000..89f3ff4824e3 --- /dev/null +++ b/net-im/ejabberd/files/ejabberd-wrapper-2.0.0.template @@ -0,0 +1,49 @@ +#!/bin/sh + +[ -f /etc/conf.d/ejabberd ] && . /etc/conf.d/ejabberd + +# provide some default configuration +ERL=/usr/bin/erl +CONFIG=/etc/jabber/ejabberd.cfg +INETRC=/etc/jabber/inetrc +LOG_PATH=/var/log/jabber/ejabberd.log +SASL_LOG=/var/log/jabber/sasl.log +SPOOL=/var/spool/jabber + +ARGS= +while [ $# -ne 0 ] ; do + PARAM=$1 + shift + case $PARAM in + --) break ;; + --node) EJABBERD_NODE=$1; shift ;; + --config) CONFIG=$1 ; shift ;; + --log) LOG_PATH=$1 ; shift ;; + --sasl-log) SASL_LOG=$1 ; shift ;; + --spool) SPOOL=$1 ; shift ;; + *) ARGS="$ARGS $PARAM" ;; + esac +done + +if [ "$EJABBERD_NODE" = "${EJABBERD_NODE%.*}" ] ; then + SNAME=-sname +else + SNAME=-name +fi + +# export ejabberd configuration environment variables +export HOME=/var/run/jabber +export EJABBERD_EBIN=/usr/@libdir@/erlang/lib/ejabberd-@version@/ebin +export EJABBERD_MSGS_PATH=/usr/@libdir@/erlang/lib/ejabberd-@version@/priv/msgs +export EJABBERD_SO_PATH=/usr/@libdir@/erlang/lib/ejabberd-@version@/priv/lib +export EJABBERD_LOG_PATH=$LOG_PATH +export EJABBERD_CONFIG_PATH=$CONFIG + +exec $ERL $SNAME $EJABBERD_NODE \ + -s ejabberd \ + -kernel inetrc \"$INETRC\" \ + -sasl sasl_error_logger \{file,\"$SASL_LOG\"\} \ + -mnesia dir \"$SPOOL\" \ + $ERL_OPTIONS $ARGS "$@" + + diff --git a/net-im/ejabberd/files/ejabberdctl-wrapper-2.0.0.template b/net-im/ejabberd/files/ejabberdctl-wrapper-2.0.0.template new file mode 100644 index 000000000000..6443678cf9b2 --- /dev/null +++ b/net-im/ejabberd/files/ejabberdctl-wrapper-2.0.0.template @@ -0,0 +1,30 @@ +#!/bin/sh + +[ -f /etc/conf.d/ejabberd ] && . /etc/conf.d/ejabberd + +if [ -r /var/run/jabber/.erlang.cookie ] ; then + HOME=/var/run/jabber + export HOME +fi + +ERL=/usr/bin/erl + +if [ $# -ne 0 ] ; then + case $1 in + --node) shift ; EJABBERD_NODE=$1 ; shift ;; + esac +fi + +if [ "$EJABBERD_NODE" = "${EJABBERD_NODE%.*}" ] ; then + SNAME=-sname +else + SNAME=-name +fi + +exec $ERL $SNAME ejabberdctl \ + -pa /usr/@libdir@/erlang/lib/ejabberd-@version@/ebin \ + -s ejabberd_ctl \ + -noinput \ + -extra $EJABBERD_NODE "$@" + + |