Gentoo Archives: gentoo-commits

From: "Robin H. Johnson (robbat2)" <robbat2@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in net-mail/vpopmail: vpopmail-5.4.33-r1.ebuild ChangeLog
Date: Fri, 31 May 2013 00:32:17
Message-Id: 20130531003209.BE6862171D@flycatcher.gentoo.org
1 robbat2 13/05/31 00:32:09
2
3 Modified: ChangeLog
4 Added: vpopmail-5.4.33-r1.ebuild
5 Log:
6 Bug #277764: fix parallel install. Bug #377939: postgres support. Bug #437640: *bsd support.
7
8 (Portage version: 2.2.0_alpha177/cvs/Linux x86_64, unsigned Manifest commit)
9
10 Revision Changes Path
11 1.110 net-mail/vpopmail/ChangeLog
12
13 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-mail/vpopmail/ChangeLog?rev=1.110&view=markup
14 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-mail/vpopmail/ChangeLog?rev=1.110&content-type=text/plain
15 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-mail/vpopmail/ChangeLog?r1=1.109&r2=1.110
16
17 Index: ChangeLog
18 ===================================================================
19 RCS file: /var/cvsroot/gentoo-x86/net-mail/vpopmail/ChangeLog,v
20 retrieving revision 1.109
21 retrieving revision 1.110
22 diff -p -w -b -B -u -u -r1.109 -r1.110
23 --- ChangeLog 30 May 2013 23:21:24 -0000 1.109
24 +++ ChangeLog 31 May 2013 00:32:09 -0000 1.110
25 @@ -1,6 +1,13 @@
26 # ChangeLog for net-mail/vpopmail
27 # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
28 -# $Header: /var/cvsroot/gentoo-x86/net-mail/vpopmail/ChangeLog,v 1.109 2013/05/30 23:21:24 robbat2 Exp $
29 +# $Header: /var/cvsroot/gentoo-x86/net-mail/vpopmail/ChangeLog,v 1.110 2013/05/31 00:32:09 robbat2 Exp $
30 +
31 +*vpopmail-5.4.33-r1 (31 May 2013)
32 +
33 + 31 May 2013; Robin H. Johnson <robbat2@g.o>
34 + +files/vpopmail-vpgsql.patch, +vpopmail-5.4.33-r1.ebuild:
35 + Bug #277764: fix parallel install. Bug #377939: postgres support. Bug #437640:
36 + *bsd support.
37
38 30 May 2013; Robin H. Johnson <robbat2@g.o> vpopmail-5.4.33.ebuild:
39 Fix build with new automake/aclocal. Also bug #343341: _FORTIFY_SOURCE.
40
41
42
43 1.1 net-mail/vpopmail/vpopmail-5.4.33-r1.ebuild
44
45 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-mail/vpopmail/vpopmail-5.4.33-r1.ebuild?rev=1.1&view=markup
46 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-mail/vpopmail/vpopmail-5.4.33-r1.ebuild?rev=1.1&content-type=text/plain
47
48 Index: vpopmail-5.4.33-r1.ebuild
49 ===================================================================
50 # Copyright 1999-2013 Gentoo Foundation
51 # Distributed under the terms of the GNU General Public License v2
52 # $Header: /var/cvsroot/gentoo-x86/net-mail/vpopmail/vpopmail-5.4.33-r1.ebuild,v 1.1 2013/05/31 00:32:09 robbat2 Exp $
53
54 EAPI=5
55
56 inherit autotools eutils fixheadtails qmail user
57
58 HOMEPAGE="http://www.inter7.com/index.php?page=vpopmail"
59 DESCRIPTION="A collection of programs to manage virtual email domains and accounts on your Qmail mail servers."
60 SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
61
62 LICENSE="GPL-2"
63 SLOT="0"
64 KEYWORDS="~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
65 IUSE="clearpasswd ipalias maildrop mysql postgres spamassassin"
66 REQUIRED_USE="mysql? ( !postgres )"
67
68 DEPEND="virtual/qmail
69 maildrop? ( mail-filter/maildrop )
70 mysql? ( virtual/mysql )
71 postgres? ( dev-db/postgresql-server )
72 spamassassin? ( mail-filter/spamassassin )"
73 RDEPEND="${DEPEND}"
74
75 # This makes sure the variable is set, and that it isn't null.
76 VPOP_DEFAULT_HOME="/var/vpopmail"
77
78 vpopmail_set_homedir() {
79 VPOP_HOME=$(egethome vpopmail)
80 if [[ -z "${VPOP_HOME}" ]]; then
81 ebeep
82 eerror "vpopmail's home directory is null in passwd data!"
83 eerror "You probably want to check that out."
84 eerror "Continuing with default."
85 VPOP_HOME="${VPOP_DEFAULT_HOME}"
86 else
87 einfo "Setting VPOP_HOME to: $VPOP_HOME"
88 fi
89 }
90
91 pkg_setup() {
92 enewgroup vpopmail 89
93 enewuser vpopmail 89 -1 ${VPOP_DEFAULT_HOME} vpopmail
94 upgradewarning
95 }
96
97 src_prepare() {
98 epatch "${FILESDIR}"/${PN}-5.4.9-access.violation.patch
99 epatch "${FILESDIR}"/${PN}-lazy.patch
100 epatch "${FILESDIR}"/${PN}-double-free.patch
101 epatch "${FILESDIR}"/${PN}-vpgsql.patch
102
103 echo 'install-recursive: install-exec-am' \
104 >>"${S}"/Makefile.am
105
106 # fix maildir paths
107 sed -i -e 's|Maildir|.maildir|g' \
108 vchkpw.c vconvert.c vdelivermail.c \
109 vpopbull.c vpopmail.c vqmaillocal.c \
110 vuserinfo.c maildirquota.c || die
111
112 # remove vpopmail advertisement
113 sed -i -e '/printf.*vpopmail/s:vpopmail (:(:' \
114 vdelivermail.c vpopbull.c vqmaillocal.c || die
115
116 # automake/autoconf
117 mv -f "${S}"/configure.{in,ac} || die
118 sed -i -e 's,AM_CONFIG_HEADER,AC_CONFIG_HEADERS,g' \
119 configure.ac || die
120
121 # _FORTIFY_SOURCE
122 sed -i \
123 -e 's/\(snprintf(\s*\(LI->[a-zA-Z_]\+\),\s*\)[a-zA-Z_]\+,/\1 sizeof(\2),/' \
124 vlistlib.c || die
125
126 eautoreconf
127 ht_fix_file cdb/Makefile
128 }
129
130 src_configure() {
131 vpopmail_set_homedir
132
133 local authopts
134 if use mysql; then
135 mysqlinc=$(mysql_config --include)
136 authopts="--enable-incdir=${mysqlinc#-I}"
137 authopts+=" --enable-auth-module=mysql"
138 authopts+=" --enable-libdir=/usr/$(get_libdir)/mysql"
139 authopts+=" --enable-sql-logging"
140 authopts+=" --enable-valias"
141 authopts+=" --disable-mysql-replication"
142 authopts+=" --enable-mysql-limits"
143 elif use postgres; then
144 pglibdir=$(pg_config --libdir)
145 authopts+=" --enable-auth-module=pgsql"
146 authopts+=" --enable-libdir=${pglibdir}"
147 authopts+=" --enable-sql-logging"
148 authopts+=" --enable-valias"
149 else
150 authopts+=" --enable-auth-module=cdb"
151 fi
152
153 econf ${authopts} \
154 --sysconfdir=${VPOP_HOME}/etc \
155 --enable-non-root-build \
156 --enable-qmaildir=${QMAIL_HOME} \
157 --enable-qmail-newu=${QMAIL_HOME}/bin/qmail-newu \
158 --enable-qmail-inject=${QMAIL_HOME}/bin/qmail-inject \
159 --enable-qmail-newmrh=${QMAIL_HOME}/bin/qmail-newmrh \
160 --enable-vpopuser=vpopmail \
161 --enable-vpopgroup=vpopmail \
162 --enable-many-domains \
163 --enable-file-locking \
164 --enable-file-sync \
165 --enable-md5-passwords \
166 --enable-logging \
167 --enable-auth-logging \
168 --enable-log-name=vpopmail \
169 --enable-qmail-ext \
170 --disable-tcpserver-file \
171 --disable-roaming-users \
172 $(use_enable ipalias ip-alias-domains) \
173 $(use_enable clearpasswd clear-passwd) \
174 $(use_enable maildrop) \
175 $(use_enable maildrop maildrop-prog /usr/bin/maildrop) \
176 $(use_enable spamassassin)
177 }
178
179 src_install() {
180 vpopmail_set_homedir
181
182 emake DESTDIR="${D}" install
183 keepdir "${VPOP_HOME}"/domains
184
185 # install helper script for maildir conversion
186 into "${VPOP_HOME}"
187 dobin "${FILESDIR}"/vpopmail-Maildir-dotmaildir-fix.sh
188 into /usr
189
190 dodoc doc/AUTHORS ChangeLog doc/FAQ doc/INSTALL doc/README*
191 dohtml doc/doc_html/* doc/man_html/*
192 rm -rf "${D}/${VPOP_HOME}"/doc
193 dosym /usr/share/doc/${PF}/ "${VPOP_HOME}"/doc
194
195 # create /etc/vpopmail.conf
196 if use mysql; then
197 dodir /etc
198 mv "${D}${VPOP_HOME}"/etc/vpopmail.mysql "${D}"/etc/vpopmail.conf
199 dosym /etc/vpopmail.conf "${VPOP_HOME}"/etc/vpopmail.mysql
200
201 sed -e '12d' -i "${D}"/etc/vpopmail.conf
202 echo '# Read-only DB' >> "${D}"/etc/vpopmail.conf
203 echo 'localhost|0|vpopmail|secret|vpopmail' >> "${D}"/etc/vpopmail.conf
204 echo '# Write DB' >> "${D}"/etc/vpopmail.conf
205 echo 'localhost|0|vpopmail|secret|vpopmail' >> "${D}"/etc/vpopmail.conf
206
207 # lock down perms
208 fperms 640 /etc/vpopmail.conf
209 fowners root:vpopmail /etc/vpopmail.conf
210 fi
211
212 insinto "${VPOP_HOME}"/etc
213 doins vusagec.conf
214 dosym "${VPOP_HOME}"/etc/vusagec.conf /etc/vusagec.conf
215 sed -i 's/Disable = False;/Disable = True;/g' "${D}${VPOP_HOME}"/etc/vusagec.conf
216
217 einfo "Installing env.d entry"
218 dodir /etc/env.d
219 doenvd "${FILESDIR}"/99vpopmail
220
221 einfo "Locking down vpopmail permissions"
222 fowners -R root:0 "${VPOP_HOME}"/{bin,etc,include}
223 fowners root:vpopmail "${VPOP_HOME}"/bin/vchkpw
224 fperms 4711 "${VPOP_HOME}"/bin/vchkpw
225 }
226
227 pkg_postinst() {
228 if use mysql ; then
229 elog
230 elog "You have 'mysql' turned on in your USE"
231 elog "Vpopmail needs a VALID MySQL USER. Let's call it 'vpopmail'"
232 elog "You MUST add it and then specify its passwd in the /etc/vpopmail.conf file"
233 elog
234 elog "First log into mysql as your mysql root user and pass. Then:"
235 elog "> create database vpopmail;"
236 elog "> use mysql;"
237 elog "> grant select, insert, update, delete, create, drop on vpopmail.* to"
238 elog " vpopmail@localhost identified by 'your password';"
239 elog "> flush privileges;"
240 elog
241 elog "If you have problems with vpopmail not accepting mail properly,"
242 elog "please ensure that /etc/vpopmail.conf is chmod 640 and"
243 elog "owned by root:vpopmail"
244 elog
245 fi
246
247 # do this for good measure
248 if [[ -e /etc/vpopmail.conf ]]; then
249 chmod 640 /etc/vpopmail.conf
250 chown root:vpopmail /etc/vpopmail.conf
251 fi
252
253 upgradewarning
254 }
255
256 pkg_postrm() {
257 vpopmail_set_homedir
258
259 elog "The vpopmail DATA will NOT be removed automatically."
260 elog "You can delete them manually by removing the ${VPOP_HOME} directory."
261 }
262
263 upgradewarning() {
264 ewarn
265 ewarn "Massive important warning if you are upgrading to 5.2.1-r8 or older"
266 ewarn "The internal structure of the mail storage has changed for"
267 ewarn "consistancy with the rest of Gentoo! Please review and utilize the "
268 ewarn "script at ${VPOP_HOME}/bin/vpopmail-Maildir-dotmaildir-fix.sh"
269 ewarn "to upgrade your system! (It can do conversions both ways)."
270 ewarn "You should be able to run it right away without any changes."
271 ewarn
272
273 elog
274 elog "Use of vpopmail's tcp.smtp[.cdb] is also deprecated now, consider"
275 elog "using net-mail/relay-ctrl instead."
276 elog
277
278 if use mysql; then
279 elog
280 elog "If you are upgrading from 5.4.17 or older, you have to fix your"
281 elog "MySQL tables:"
282 elog
283 elog 'ALTER TABLE `dir_control` CHANGE `domain` `domain` CHAR(96) NOT NULL;'
284 elog 'ALTER TABLE `ip_alias_map` CHANGE domain domain CHAR(96) NOT NULL;'
285 elog 'ALTER TABLE `lastauth` CHANGE domain domain CHAR(96) NOT NULL;'
286 elog 'ALTER TABLE `valias` CHANGE domain domain CHAR(96) NOT NULL;'
287 elog 'ALTER TABLE `vlog` CHANGE domain domain CHAR(96) NOT NULL;'
288 elog 'ALTER TABLE `vpopmail` CHANGE domain domain CHAR(96) NOT NULL;'
289 elog 'ALTER TABLE `limits` CHANGE domain domain CHAR(96) NOT NULL,'
290 elog ' ADD `disable_spamassassin` TINYINT(1) DEFAULT '0' NOT NULL AFTER `disable_smtp`,'
291 elog ' ADD `delete_spam` TINYINT(1) DEFAULT '0' NOT NULL AFTER `disable_spamassassin`;'
292 elog
293 fi
294
295 ewarn
296 ewarn "Newer versions of vpopmail contain a quota daemon called vusaged."
297 ewarn "This ebuild DOES NOT INSTALL vusaged and has therefore disabled"
298 ewarn "its usage in ${VPOP_HOME}/etc/vusagec.conf. DO NOT ENABLE!"
299 ewarn "Otherwise mail delivery WILL BREAK"
300 ewarn
301 }