1 |
commit: 2ec1a3c1c71aa48432ab6e6321568cad2db9439c |
2 |
Author: Hans de Graaff <hans <AT> degraaff <DOT> org> |
3 |
AuthorDate: Sun May 26 08:31:56 2013 +0000 |
4 |
Commit: Hans de Graaff <graaff <AT> gentoo <DOT> org> |
5 |
CommitDate: Sun May 26 08:31:56 2013 +0000 |
6 |
URL: http://git.overlays.gentoo.org/gitweb/?p=dev/graaff.git;a=commit;h=2ec1a3c1 |
7 |
|
8 |
Version bump with my LDAP-IPv6 patch. |
9 |
|
10 |
Package-Manager: portage-2.1.11.62 |
11 |
|
12 |
--- |
13 |
net-im/ejabberd/ChangeLog | 10 ++- |
14 |
net-im/ejabberd/Manifest | 12 +-- |
15 |
net-im/ejabberd/ejabberd-2.1.12-r1.ebuild | 216 +++++++++++++++++++++++++++++ |
16 |
3 files changed, 227 insertions(+), 11 deletions(-) |
17 |
|
18 |
diff --git a/net-im/ejabberd/ChangeLog b/net-im/ejabberd/ChangeLog |
19 |
index 89e4f2e..6725113 100644 |
20 |
--- a/net-im/ejabberd/ChangeLog |
21 |
+++ b/net-im/ejabberd/ChangeLog |
22 |
@@ -1,7 +1,15 @@ |
23 |
# ChangeLog for net-im/ejabberd |
24 |
-# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 |
25 |
+# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 |
26 |
# $Header: $ |
27 |
|
28 |
+ 26 May 2013; Hans de Graaff <graaff@g.o> +ejabberd-2.1.12-r1.ebuild: |
29 |
+ Version bump with my LDAP-IPv6 patch. |
30 |
+ |
31 |
+*ejabberd-2.1.12-r1 (19 May 2013) |
32 |
+ |
33 |
+ 19 May 2013; Hans de Graaff <graaff@g.o> +ejabberd-2.1.12-r1.ebuild: |
34 |
+ Version bump of my local version since LDAP IPv6 is not fixed upstream yet. |
35 |
+ |
36 |
30 Jul 2012; Hans de Graaff <graaff@g.o> +ejabberd-2.1.11-r1.ebuild, |
37 |
+files/ejabberd-2.1.11-ldap-ipv6.patch, +files/ejabberd-3.confd, |
38 |
+files/ejabberd-3.initd, +metadata.xml: |
39 |
|
40 |
diff --git a/net-im/ejabberd/Manifest b/net-im/ejabberd/Manifest |
41 |
index ad0d73f..5d0fe76 100644 |
42 |
--- a/net-im/ejabberd/Manifest |
43 |
+++ b/net-im/ejabberd/Manifest |
44 |
@@ -1,12 +1,4 @@ |
45 |
------BEGIN PGP SIGNED MESSAGE----- |
46 |
-Hash: SHA256 |
47 |
- |
48 |
DIST ejabberd-2.1.11.tgz 2014232 SHA256 91d5c10e64f9faa60c345c68304746f493d71f82723302955d40d6619e3d87de SHA512 6f09c80b03a84595294c679d49b5991985707f6c9e8c2f9fad94618224666e05b4325a5bef840d2ccf0c803038fc11b49b168716a3e258312216e201bdd4bb88 WHIRLPOOL 2ab09c84619173090acabf19cde10f14e3240fa6b89fb7d963bd79aca960b11a6f869f691d219c55b1b0a664c676afc800599671dfc923a0302d2075eec0e224 |
49 |
+DIST ejabberd-2.1.12.tgz 1999224 SHA256 38f0825346773c00c85a66b33586c75f2d191d1eb0ed8ae09fa17368d6ddfd19 SHA512 725ab9563a6c73e85b5115f66bac157cf9b1170913c1bfed7cf066408c6b3ac5b4bdba22c6c3ed1505391a7048a86ce3b59484f78264ab023612c539422278db WHIRLPOOL 3de3b103f69b8ead3d68cb70f3073808c40cd9541f0fd97aff7173f3ecabf6755295e1c30de83e67c844dc6886a5c2cb55a26980f4275cb32008e922591ae35a |
50 |
DIST ejabberd-mod_statsdx-1080.patch.gz 14024 SHA256 0f3a3a991c14d797e795ef4fffcf19aa9a54608f5053b759187ec7d3696b9edb |
51 |
------BEGIN PGP SIGNATURE----- |
52 |
-Version: GnuPG v2.0.19 (GNU/Linux) |
53 |
- |
54 |
-iF4EAREIAAYFAlAWxT8ACgkQiIP6VqMIqNffrwD8CQo1GCIJHHv+8+PVDLP6qjQy |
55 |
-s+fSygiYYoF7B++UydQA/2VoxryuRq6JV04WvV0+wlLm1ZNI8TDqsvMEZWIGfAo8 |
56 |
-=Jvnq |
57 |
------END PGP SIGNATURE----- |
58 |
+DIST ejabberd-mod_statsdx-1118.patch.gz 13989 SHA256 5e5d975e44248cf2b0d6dd0ecf4c477e8479b2b4d0bd531e80f4623fd787320e SHA512 99399323150990cda15e707385f0f26fa790d4ba188a97ac46daaaab9c25e72a7ec72a875573136f17a18648017074d76e4e267b544dc4c95a5101ed9ad6815d WHIRLPOOL 05997f03bb70136ee5e829ea9c55e3aeb0704150f1ed54f11c6cce382a82106129fc1a6ef35a62780837cd2b59fbb384fa10f3bb49813acaee8c5edc22ae3702 |
59 |
|
60 |
diff --git a/net-im/ejabberd/ejabberd-2.1.12-r1.ebuild b/net-im/ejabberd/ejabberd-2.1.12-r1.ebuild |
61 |
new file mode 100644 |
62 |
index 0000000..40dff03 |
63 |
--- /dev/null |
64 |
+++ b/net-im/ejabberd/ejabberd-2.1.12-r1.ebuild |
65 |
@@ -0,0 +1,216 @@ |
66 |
+# Copyright 1999-2013 Gentoo Foundation |
67 |
+# Distributed under the terms of the GNU General Public License v2 |
68 |
+# $Header: /var/cvsroot/gentoo-x86/net-im/ejabberd/ejabberd-2.1.12.ebuild,v 1.4 2013/05/14 09:42:10 ago Exp $ |
69 |
+ |
70 |
+EAPI=5 |
71 |
+ |
72 |
+inherit eutils multilib pam ssl-cert |
73 |
+ |
74 |
+DESCRIPTION="The Erlang Jabber Daemon" |
75 |
+HOMEPAGE="http://www.ejabberd.im/ https://github.com/processone/ejabberd/" |
76 |
+SRC_URI="http://www.process-one.net/downloads/${PN}/${PV}/${P}.tgz |
77 |
+ mod_statsdx? ( http://dev.gentoo.org/~radhermit/dist/${PN}-mod_statsdx-1118.patch.gz )" |
78 |
+ |
79 |
+LICENSE="GPL-2" |
80 |
+SLOT="0" |
81 |
+KEYWORDS="~amd64 ~arm ~ia64 ~ppc ~sparc ~x86" |
82 |
+EJABBERD_MODULES="mod_irc mod_muc mod_proxy65 mod_pubsub mod_statsdx" |
83 |
+IUSE="captcha debug ldap odbc pam +web zlib ${EJABBERD_MODULES}" |
84 |
+ |
85 |
+DEPEND=">=net-im/jabber-base-0.01 |
86 |
+ >=dev-libs/expat-1.95 |
87 |
+ >=dev-lang/erlang-12.2.5[ssl] |
88 |
+ odbc? ( dev-db/unixODBC ) |
89 |
+ ldap? ( =net-nds/openldap-2* ) |
90 |
+ >=dev-libs/openssl-0.9.8e |
91 |
+ captcha? ( media-gfx/imagemagick[truetype,png] ) |
92 |
+ zlib? ( sys-libs/zlib )" |
93 |
+#>=sys-apps/shadow-4.1.4.2-r3 - fixes bug in su that made ejabberdctl unworkable. |
94 |
+RDEPEND="${DEPEND} |
95 |
+ >=sys-apps/shadow-4.1.4.2-r3 |
96 |
+ pam? ( virtual/pam )" |
97 |
+ |
98 |
+S=${WORKDIR}/${P}/src |
99 |
+ |
100 |
+# paths in net-im/jabber-base |
101 |
+JABBER_ETC="${EPREFIX}/etc/jabber" |
102 |
+#JABBER_RUN="/var/run/jabber" |
103 |
+JABBER_SPOOL="${EPREFIX}/var/spool/jabber" |
104 |
+JABBER_LOG="${EPREFIX}/var/log/jabber" |
105 |
+JABBER_DOC="${EPREFIX}/usr/share/doc/${PF}" |
106 |
+ |
107 |
+src_prepare() { |
108 |
+ epatch "${FILESDIR}"/${PN}-2.1.11-ldap-ipv6.patch |
109 |
+ |
110 |
+ if use mod_statsdx; then |
111 |
+ ewarn "mod_statsdx is not a part of upstream tarball but is a third-party module" |
112 |
+ ewarn "taken from here: http://www.ejabberd.im/mod_stats2file" |
113 |
+ EPATCH_OPTS="-p2" epatch "${WORKDIR}"/${PN}-mod_statsdx-1118.patch |
114 |
+ fi |
115 |
+ |
116 |
+ # don't install release notes (we'll do this manually) |
117 |
+ sed '/install .* [.][.]\/doc\/[*][.]txt $(DOCDIR)/d' -i Makefile.in || die |
118 |
+ # Set correct paths |
119 |
+ sed -e "/^EJABBERDDIR[[:space:]]*=/{s:ejabberd:${PF}:}" \ |
120 |
+ -e "/^ETCDIR[[:space:]]*=/{s:@sysconfdir@/ejabberd:${JABBER_ETC}:}" \ |
121 |
+ -e "/^LOGDIR[[:space:]]*=/{s:@localstatedir@/log/ejabberd:${JABBER_LOG}:}" \ |
122 |
+ -e "/^SPOOLDIR[[:space:]]*=/{s:@localstatedir@/lib/ejabberd:${JABBER_SPOOL}:}" \ |
123 |
+ -i Makefile.in || die |
124 |
+ sed -e "/EJABBERDDIR=/{s:ejabberd:${PF}:}" \ |
125 |
+ -e "s|\(ETCDIR=\)@SYSCONFDIR@.*|\1${JABBER_ETC}|" \ |
126 |
+ -e "s|\(LOGS_DIR=\)@LOCALSTATEDIR@.*|\1${JABBER_LOG}|" \ |
127 |
+ -e "s|\(SPOOLDIR=\)@LOCALSTATEDIR@.*|\1${JABBER_SPOOL}|" \ |
128 |
+ -i ejabberdctl.template || die |
129 |
+ |
130 |
+ # Set shell, so it'll work even in case jabber user have no shell |
131 |
+ # This is gentoo specific I guess since other distributions may have |
132 |
+ # ejabberd user with reall shell, while we share this user among different |
133 |
+ # jabberd implementations. |
134 |
+ sed '/^HOME/aSHELL=/bin/sh' -i ejabberdctl.template || die |
135 |
+ sed '/^export HOME/aexport SHELL' -i ejabberdctl.template || die |
136 |
+ |
137 |
+ #sed -e "s:/share/doc/ejabberd/:${JABBER_DOC}:" -i web/ejabberd_web_admin.erl |
138 |
+ |
139 |
+ # fix up the ssl cert paths in ejabberd.cfg to use our cert |
140 |
+ sed -e "s:/path/to/ssl.pem:/etc/ssl/ejabberd/server.pem:g" \ |
141 |
+ -i ejabberd.cfg.example || die "Failed sed ejabberd.cfg.example" |
142 |
+ |
143 |
+ # correct path to captcha script in default ejabberd.cfg |
144 |
+ sed -e 's|\({captcha_cmd,[[:space:]]*"\).\+"}|\1/usr/'$(get_libdir)'/erlang/lib/'${P}'/priv/bin/captcha.sh"}|' \ |
145 |
+ -i ejabberd.cfg.example || die "Failed sed ejabberd.cfg.example" |
146 |
+ |
147 |
+ # disable mod_irc in ejabberd.cfg |
148 |
+ if ! use mod_irc; then |
149 |
+ sed -i -e "s/{mod_irc,/%{mod_irc,/" \ |
150 |
+ -i ejabberd.cfg.example || die "Failed to disable mod_irc" |
151 |
+ fi |
152 |
+ |
153 |
+} |
154 |
+ |
155 |
+src_configure() { |
156 |
+ econf \ |
157 |
+ --docdir="${EPREFIX}/usr/share/doc/${PF}/html" \ |
158 |
+ --libdir="${EPREFIX}/usr/$(get_libdir)/erlang/lib/" \ |
159 |
+ $(use_enable mod_irc) \ |
160 |
+ $(use_enable ldap eldap) \ |
161 |
+ $(use_enable mod_muc) \ |
162 |
+ $(use_enable mod_proxy65) \ |
163 |
+ $(use_enable mod_pubsub) \ |
164 |
+ $(use_enable web) \ |
165 |
+ $(use_enable odbc) \ |
166 |
+ $(use_enable zlib ejabberd_zlib) \ |
167 |
+ $(use_enable pam) \ |
168 |
+ --enable-user=jabber |
169 |
+} |
170 |
+ |
171 |
+src_compile() { |
172 |
+ emake $(use debug && echo debug=true ejabberd_debug=true) |
173 |
+} |
174 |
+ |
175 |
+src_install() { |
176 |
+ default |
177 |
+ |
178 |
+ # Pam helper module permissions |
179 |
+ # http://www.process-one.net/docs/ejabberd/guide_en.html |
180 |
+ if use pam; then |
181 |
+ pamd_mimic_system xmpp auth account || die "Cannot create pam.d file" |
182 |
+ fowners root:jabber "/usr/$(get_libdir)/erlang/lib/${PF}/priv/bin/epam" |
183 |
+ fperms 4750 "/usr/$(get_libdir)/erlang/lib/${PF}/priv/bin/epam" |
184 |
+ fi |
185 |
+ |
186 |
+ cd "${WORKDIR}/${P}/doc" |
187 |
+ dodoc "release_notes_${PV%%_rc*}.txt" |
188 |
+ |
189 |
+ #dodir /var/lib/ejabberd |
190 |
+ newinitd "${FILESDIR}/${PN}-3.initd" ${PN} |
191 |
+ newconfd "${FILESDIR}/${PN}-3.confd" ${PN} |
192 |
+} |
193 |
+ |
194 |
+pkg_postinst() { |
195 |
+ elog "For configuration instructions, please see" |
196 |
+ elog "/usr/share/doc/${PF}/html/guide.html, or the online version at" |
197 |
+ elog "http://www.process-one.net/en/ejabberd/docs/guide_en/" |
198 |
+ |
199 |
+ if ! use web ; then |
200 |
+ ewarn |
201 |
+ ewarn "The web USE flag is off, this has disabled the web admin interface." |
202 |
+ ewarn |
203 |
+ fi |
204 |
+ |
205 |
+ elog |
206 |
+ elog '====================================================================' |
207 |
+ elog 'Quick Start Guide:' |
208 |
+ elog '1) Add output of `hostname -f` to /etc/jabber/ejabberd.cfg line 91' |
209 |
+ elog ' {hosts, ["localhost", "thehost"]}.' |
210 |
+ elog '2) Add an admin user to /etc/jabber/ejabberd.cfg line 360' |
211 |
+ elog ' {acl, admin, {user, "theadmin", "thehost"}}.' |
212 |
+ elog '3) Start the server' |
213 |
+ elog ' # /etc/init.d/ejabberd start' |
214 |
+ elog '4) Register the admin user' |
215 |
+ elog ' # /usr/sbin/ejabberdctl register theadmin thehost thepassword' |
216 |
+ elog '5) Log in with your favourite jabber client or using the web admin' |
217 |
+ |
218 |
+ # Upgrading from ejabberd-2.0.x: |
219 |
+ if grep -E '^[^#]*EJABBERD_NODE=' "${EROOT}/etc/conf.d/ejabberd" >/dev/null 2>&1; then |
220 |
+ source "${EROOT}/etc/conf.d/ejabberd" |
221 |
+ ewarn |
222 |
+ ewarn "!!! WARNING !!! WARNING !!! WARNING !!! WARNING !!!" |
223 |
+ ewarn "Starting with 2.1.x some paths and configuration files were" |
224 |
+ ewarn "changed to reflect upstream intentions better. Notable changes are:" |
225 |
+ ewarn |
226 |
+ ewarn "1. Everything (even init scripts) is now handled with ejabberdctl script." |
227 |
+ ewarn "Thus main configuration file became /etc/jabberd/ejabberdctl.cfg" |
228 |
+ ewarn "You must update ERLANG_NODE there with the value of EJABBERD_NODE" |
229 |
+ ewarn "from /etc/conf.d/ejebberd or ejabberd will refuse to start." |
230 |
+ ewarn |
231 |
+ ewarn "2. SSL certificate is now generated with ssl-cert eclass and resides" |
232 |
+ ewarn "at standard location: /etc/ssl/ejabberd/server.pem." |
233 |
+ ewarn |
234 |
+ ewarn "3. Cookie now resides at /var/spool/jabber/.erlang.cookie" |
235 |
+ ewarn |
236 |
+ ewarn "4. /var/log/jabber/sasl.log is now /var/log/jabber/erlang.log" |
237 |
+ ewarn |
238 |
+ ewarn "5. Crash dumps (if any) will be located at /var/log/jabber" |
239 |
+ |
240 |
+ local i ctlcfg new_ctlcfg |
241 |
+ i=0 |
242 |
+ ctlcfg=${EROOT}/etc/jabber/ejabberdctl.cfg |
243 |
+ while :; do |
244 |
+ new_ctlcfg=$(printf "${EROOT}/etc/jabber/._cfg%04d_ejabberdctl.cfg" ${i}) |
245 |
+ [[ ! -e ${new_ctlcfg} ]] && break |
246 |
+ ctlcfg=${new_ctlcfg} |
247 |
+ ((i++)) |
248 |
+ done |
249 |
+ |
250 |
+ ewarn |
251 |
+ ewarn "Updating ${ctlcfg} (debug: ${new_ctlcfg})" |
252 |
+ sed -e "/#ERLANG_NODE=/aERLANG_NODE=$EJABBERD_NODE" "${ctlcfg}" > "${new_ctlcfg}" || die |
253 |
+ |
254 |
+ if [[ -e ${EROOT}/var/run/jabber/.erlang.cookie ]]; then |
255 |
+ ewarn "Moving .erlang.cookie..." |
256 |
+ if [[ -e ${EROOT}/var/spool/jabber/.erlang.cookie ]]; then |
257 |
+ mv -v "${EROOT}"/var/spool/jabber/.erlang.cookie{,bak} |
258 |
+ fi |
259 |
+ mv -v "${EROOT}"/var/{run/jabber,spool/jabber}/.erlang.cookie |
260 |
+ fi |
261 |
+ ewarn |
262 |
+ ewarn "We'll try to handle upgrade automagically but, please, do your" |
263 |
+ ewarn "own checks and do not forget to run 'etc-update'!" |
264 |
+ ewarn "PLEASE! Run 'etc-update' now!" |
265 |
+ fi |
266 |
+ |
267 |
+ SSL_ORGANIZATION="${SSL_ORGANIZATION:-Ejabberd XMPP Server}" |
268 |
+ install_cert /etc/ssl/ejabberd/server |
269 |
+ # Fix ssl cert permissions bug #369809 |
270 |
+ chown root:jabber "${EROOT}/etc/ssl/ejabberd/server.pem" |
271 |
+ chmod 0440 "${EROOT}/etc/ssl/ejabberd/server.pem" |
272 |
+ if [[ -e ${EROOT}/etc/jabber/ssl.pem ]]; then |
273 |
+ ewarn |
274 |
+ ewarn "The location of SSL certificates has changed. If you are" |
275 |
+ ewarn "upgrading from ${CATEGORY}/${PN}-2.0.5* or earlier you might" |
276 |
+ ewarn "want to move your old certificates from /etc/jabber into" |
277 |
+ ewarn "/etc/ssl/ejabberd/, update config files and" |
278 |
+ ewarn "rm /etc/jabber/ssl.pem to avoid this message." |
279 |
+ ewarn |
280 |
+ fi |
281 |
+} |