ChangeLog

# 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.47 2008/08/05 16:35:41 gentoofan23 Exp $

05 Aug 2008; Thomas Anderson metadata.xml:
Add USE flag description to metadata as per GLEP 56.

03 Aug 2008; Caleb Tennis
-files/ejabberd-1.1.1-r1.initd, -files/ejabberd-1.1.1.confd,
-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, -ejabberd-1.1.4.ebuild,
-ejabberd-2.0.0-r1.ebuild, -ejabberd-2.0.1_p2.ebuild:
remove older versions

*ejabberd-2.0.2_beta1 (03 Aug 2008)

03 Aug 2008; Caleb Tennis +files/ejabberd-2.0.2.confd,
+files/ejabberd-2.0.2.initd, +files/ejabberd-wrapper-2.0.2.template,
+files/ejabberdctl-wrapper-2.0.2.template, +ejabberd-2.0.2_beta1.ebuild:
version bump

27 Jul 2008; Caleb Tennis ejabberd-2.0.1_p2-r1.ebuild:
amd64 the revbump too

26 Jul 2008; Dawid Węgliński
ejabberd-2.0.1_p2-r1.ebuild:
Stable on x86 (bug #231676)

*ejabberd-2.0.1_p2-r1 (19 Jul 2008)

19 Jul 2008; Caleb Tennis
+files/2.0.1-parallel-make.patch, +ejabberd-2.0.1_p2-r1.ebuild:
Add parallel make patch per 225565

19 Jul 2008; Caleb Tennis ejabberd-2.0.1_p2.ebuild:
amd64 stable per #231676

25 May 2008; Caleb Tennis ejabberd-2.0.1_p2.ebuild:
make /var/lib/ejabberd directory

23 May 2008; Caleb Tennis ejabberd-2.0.1_p2.ebuild:
add pam use flag and set permissions on pam helper

*ejabberd-2.0.1_p2 (23 May 2008)

23 May 2008; Caleb Tennis -ejabberd-2.0.1.ebuild,
+ejabberd-2.0.1_p2.ebuild:
bump to a new upstream version

22 May 2008; Caleb Tennis files/ejabberd-2.0.1.initd,
+files/ejabberd-wrapper-2.0.1.template,
+files/ejabberdctl-wrapper-2.0.1.template, ejabberd-2.0.1.ebuild:
add some fixes from 207586

*ejabberd-2.0.1 (22 May 2008)

22 May 2008; Caleb Tennis files/ejabberd-2.0.0.initd,
+ejabberd-2.0.1.ebuild:
version bump

13 Apr 2008; Caleb Tennis files/self-cert-v2.sh,
ejabberd-2.0.0-r1.ebuild:
Update self-cert-v2.sh

13 Apr 2008; Caleb Tennis ejabberd-2.0.0-r1.ebuild:
Fix homepage

*ejabberd-2.0.0-r1 (13 Apr 2008)

13 Apr 2008; Caleb Tennis +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 metadata.xml:
Mark caleb as maintainer of this package.

22 Feb 2008; Caleb Tennis +files/ejabberd-1.1.4.confd,
ejabberd-1.1.4.ebuild, ejabberd-1.1.4-r1.ebuild:
1.1.4 was using the 1.1.3 conf file, so create a 1.1.4 conf file and update
the ebuilds to use it

*ejabberd-2.0.0 (22 Feb 2008)

22 Feb 2008; Caleb Tennis -files/ejabberd-1.1.3.confd,
-files/1.1.3-missing-declaration.patch, -ejabberd-1.1.3.ebuild,
-ejabberd-1.1.3-r1.ebuild, -ejabberd-1.1.3-r2.ebuild,
-ejabberd-2.0.0_rc1.ebuild, +ejabberd-2.0.0.ebuild:
bump to 2.0.0, remove old versions

10 Feb 2008; Luca Barbato ejabberd-2.0.0_rc1.ebuild:
Marked ~ppc

*ejabberd-2.0.0_rc1 (05 Feb 2008)

05 Feb 2008; Caleb Tennis +files/ejabberd-2.0.0.initd,
+files/2.0.0-missing-declaration.patch, +ejabberd-2.0.0_rc1.ebuild:
Version bump, from bug #207586

31 Jan 2008; Christian Faulhammer
ejabberd-1.1.4-r1.ebuild:
emergency stable x86

*ejabberd-1.1.4-r1 (11 Jan 2008)

11 Jan 2008; Christian Faulhammer
+files/ejabberd-1.1.4-erlang-12.patch, +ejabberd-1.1.4-r1.ebuild:
make ejabberd compile with Erlang 12B, patch take from Debian, reported in
bug 202114 by Conrad Kostecki , thanks to Anton
Romanov

08 Dec 2007; Ulrich Mueller
+files/ejabberd-1.1.1-r1.initd, +files/ejabberd-1.1.1.confd:
Restore initd and confd files that are still needed.

08 Dec 2007; Tony Vroon -files/ejabberd-0.7.5.confd,
-files/ejabberd-0.7.5.initd, -files/ejabberd-1.1.1-r1.initd,
-files/ejabberd-1.1.1.confd, -files/ejabberd-1.1.1.initd,
-ejabberd-0.7.5.ebuild, -ejabberd-1.1.1.ebuild, -ejabberd-1.1.1-r1.ebuild,
-ejabberd-1.1.2-r1.ebuild:
Remove old ebuilds, including 1.1.1 which used an insecure docert statement
(per suggestion of Ulrich Mueller on IRC). Closes bug
#201677.

*ejabberd-1.1.4 (14 Sep 2007)

14 Sep 2007; Tony Vroon +files/ejabberd-1.1.4.initd,
+files/1.1.4-missing-declaration.patch, +ejabberd-1.1.4.ebuild:
Version bump, closes bugs #188679, #192012 and #190266.

01 Sep 2007; Christian Faulhammer
ejabberd-1.1.3-r2.ebuild:
add a space that got lost in my previous change, reported by OlegON
in bug 190944

29 Aug 2007; Christian Faulhammer
ejabberd-1.1.3-r2.ebuild:
remove restriction on lower erlang versions, see bug 184419; added some
quotes around variables

*ejabberd-1.1.3-r2 (13 Jul 2007)

13 Jul 2007; Tony Vroon +ejabberd-1.1.3-r2.ebuild:
Debugging support by Justin , closes bug
#174734. Do not attempt to automatically generate a key, this ends up being
interactive on some systems. Closes bug #178615 by Robin Johnson
. Revert defective change from bug #161252, without
sname the daemon can not be stopped. Thanks to Conrad Kostecki
, closes bug #181745. Restrict erlang dep to <11.2.5 to
avoid EOF during handshake, as reported by Santiago Gala ,
closes bug #184419. Restrict openssl dep to >=0.9.8e so a messy die on
USE="zlib" in openssl is no longer required. Also a report by Conrad
Kostecki , this closes bug #185009.

28 Apr 2007; Sven Wegener ejabberd-0.7.5.ebuild:
Fix *initd, *confd and *envd calls (#173884, #174266)

21 Apr 2007; Tony Vroon ejabberd-0.7.5.ebuild:
Stop using insinto /etc/conf.d and use the newconfd function instead, bug
#174266.

*ejabberd-1.1.3-r1 (11 Apr 2007)

11 Apr 2007; Tony Vroon +files/ejabberd-1.1.3.confd,
+files/1.1.3-missing-declaration.patch, +ejabberd-1.1.3-r1.ebuild:
Revision bump, closes bugs #161252, #171427 and #171551.

11 Mar 2007; Markus Rothe ejabberd-1.1.3.ebuild:
Adding ~amd64 to 1.1.3, too.

11 Mar 2007; Peter Weller ejabberd-1.1.2-r1.ebuild:
Keyworded ~amd64 wrt bug 141302

28 Feb 2007; Christian Faulhammer
files/ejabberd-1.1.1-r1.initd, ejabberd-1.1.3.ebuild:
corrected init file; removed dodoc entry; stable x86; security bug 159580

*ejabberd-1.1.3 (27 Feb 2007)

27 Feb 2007; Stefan Cornelius +ejabberd-1.1.3.ebuild:
Bumping to version 1.1.3 wrt security bug #159580

27 Feb 2007; Gustavo Felisberto ; metadata.xml:
Corrected maintainer in metadata.

22 Feb 2007; Piotr Jaroszyński ChangeLog:
Transition to Manifest2.

*ejabberd-1.1.2-r1 (16 Oct 2006)

16 Oct 2006; Tony Vroon -ejabberd-1.1.2.ebuild,
+ejabberd-1.1.2-r1.ebuild:
Pull set of utterly broken and apparently completely untested patches, bug
#137724 now closed as WONTFIX.

*ejabberd-1.1.2 (13 Oct 2006)

13 Oct 2006; Tony Vroon +ejabberd-1.1.2.ebuild:
New upstream version. Patchball updated with mod_presence, all thanks to
Nikolaus Polak in bug #137724.

*ejabberd-1.1.1-r1 (12 Oct 2006)

12 Oct 2006; Tony Vroon
+files/ejabberd-1.1.1-r1.initd, +files/self-cert-v2.sh, +files/ssl.cnf,
ejabberd-1.1.1.ebuild, +ejabberd-1.1.1-r1.ebuild:
Revision bump, robust start/stop script thanks to Chris Carlin
and Dustin J. Mitchell in bug
#145373. Statsdx & SOCKS5 proxy support thanks to Nikolaus Polak
in bug #137724. And finally, thanks to Micha Krause
for pointing out that the SSL eclass did not create
certificates usable for S2S connections in bug #150088.

01 Aug 2006; Joshua Jackson ejabberd-1.1.1.ebuild:
Stable x86; bug #141302

*ejabberd-1.1.1 (19 Jun 2006)

19 Jun 2006; Tony Vroon +files/ejabberd-1.1.1.confd,
+files/ejabberd-1.1.1.initd, +ejabberd-1.1.1.ebuild:
Version bump, thanks to all contributors in bug #101708.

05 May 2006; Diego Pettenò ejabberd-0.7.5.ebuild:
Fix enewuser/enewgroup location, bug #130849.

23 Aug 2005; Gustavo Felisberto ;
ejabberd-0.7.5.ebuild:
QA issue #103421

16 Apr 2005; Gustavo Felisberto ; files/ejabberd,
ejabberd-0.7.5.ebuild:
Small file permission patches

10 Apr 2005; Gustavo Felisberto ;
files/ejabberd-0.7.5.initd, +files/self-cert.sh, ejabberd-0.7.5.ebuild:
Added ssl.pem generator script and einfo.

*ejabberd-0.7.5 (08 Apr 2005)

08 Apr 2005; Gustavo Felisberto ; +files/ejabberd,
+files/ejabberd-0.7.5.confd, +files/ejabberd-0.7.5.initd,
+files/ejabberdctl, +files/inetrc, +ejabberd-0.7.5.ebuild:
Initial import. This is masked for a reason :) if you have problems bug #63472
is your friend.

Manifest

-----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 2.0.1-parallel-make.patch 1537 RMD160 07b25c053ba74d1a4b924709d0c7ccc0ecaf39e2 SHA1 c03051d8180efb91228e52b881dbf7ae2cb473f5 SHA256 6c40029f740d8ea871b8e2b7bc8de6dfbae134b3a4208bd5a678b6af03c73335
AUX ejabberd 355 RMD160 bf400cf3a84169a79797db9228ad102d93c9147b SHA1 83bae90f0e211f6e59c96dd6ce419a4c0bcdd3d9 SHA256 1f2254ce2835a986eb75adaf5602d1cb74ced989c2360331822a2c5e11c9837b
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.1.confd 840 RMD160 c013ebfe1e471916561ba23a0ac83618501ce8cc SHA1 1bf74fa62acfd3edf60633fcdf11aeb2882a150a SHA256 8df6a561feeb84c5117837ef6924fec4aed392accd20fd1b0135a3dc789f1372
AUX ejabberd-2.0.1.initd 1134 RMD160 21d775aeb8671996ee9dcfb371d1122cad81a063 SHA1 143b0f9d4c8eba20164d9915aa48a736add828be SHA256 9f65bbd0e3e7e0fc8df379a0cac6d03414ab793ce83abcbc55468c16e529ad82
AUX ejabberd-2.0.2.confd 840 RMD160 5227a3fbb0d0c8bffd8a5537003f965f1fb73582 SHA1 d3a51fa0923a571d30f3f0840834c651726ad206 SHA256 d6b0c44a450c4191e450b8e3ab281dc2e3bc668a97ddd1652d2e6c555675a2c6
AUX ejabberd-2.0.2.initd 1134 RMD160 b5d3a5a50069be713511ebd37f9eab07dab33371 SHA1 0cd2c3bd44c1923014c1cdd84edfb56ddb11bdc2 SHA256 8b2c50bc80b5b0700195c79a4eaa6f68549fd63310b584c2e86d951c116e14de
AUX ejabberd-wrapper-2.0.1.template 1243 RMD160 989700850578dd86fe6cefeb465a1c84ba49df48 SHA1 115d10f04dd92ca090e853013dde3e5ffa3d6904 SHA256 1d3abfbb1b4dd79ba9fed74a5c86c97af70dc11927d8fa109a1486999d5f7a96
AUX ejabberd-wrapper-2.0.2.template 1243 RMD160 989700850578dd86fe6cefeb465a1c84ba49df48 SHA1 115d10f04dd92ca090e853013dde3e5ffa3d6904 SHA256 1d3abfbb1b4dd79ba9fed74a5c86c97af70dc11927d8fa109a1486999d5f7a96
AUX ejabberdctl 199 RMD160 1f4be5dcd018f0936baaeb41e2fd1c4a6a59bc62 SHA1 347200e8dd5790282cedb6a70c71fd4a6db9a0f5 SHA256 b88de8e8e5e8730ac7fe04b49ae3cf131c49a4e1ba451b35f1305d1c24a2dda0
AUX ejabberdctl-wrapper-2.0.1.template 530 RMD160 f39037aac0f7ae65c2ca41bef59aa500553a7077 SHA1 84f340e60ce66b3b01c6e82122783fa590edf282 SHA256 6436820e8d015f7831464e0fb175074397ab9906ee8d552f97292acc3cd9e756
AUX ejabberdctl-wrapper-2.0.2.template 530 RMD160 f39037aac0f7ae65c2ca41bef59aa500553a7077 SHA1 84f340e60ce66b3b01c6e82122783fa590edf282 SHA256 6436820e8d015f7831464e0fb175074397ab9906ee8d552f97292acc3cd9e756
AUX inetrc 36 RMD160 4b79020864689ede547969610fde18fe490f5810 SHA1 1e0bae0f7251e2ae3b62ba9d3e5cc86bb5dd271e SHA256 0f383befc4c46134d88ce14d3bd06c404ef6575391f4ac0b5e8c28ba383b28fc
AUX self-cert-v2.sh 1017 RMD160 3beb0f05e8cc3041abd2f689d31d410bc7d5088d SHA1 1f07299b2e49541dcbf5c2b81b26280bbf0b6aeb SHA256 34b2c9cb36c424ffd1117bd20b67d0f4a05168b0bc6237e287c2dcabd0e27972
AUX self-cert.sh 491 RMD160 89bb577975eef172fa3c6e07b08d323162d1278b SHA1 61a4c8b79141ec1bc846e8ede6fa19a07210c619 SHA256 6a0c53a8573411c18ed6f5dd79ce4807b72fb10bc5eb3a3a7f4641c57e4ddceb
AUX ssl.cnf 1042 RMD160 47d2542942fb21f4be1e827d47eb4e0468e73910 SHA1 7347bae5a195ad158881fe5313f55ee41e85cb81 SHA256 ed066f7720fd9f4c2d57ffb2ebcbc4b2810d2b7ca22b67ec8c1dc1227baaa635
DIST ejabberd-1.1.4.tar.gz 846059 RMD160 4c72548129b0196ff0096bd85936e0750fc4d7be SHA1 db6f521d45dece200de4eb6fc967c64728e8f6a3 SHA256 dcd61b72c522eee77ab56227b16d75fd5741efe2b9b9a8a1d3ed7eefc2a7e4f6
DIST ejabberd-2.0.1_2.tar.gz 1054739 RMD160 a5561a6c508bbb9846a351189ed5aad2f5fb65ee SHA1 7fbb21eb87206c1b40e5234927e2d6a20de66149 SHA256 a5335517a443e80dae4698a33423858201d699af18d2b53b279a2ad171916ad4
DIST ejabberd-2.0.2-beta1.tar.gz 1038475 RMD160 c76c299bb2da18ddc46a7893514e06cb0fd7ef1a SHA1 cc90b6f347ea6ccf114cfbd3e34614750da070ae SHA256 fda381dad8d0018224b767c3513b7b8700c983dd2400cfb8a2fb25803cf505c2
EBUILD ejabberd-1.1.4-r1.ebuild 3454 RMD160 b6f24b03584ad7ef7ea4e02961acbd29d3064a97 SHA1 38254b06eeb5eb87306718b39cde50e1c7990cca SHA256 4fb8f36dbca8d5f422e7b6a8a049af86c5d1c262f753453eeccd65a178ff109b
EBUILD ejabberd-2.0.1_p2-r1.ebuild 4888 RMD160 d3155ae40d18d431f047e4dc7d29dbc7a57b9bbc SHA1 bef8cc2ed73edd70ba01490b062ac5247afcfcef SHA256 5cfd96195106459e4d5f1675d7b8837b060e91b2d69163c778f7f18954bcad55
EBUILD ejabberd-2.0.2_beta1.ebuild 4832 RMD160 a0bc72aefca144ce54f6e755b005e4e33cd49ac2 SHA1 40bbbbf8e5a0f0c3ac72a8e80befbecf5fd73848 SHA256 315c464a6ddfb972e699e06f7e3525be49ad240ab1009ddd8e93d4864ef1b986
MISC ChangeLog 9947 RMD160 c39e6f956bd384a695147aea2fddadecd9b3c8e5 SHA1 a86ab27376a0e6b5ecc91a73fffb643ee1bbcb56 SHA256 50d2975e6fc76d19956b089205b6b830c1a0b8d548600af0ca40ed396d2b9881
MISC metadata.xml 619 RMD160 ca6e7f018d370ce36a3b93eb960254537260949c SHA1 404f3d0d31036ed1cfeb8aeee2264559c1d1c8d9 SHA256 843e1bbd5fdc082763e71322094170cde5b90d0f5d9320011c4b9872cd6589f4
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.9 (GNU/Linux)

iEYEARECAAYFAkiYhPwACgkQF6yMcaBxwHlzcQCdHW0M9YHI6l9TOHlTQ2Mh4SPc
PDUAoLHYp8Zu06CmFSZc3fN2HJzhgsHe
=p0X3
-----END PGP SIGNATURE-----

ejabberd-1.1.4-r1.ebuild

# 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-1.1.4-r1.ebuild,v 1.4 2008/02/22 14:58:22 caleb Exp $

inherit eutils multilib

JABBER_ETC="/etc/jabber"
JABBER_RUN="/var/run/jabber"
JABBER_SPOOL="/var/spool/jabber"
JABBER_LOG="/var/log/jabber"

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 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-10.2.0
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}/${P}/src

src_unpack() {
unpack ${A}
cd "${S}"

# Bug #171427
epatch "${FILESDIR}/${PV}-missing-declaration.patch"
# Bug 202114
epatch "${FILESDIR}/${P}-erlang-12.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 < "${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 < "${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}/${P}.initd" ${PN}
newconfd "${FILESDIR}/ejabberd-1.1.4.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
}

ejabberd-2.0.1_p2-r1.ebuild

# 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.1_p2-r1.ebuild,v 1.4 2008/07/27 22:51:49 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/_p2/}
MY_P=${PN}-${MY_PV}

DESCRIPTION="The Erlang Jabber Daemon"
HOMEPAGE="http://www.ejabberd.im/"
SRC_URI="http://process-one.net/en/projects/${PN}/download/${MY_PV}/${P/p/}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 ~ppc x86"
IUSE="debug mod_irc mod_muc mod_pubsub ldap odbc pam 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}/2.0.0-missing-declaration.patch"

# Bug #225565
epatch "${FILESDIR}/2.0.1-parallel-make.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) \
$(use_enable pam) \
|| 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}/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

# Pam helper module permissions
# http://www.process-one.net/docs/ejabberd/guide_en.html
if useq pam; then
chown root:jabber "${D}"/usr/lib/erlang/lib/${P}/priv/bin/epam
chmod 4750 "${D}"/usr/lib/erlang/lib/${P}/priv/bin/epam
fi

cd "${WORKDIR}/${MY_P}/doc"
dodoc "release_notes_${PV}.txt"
dohtml *.{html,png}

# set up /usr/sbin/ejabberd wrapper
cat "${FILESDIR}/ejabberd-wrapper-${MY_PV}.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-${MY_PV}.template" \
| sed -e "s/\@libdir\@/$(get_libdir)/g" -e "s/\@version\@/${PV}/g" \
> "${T}/ejabberdctl"
doexe "${T}/ejabberdctl"

dodir /var/lib/ejabberd
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'
elog ' # /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'
}

ejabberd-2.0.2_beta1.ebuild

# 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.2_beta1.ebuild,v 1.1 2008/08/03 16:19:05 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/_beta1/}
MY_P=${PN}-${MY_PV}

DESCRIPTION="The Erlang Jabber Daemon"
HOMEPAGE="http://www.ejabberd.im/"
SRC_URI="http://download.process-one.net/ejabberd/${MY_P}-beta1.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~ppc ~x86"
IUSE="debug mod_irc mod_muc mod_pubsub ldap odbc pam 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}-beta1/src

src_unpack() {
unpack ${A}
cd "${S}"

# Bug #171427
epatch "${FILESDIR}/2.0.0-missing-declaration.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) \
$(use_enable pam) \
|| 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}/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

# Pam helper module permissions
# http://www.process-one.net/docs/ejabberd/guide_en.html
if useq pam; then
chown root:jabber "${D}"/usr/lib/erlang/lib/${P}/priv/bin/epam
chmod 4750 "${D}"/usr/lib/erlang/lib/${P}/priv/bin/epam
fi

cd "${WORKDIR}/${MY_P}-beta1/doc"
dodoc "release_notes_${MY_PV}.txt"
dohtml *.{html,png}

# set up /usr/sbin/ejabberd wrapper
cat "${FILESDIR}/ejabberd-wrapper-${MY_PV}.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-${MY_PV}.template" \
| sed -e "s/\@libdir\@/$(get_libdir)/g" -e "s/\@version\@/${PV}/g" \
> "${T}/ejabberdctl"
doexe "${T}/ejabberdctl"

dodir /var/lib/ejabberd
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'
elog ' # /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'
}

files

metadata.xml





net-im

caleb@gentoo.org

Free and Open Source distributed fault-tolerant Jabber server. It's mostly written in Erlang, and works on many platforms.

Irc support in ejabberd
Multi user chat support in ejabberd
Pubsub support in ejabberd
Web support in ejabberd