Gentoo Archives: gentoo-commits

From: "Patrick Lauer (patrick)" <patrick@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in net-mail/dovecot: ChangeLog dovecot-1.2.10.ebuild
Date: Tue, 26 Jan 2010 20:10:38
Message-Id: E1NZrkC-0000jm-G4@stork.gentoo.org
1 patrick 10/01/26 20:10:36
2
3 Modified: ChangeLog
4 Added: dovecot-1.2.10.ebuild
5 Log:
6 Bump
7 (Portage version: 2.2_rc61/cvs/Linux x86_64)
8
9 Revision Changes Path
10 1.229 net-mail/dovecot/ChangeLog
11
12 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/net-mail/dovecot/ChangeLog?rev=1.229&view=markup
13 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/net-mail/dovecot/ChangeLog?rev=1.229&content-type=text/plain
14 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/net-mail/dovecot/ChangeLog?r1=1.228&r2=1.229
15
16 Index: ChangeLog
17 ===================================================================
18 RCS file: /var/cvsroot/gentoo-x86/net-mail/dovecot/ChangeLog,v
19 retrieving revision 1.228
20 retrieving revision 1.229
21 diff -u -r1.228 -r1.229
22 --- ChangeLog 26 Jan 2010 20:01:23 -0000 1.228
23 +++ ChangeLog 26 Jan 2010 20:10:36 -0000 1.229
24 @@ -1,6 +1,11 @@
25 # ChangeLog for net-mail/dovecot
26 # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
27 -# $Header: /var/cvsroot/gentoo-x86/net-mail/dovecot/ChangeLog,v 1.228 2010/01/26 20:01:23 patrick Exp $
28 +# $Header: /var/cvsroot/gentoo-x86/net-mail/dovecot/ChangeLog,v 1.229 2010/01/26 20:10:36 patrick Exp $
29 +
30 +*dovecot-1.2.10 (26 Jan 2010)
31 +
32 + 26 Jan 2010; Patrick Lauer <patrick@g.o> +dovecot-1.2.10.ebuild:
33 + Bump
34
35 *dovecot-1.2.9-r1 (26 Jan 2010)
36
37
38
39
40 1.1 net-mail/dovecot/dovecot-1.2.10.ebuild
41
42 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/net-mail/dovecot/dovecot-1.2.10.ebuild?rev=1.1&view=markup
43 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/net-mail/dovecot/dovecot-1.2.10.ebuild?rev=1.1&content-type=text/plain
44
45 Index: dovecot-1.2.10.ebuild
46 ===================================================================
47 # Copyright 1999-2010 Gentoo Foundation
48 # Distributed under the terms of the GNU General Public License v2
49 # $Header: /var/cvsroot/gentoo-x86/net-mail/dovecot/dovecot-1.2.10.ebuild,v 1.1 2010/01/26 20:10:36 patrick Exp $
50
51 EAPI="2"
52
53 inherit eutils versionator
54
55 major_minor="$( get_version_component_range 1-2 )"
56 sieve_version="0.1.14"
57 managesieve_version="0.11.10"
58 SRC_URI="http://dovecot.org/releases/${major_minor}/${P}.tar.gz
59 sieve? ( http://www.rename-it.nl/dovecot/${major_minor}/dovecot-${major_minor}-sieve-${sieve_version}.tar.gz )
60 managesieve? (
61 http://www.rename-it.nl/dovecot/${major_minor}/dovecot-1.2.9-managesieve-${managesieve_version}.diff.gz
62 http://www.rename-it.nl/dovecot/${major_minor}/dovecot-${major_minor}-managesieve-${managesieve_version}.tar.gz
63 )"
64 DESCRIPTION="An IMAP and POP3 server written with security primarily in mind"
65 HOMEPAGE="http://www.dovecot.org/"
66
67 SLOT="0"
68 LICENSE="LGPL-2.1" # MIT too?
69 KEYWORDS="~alpha ~amd64 ~sparc ~x86"
70
71 IUSE="berkdb bzip2 caps cydir dbox doc ipv6 kerberos ldap +maildir managesieve mbox mysql pam postgres sieve sqlite +ssl suid vpopmail zlib"
72
73 DEPEND="berkdb? ( sys-libs/db )
74 caps? ( sys-libs/libcap )
75 kerberos? ( virtual/krb5 )
76 ldap? ( net-nds/openldap )
77 mysql? ( virtual/mysql )
78 pam? ( virtual/pam )
79 postgres? ( virtual/postgresql-base )
80 sqlite? ( dev-db/sqlite )
81 ssl? ( dev-libs/openssl )
82 vpopmail? ( net-mail/vpopmail )"
83
84 RDEPEND="${DEPEND}
85 >=net-mail/mailbase-0.00-r8"
86
87 pkg_setup() {
88 if use managesieve && ! use sieve; then
89 eerror "managesieve USE flag selected but sieve USE flag unselected"
90 die "USE flag problem"
91 fi
92
93 if use dbox && ! use maildir; then
94 eerror "dbox USE flag needs maildir USE flag enabled"
95 die "USE flag problem"
96 fi
97
98 # Add user and group for login process (same as for fedora/redhat)
99 enewgroup dovecot 97
100 enewuser dovecot 97 -1 /dev/null dovecot
101 # add "mail" group for suid'ing. Better security isolation.
102 if use suid; then
103 enewgroup mail
104 fi
105 }
106
107 src_prepare() {
108 use managesieve && epatch "${WORKDIR}"/dovecot-1.2.7-managesieve-${managesieve_version}.diff
109 }
110
111 src_configure() {
112 local conf=""
113
114 if use postgres || use mysql || use sqlite; then
115 conf="${conf} --with-sql"
116 fi
117
118 local storages=""
119 for storage in cydir dbox maildir mbox; do
120 use ${storage} && storages="${storage} ${storages}"
121 done
122 [ "${storages}" ] || storages="maildir"
123
124 econf \
125 --sysconfdir=/etc/dovecot \
126 --localstatedir=/var \
127 --with-moduledir="/usr/$( get_libdir )/dovecot" \
128 $( use_with berkdb db ) \
129 $( use_with bzip2 bzlib ) \
130 $( use_with caps libcap ) \
131 $( use_with kerberos gssapi ) \
132 $( use_with ldap ) \
133 $( use_with mysql ) \
134 $( use_with pam ) \
135 $( use_with postgres pgsql ) \
136 $( use_with sqlite ) \
137 $( use_with ssl ) \
138 $( use_with vpopmail ) \
139 $( use_with zlib ) \
140 $( use_with ldap) \
141 --with-storages="${storages}" \
142 --with-pic \
143 --enable-header-install \
144 ${conf}
145
146 if use sieve; then
147 # The sieve plugin needs this file to be build to determine the plugin
148 # directory and the list of libraries to link to.
149 emake dovecot-config || die "emake dovecot-config failed"
150 cd "../dovecot-${major_minor}-sieve-${sieve_version}"
151 econf --with-dovecot="${S}"
152
153 if use managesieve; then
154 cd "../dovecot-${major_minor}-managesieve-${managesieve_version}"
155 econf --with-dovecot="${S}" --with-dovecot-sieve="../dovecot-${major_minor}-sieve-${sieve_version}"
156 fi
157 fi
158 }
159
160 src_compile() {
161 emake CC="$(tc-getCC)" CFLAGS="${CFLAGS}" || die "make failed"
162
163 if use sieve; then
164 cd "../dovecot-${major_minor}-sieve-${sieve_version}"
165 emake CC="$(tc-getCC)" CFLAGS="${CFLAGS}" || die "make failed"
166
167 if use managesieve; then
168 cd "../dovecot-${major_minor}-managesieve-${managesieve_version}"
169 emake CC="$(tc-getCC)" CFLAGS="${CFLAGS}" || die "make failed"
170 fi
171 fi
172 }
173
174 src_install () {
175 emake DESTDIR="${D}" install || die "make install failed"
176
177 # insecure:
178 #use suid && fperms u+s /usr/libexec/dovecot/deliver
179 #better:
180 if use suid;then
181 einfo "Changing perms to allow deliver to be suided"
182 fowners root:mail /usr/libexec/dovecot/deliver
183 fperms 4750 /usr/libexec/dovecot/deliver
184 fi
185
186 rm -f "${D}"/etc/dovecot/dovecot-{ldap,sql}-example.conf
187
188 newinitd "${FILESDIR}"/dovecot.init-r2 dovecot
189
190 rm -rf "${D}"/usr/share/doc/dovecot
191
192 if use ssl; then
193 sed -i -e 's,^CERTDIR=.*,CERTDIR=\$SSLDIR/dovecot,' \
194 -e 's,^KEYDIR=.*,KEYDIR=\$SSLDIR/dovecot,' \
195 -e 's,^CERTFILE=.*,CERTFILE=\$CERTDIR/server.pem,' \
196 -e 's,^KEYFILE=.*,KEYFILE=\$KEYDIR/server.key,' \
197 doc/mkcert.sh || die "failed to update SSL settings in mkcert.sh"
198 fi
199
200 dodoc AUTHORS NEWS README TODO dovecot-example.conf || die "basic dodoc failed"
201 dodoc doc/* || die "dodoc doc/ failed"
202 docinto wiki
203 dodoc doc/wiki/* || die "dodoc doc/wiki/ failed"
204
205 # Create the dovecot.conf file from the dovecot-example.conf file that
206 # the dovecot folks nicely left for us....
207 local conf="${D}/etc/dovecot/dovecot.conf"
208 mv "${D}"/etc/dovecot/dovecot-example.conf "${D}"/etc/dovecot/dovecot.conf
209
210 # .maildir is the Gentoo default, but we need to support mbox to
211 local mail_location="maildir:~/.maildir"
212 if use mbox; then
213 mail_location="mbox:/var/spool/mail/%u:INDEX=/var/dovecot/%u"
214 keepdir /var/dovecot
215 sed -i -e 's|#mail_privileged_group =|mail_privileged_group = mail|' "${conf}"
216 fi
217 sed -i -e \
218 "s|#mail_location =|mail_location = ${mail_location}|" "${conf}" \
219 || die "failed to update mail location settings in dovecot.conf"
220
221 # We're using pam files (imap and pop3) provided by mailbase
222 if use pam; then
223 sed -i -e '/passdb pam/, /^[ \t]*}/ s|#args = dovecot|args = "\*"|' \
224 "${conf}" || die "failed to update PAM settings in dovecot.conf"
225 # mailbase does not provide a managesieve pam file
226 use managesieve && dosym imap /etc/pam.d/managesieve
227 fi
228
229 # Listen on ipv6 and ipv4
230 if use ipv6; then
231 sed -i -e 's/^#listen = \*/listen = \*, \[::\]/g' "${conf}" \
232 || die "failed to update listen settings in dovecot.conf"
233 fi
234
235 # Update ssl cert locations
236 if use ssl; then
237 sed -i -e 's,^#ssl_cert_file =.*,ssl_cert_file = /etc/ssl/dovecot/server.pem,' \
238 -e 's,^#ssl_key_file =.*,ssl_key_file = /etc/ssl/dovecot/server.key,' \
239 "${conf}" || die "failed to update SSL settings in dovecot.conf"
240 fi
241
242 # Install SQL configuration
243 if use mysql || use postgres; then
244 cp doc/dovecot-sql-example.conf "${D}"/etc/dovecot/dovecot-sql.conf
245 fperms 600 /etc/dovecot/dovecot-sql.conf
246 sed -i -e '/db sql/,/args/ s|=|= /etc/dovecot-sql.conf|' "${conf}" \
247 || die "failed to update SQL settings in dovecot-sql.conf"
248 dodoc doc/dovecot-sql-example.conf
249 fi
250
251 # Install LDAP configuration
252 if use ldap; then
253 cp doc/dovecot-ldap-example.conf "${D}"/etc/dovecot/dovecot-ldap.conf
254 fperms 600 /etc/dovecot/dovecot-ldap.conf
255 sed -i -e '/db ldap/,/args/ s|=|= /etc/dovecot-ldap.conf|' "${conf}" \
256 || die "failed to update LDAP settings in dovecot-ldap.conf"
257 dodoc doc/dovecot-ldap-example.conf
258 fi
259
260 if use sieve; then
261 cd "../dovecot-${major_minor}-sieve-${sieve_version}"
262 emake DESTDIR="${D}" install || die "make install failed (sieve)"
263
264 if use managesieve; then
265 cd "../dovecot-${major_minor}-managesieve-${managesieve_version}"
266 emake DESTDIR="${D}" install || die "make install failed (managesieve)"
267 fi
268 fi
269
270 dodir /var/run/dovecot
271 fowners root:root /var/run/dovecot
272 fperms 0755 /var/run/dovecot
273 keepdir /var/run/dovecot/login
274 fowners root:dovecot /var/run/dovecot/login
275 fperms 0750 /var/run/dovecot/login
276
277 ewarn "If you are upgrading from Dovecot 1.1, read "
278 ewarn " http://wiki.dovecot.org/Upgrading/1.2"
279 if use sieve; then
280 ewarn " http://wiki.dovecot.org/LDA/Sieve/Dovecot#Migration_from_CMUSieve"
281 ewarn " In particular, do not forget to change cmusieve to sieve"
282 fi
283 }