Gentoo Archives: gentoo-commits

From: "Eray Aslan (eras)" <eras@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in net-mail/dovecot: dovecot-2.2.15-r1.ebuild ChangeLog
Date: Fri, 31 Oct 2014 07:07:32
Message-Id: 20141031070728.CB0F69202@oystercatcher.gentoo.org
1 eras 14/10/31 07:07:28
2
3 Modified: ChangeLog
4 Added: dovecot-2.2.15-r1.ebuild
5 Log:
6 Pigeonhole version bump
7
8 (Portage version: 2.2.14/cvs/Linux x86_64, signed Manifest commit with key 0x77F1F175586A3B1F)
9
10 Revision Changes Path
11 1.494 net-mail/dovecot/ChangeLog
12
13 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-mail/dovecot/ChangeLog?rev=1.494&view=markup
14 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-mail/dovecot/ChangeLog?rev=1.494&content-type=text/plain
15 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-mail/dovecot/ChangeLog?r1=1.493&r2=1.494
16
17 Index: ChangeLog
18 ===================================================================
19 RCS file: /var/cvsroot/gentoo-x86/net-mail/dovecot/ChangeLog,v
20 retrieving revision 1.493
21 retrieving revision 1.494
22 diff -u -r1.493 -r1.494
23 --- ChangeLog 28 Oct 2014 13:33:58 -0000 1.493
24 +++ ChangeLog 31 Oct 2014 07:07:28 -0000 1.494
25 @@ -1,6 +1,12 @@
26 # ChangeLog for net-mail/dovecot
27 # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
28 -# $Header: /var/cvsroot/gentoo-x86/net-mail/dovecot/ChangeLog,v 1.493 2014/10/28 13:33:58 eras Exp $
29 +# $Header: /var/cvsroot/gentoo-x86/net-mail/dovecot/ChangeLog,v 1.494 2014/10/31 07:07:28 eras Exp $
30 +
31 +*dovecot-2.2.15-r1 (31 Oct 2014)
32 +
33 + 31 Oct 2014; Eray Aslan <eras@g.o> +dovecot-2.2.15-r1.ebuild,
34 + +files/dovecot-pigeonhole-0.4.5.patch:
35 + Pigeonhole version bump
36
37 *dovecot-2.2.15 (28 Oct 2014)
38 *dovecot-2.2.14-r1 (28 Oct 2014)
39
40
41
42 1.1 net-mail/dovecot/dovecot-2.2.15-r1.ebuild
43
44 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-mail/dovecot/dovecot-2.2.15-r1.ebuild?rev=1.1&view=markup
45 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-mail/dovecot/dovecot-2.2.15-r1.ebuild?rev=1.1&content-type=text/plain
46
47 Index: dovecot-2.2.15-r1.ebuild
48 ===================================================================
49 # Copyright 1999-2014 Gentoo Foundation
50 # Distributed under the terms of the GNU General Public License v2
51 # $Header: /var/cvsroot/gentoo-x86/net-mail/dovecot/dovecot-2.2.15-r1.ebuild,v 1.1 2014/10/31 07:07:28 eras Exp $
52
53 EAPI=5
54 inherit autotools eutils multilib ssl-cert systemd user versionator
55
56 MY_P="${P/_/.}"
57 major_minor="$(get_version_component_range 1-2)"
58 sieve_version="0.4.5"
59 if [[ ${PV} == *_rc* ]] ; then
60 rc_dir="rc/"
61 else
62 rc_dir=""
63 fi
64 SRC_URI="http://dovecot.org/releases/${major_minor}/${rc_dir}${MY_P}.tar.gz
65 sieve? (
66 http://pigeonhole.dovecot.org/releases/${major_minor}/${PN}-${major_minor}-pigeonhole-${sieve_version}.tar.gz
67 )
68 managesieve? (
69 http://pigeonhole.dovecot.org/releases/${major_minor}/${PN}-${major_minor}-pigeonhole-${sieve_version}.tar.gz
70 ) "
71 DESCRIPTION="An IMAP and POP3 server written with security primarily in mind"
72 HOMEPAGE="http://www.dovecot.org/"
73
74 SLOT="0"
75 LICENSE="LGPL-2.1 MIT"
76 KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~x86"
77
78 IUSE_DOVECOT_AUTH="kerberos ldap mysql pam postgres sqlite vpopmail"
79 IUSE_DOVECOT_STORAGE="cydir imapc +maildir mbox mdbox pop3c sdbox"
80 IUSE_DOVECOT_COMPRESS="bzip2 lzma lz4 zlib"
81 IUSE_DOVECOT_OTHER="caps doc ipv6 lucene managesieve selinux sieve solr +ssl static-libs suid tcpd"
82
83 IUSE="${IUSE_DOVECOT_AUTH} ${IUSE_DOVECOT_STORAGE} ${IUSE_DOVECOT_COMPRESS} ${IUSE_DOVECOT_OTHER}"
84
85 DEPEND="bzip2? ( app-arch/bzip2 )
86 caps? ( sys-libs/libcap )
87 kerberos? ( virtual/krb5 )
88 ldap? ( net-nds/openldap )
89 lucene? ( >=dev-cpp/clucene-2.3 )
90 lzma? ( app-arch/xz-utils )
91 lz4? ( app-arch/lz4 )
92 mysql? ( virtual/mysql )
93 pam? ( virtual/pam )
94 postgres? ( dev-db/postgresql-base !dev-db/postgresql-base[ldap,threads] )
95 selinux? ( sec-policy/selinux-dovecot )
96 solr? ( net-misc/curl dev-libs/expat )
97 sqlite? ( dev-db/sqlite )
98 ssl? ( dev-libs/openssl )
99 tcpd? ( sys-apps/tcp-wrappers )
100 vpopmail? ( net-mail/vpopmail )
101 zlib? ( sys-libs/zlib )
102 virtual/libiconv"
103
104 RDEPEND="${DEPEND}
105 net-mail/mailbase"
106
107 S=${WORKDIR}/${MY_P}
108
109 pkg_setup() {
110 if use managesieve && ! use sieve; then
111 ewarn "managesieve USE flag selected but sieve USE flag unselected"
112 ewarn "sieve USE flag will be turned on"
113 fi
114 # default internal user
115 enewgroup dovecot 97
116 enewuser dovecot 97 -1 /dev/null dovecot
117 # default login user
118 enewuser dovenull -1 -1 /dev/null
119 # add "mail" group for suid'ing. Better security isolation.
120 if use suid; then
121 enewgroup mail
122 fi
123 }
124
125 src_prepare() {
126 epatch "${FILESDIR}/${PN}-10-ssl.patch"
127
128 epatch_user
129
130 if use sieve || use managesieve; then
131 cd "../dovecot-${major_minor}-pigeonhole-${sieve_version}" || die "cd failed"
132 epatch "${FILESDIR}/${PN}-pigeonhole-0.4.5.patch"
133 eautoreconf
134 fi
135 }
136
137 src_configure() {
138 local conf=""
139
140 if use postgres || use mysql || use sqlite; then
141 conf="${conf} --with-sql"
142 fi
143
144 local storages=""
145 for storage in ${IUSE_DOVECOT_STORAGE//+/}; do
146 use ${storage} && storages="${storage} ${storages}"
147 done
148 [ "${storages}" ] || storages="maildir"
149
150 # turn valgrind tests off. Bug #340791
151 VALGRIND=no econf \
152 --localstatedir="${EPREFIX}/var" \
153 --with-moduledir="${EPREFIX}/usr/$(get_libdir)/dovecot" \
154 --without-stemmer \
155 --with-storages="${storages}" \
156 --disable-rpath \
157 $( systemd_with_unitdir ) \
158 $( use_with bzip2 bzlib ) \
159 $( use_with caps libcap ) \
160 $( use_with kerberos gssapi ) \
161 $( use_with ldap ) \
162 $( use_with lucene ) \
163 $( use_with mysql ) \
164 $( use_with pam ) \
165 $( use_with postgres pgsql ) \
166 $( use_with sqlite ) \
167 $( use_with solr ) \
168 $( use_with ssl ) \
169 $( use_with tcpd libwrap ) \
170 $( use_with vpopmail ) \
171 $( use_with zlib ) \
172 $( use_enable static-libs static ) \
173 ${conf}
174
175 if use sieve || use managesieve ; then
176 # The sieve plugin needs this file to be build to determine the plugin
177 # directory and the list of libraries to link to.
178 emake dovecot-config
179 cd "../dovecot-${major_minor}-pigeonhole-${sieve_version}" || die "cd failed"
180 econf \
181 $( use_enable static-libs static ) \
182 --localstatedir="${EPREFIX}/var" \
183 --enable-shared \
184 --with-dovecot="../${MY_P}" \
185 $( use_with managesieve )
186 fi
187 }
188
189 src_compile() {
190 default
191 if use sieve || use managesieve ; then
192 cd "../dovecot-${major_minor}-pigeonhole-${sieve_version}" || die "cd failed"
193 emake CC="$(tc-getCC)" CFLAGS="${CFLAGS}"
194 fi
195 }
196
197 src_test() {
198 default
199 if use sieve || use managesieve ; then
200 cd "../dovecot-${major_minor}-pigeonhole-${sieve_version}" || die "cd failed"
201 default
202 fi
203 }
204
205 src_install () {
206 default
207
208 # insecure:
209 # use suid && fperms u+s /usr/libexec/dovecot/deliver
210 # better:
211 if use suid;then
212 einfo "Changing perms to allow deliver to be suided"
213 fowners root:mail "${EPREFIX}/usr/libexec/dovecot/dovecot-lda"
214 fperms 4750 "${EPREFIX}/usr/libexec/dovecot/dovecot-lda"
215 fi
216
217 newinitd "${FILESDIR}"/dovecot.init-r4 dovecot
218
219 rm -rf "${ED}"/usr/share/doc/dovecot
220
221 dodoc AUTHORS NEWS README TODO
222 dodoc doc/*.{txt,cnf,xml,sh}
223 docinto example-config
224 dodoc doc/example-config/*.{conf,ext}
225 docinto example-config/conf.d
226 dodoc doc/example-config/conf.d/*.{conf,ext}
227 docinto wiki
228 dodoc doc/wiki/*
229 doman doc/man/*.{1,7}
230
231 # Create the dovecot.conf file from the dovecot-example.conf file that
232 # the dovecot folks nicely left for us....
233 local conf="${ED}/etc/dovecot/dovecot.conf"
234 local confd="${ED}/etc/dovecot/conf.d"
235
236 insinto /etc/dovecot
237 doins doc/example-config/*.{conf,ext}
238 insinto /etc/dovecot/conf.d
239 doins doc/example-config/conf.d/*.{conf,ext}
240 fperms 0600 "${EPREFIX}"/etc/dovecot/dovecot-{ldap,sql}.conf.ext
241 rm -f "${confd}/../README"
242
243 # .maildir is the Gentoo default
244 local mail_location="maildir:~/.maildir"
245 if ! use maildir; then
246 if use mbox; then
247 mail_location="mbox:/var/spool/mail/%u:INDEX=/var/dovecot/%u"
248 keepdir /var/dovecot
249 sed -i -e 's|#mail_privileged_group =|mail_privileged_group = mail|' \
250 "${confd}/10-mail.conf" || die "sed failed"
251 elif use mdbox ; then
252 mail_location="mdbox:~/.mdbox"
253 elif use sdbox ; then
254 mail_location="sdbox:~/.sdbox"
255 fi
256 fi
257 sed -i -e \
258 "s|#mail_location =|mail_location = ${mail_location}|" \
259 "${confd}/10-mail.conf" \
260 || die "failed to update mail location settings in 10-mail.conf"
261
262 # We're using pam files (imap and pop3) provided by mailbase
263 if use pam; then
264 sed -i -e '/driver = pam/,/^[ \t]*}/ s|#args = dovecot|args = "\*"|' \
265 "${confd}/auth-system.conf.ext" \
266 || die "failed to update PAM settings in auth-system.conf.ext"
267 # mailbase does not provide a sieve pam file
268 use managesieve && dosym imap /etc/pam.d/sieve
269 sed -i -e \
270 's/#!include auth-system.conf.ext/!include auth-system.conf.ext/' \
271 "${confd}/10-auth.conf" \
272 || die "failed to update PAM settings in 10-auth.conf"
273 fi
274
275 # Disable ipv6 if necessary
276 if ! use ipv6; then
277 sed -i -e 's/^#listen = \*, ::/listen = \*/g' "${conf}" \
278 || die "failed to update listen settings in dovecot.conf"
279 fi
280
281 # Update ssl cert locations
282 if use ssl; then
283 sed -i -e 's:^#ssl = yes:ssl = yes:' "${confd}/10-ssl.conf" \
284 || die "ssl conf failed"
285 sed -i -e 's:^ssl_cert =.*:ssl_cert = </etc/ssl/dovecot/server.pem:' \
286 -e 's:^ssl_key =.*:ssl_key = </etc/ssl/dovecot/server.key:' \
287 "${confd}/10-ssl.conf" || die "failed to update SSL settings in 10-ssl.conf"
288 fi
289
290 # Install SQL configuration
291 if use mysql || use postgres; then
292 sed -i -e \
293 's/#!include auth-sql.conf.ext/!include auth-sql.conf.ext/' \
294 "${confd}/10-auth.conf" || die "failed to update SQL settings in \
295 10-auth.conf"
296 fi
297
298 # Install LDAP configuration
299 if use ldap; then
300 sed -i -e \
301 's/#!include auth-ldap.conf.ext/!include auth-ldap.conf.ext/' \
302 "${confd}/10-auth.conf" \
303 || die "failed to update ldap settings in 10-auth.conf"
304 fi
305
306 if use vpopmail; then
307 sed -i -e \
308 's/#!include auth-vpopmail.conf.ext/!include auth-vpopmail.conf.ext/' \
309 "${confd}/10-auth.conf" \
310 || die "failed to update vpopmail settings in 10-auth.conf"
311 fi
312
313 if use sieve || use managesieve ; then
314 cd "../dovecot-${major_minor}-pigeonhole-${sieve_version}" || die "cd failed"
315 emake DESTDIR="${ED}" install
316 sed -i -e \
317 's/^[[:space:]]*#mail_plugins = $mail_plugins/mail_plugins = sieve/' "${confd}/15-lda.conf" \
318 || die "failed to update sieve settings in 15-lda.conf"
319 rm -rf "${ED}"/usr/share/doc/dovecot
320 dodoc doc/*.txt
321 docinto example-config/conf.d
322 dodoc doc/example-config/conf.d/*.conf
323 insinto /etc/dovecot/conf.d
324 doins doc/example-config/conf.d/90-sieve{,-extprograms}.conf
325 use managesieve && doins doc/example-config/conf.d/20-managesieve.conf
326 docinto sieve/rfc
327 dodoc doc/rfc/*.txt
328 docinto sieve/devel
329 dodoc doc/devel/DESIGN
330 doman doc/man/*.{1,7}
331 fi
332
333 use static-libs || find "${ED}"/usr/lib* -name '*.la' -delete
334 }
335
336 pkg_postinst() {
337 if use ssl; then
338 # Let's not make a new certificate if we already have one
339 if ! [[ -e "${ROOT}"/etc/ssl/dovecot/server.pem && \
340 -e "${ROOT}"/etc/ssl/dovecot/server.key ]]; then
341 einfo "Creating SSL certificate"
342 SSL_ORGANIZATION="${SSL_ORGANIZATION:-Dovecot IMAP Server}"
343 install_cert /etc/ssl/dovecot/server
344 fi
345 fi
346
347 elog "Please read http://wiki2.dovecot.org/Upgrading/ for upgrade notes."
348 }