Gentoo Archives: gentoo-commits

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