Gentoo Archives: gentoo-commits

From: Hanno Boeck <hanno@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: net-mail/mailman/
Date: Fri, 07 Sep 2018 10:50:36
Message-Id: 1536317409.1091e460a7bcc4ccfb16b13aa07f137d8d276aba.hanno@gentoo
1 commit: 1091e460a7bcc4ccfb16b13aa07f137d8d276aba
2 Author: Hanno <hanno <AT> gentoo <DOT> org>
3 AuthorDate: Fri Sep 7 10:50:09 2018 +0000
4 Commit: Hanno Boeck <hanno <AT> gentoo <DOT> org>
5 CommitDate: Fri Sep 7 10:50:09 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1091e460
7
8 net-mail/mailman: Version bump.
9
10 See #662902, fixes CVE-2018-0618, CVE-2018-13796.
11
12 Package-Manager: Portage-2.3.49, Repoman-2.3.10
13
14 net-mail/mailman/Manifest | 1 +
15 net-mail/mailman/mailman-2.1.29.ebuild | 167 +++++++++++++++++++++++++++++++++
16 2 files changed, 168 insertions(+)
17
18 diff --git a/net-mail/mailman/Manifest b/net-mail/mailman/Manifest
19 index fdf0748faea..b84bac2b41d 100644
20 --- a/net-mail/mailman/Manifest
21 +++ b/net-mail/mailman/Manifest
22 @@ -1,2 +1,3 @@
23 DIST mailman-2.1.26.tgz 9264592 BLAKE2B 04aad3d39724a01df313bebbb3b20bee0e991893f1a17342afb18f3fbe8099178260c176a6d3542a7bb82adee417105aac34783683b205bbb1377e65c982d598 SHA512 9662623beaf4653db809a4bd57cb8377ae5894d78ba7576cf2c555620daf2db79b01599e8445ef732f1e023e72deb16f51554a39226d59742ec73f9e6e7895b2
24 +DIST mailman-2.1.29.tgz 9376258 BLAKE2B 63ae740abed79d2887eef35ddfd8b51f22ee984a0eaacddeb34afb8147c0d239e5eaf93579face987b3c604653fed4c13233de78298914b4eacf5a33f769a997 SHA512 ed25179a4580092629890664c5502908b20e326c2ed06ad4e597fb4e8de84076c369ecd7a272be5ed8a1cb4479413d0e004d87804de763ee850e4d04d9a83376
25 DIST mailman-3.1.1.tar.gz 749014 BLAKE2B 00cf756de1a6ce5a05f30b033ad7d1ebc5664bb1c6fadb5d602c4e34e373ee7a0df0801e6b68b0816ee819f77caef33bbc4b8490df1c8f01fd2fb35664fd3757 SHA512 b09962ec99ca1ce1eafd40409a00f976dc47d82adb707313f4516400db6439af8597a1c4e30262fb228c102508ede688912480dbb1dcca9721bb0333693f1d85
26
27 diff --git a/net-mail/mailman/mailman-2.1.29.ebuild b/net-mail/mailman/mailman-2.1.29.ebuild
28 new file mode 100644
29 index 00000000000..daf50c80c71
30 --- /dev/null
31 +++ b/net-mail/mailman/mailman-2.1.29.ebuild
32 @@ -0,0 +1,167 @@
33 +# Copyright 1999-2018 Gentoo Foundation
34 +# Distributed under the terms of the GNU General Public License v2
35 +
36 +EAPI=5
37 +
38 +PYTHON_COMPAT=( python2_7 )
39 +
40 +inherit eutils python-single-r1 multilib systemd user
41 +
42 +DESCRIPTION="A python-based mailing list server with an extensive web interface"
43 +SRC_URI="mirror://sourceforge/${PN}/${P/_p/-}.tgz"
44 +HOMEPAGE="http://www.list.org/"
45 +
46 +LICENSE="GPL-2"
47 +SLOT="0"
48 +KEYWORDS="~amd64 ~ppc ~x86"
49 +IUSE="selinux"
50 +REQUIRED_USE="${PYTHON_REQUIRED_USE}"
51 +
52 +DEPEND="
53 + ${PYTHON_DEPS}
54 + virtual/mta
55 + virtual/cron
56 + virtual/httpd-cgi
57 + virtual/python-dnspython[${PYTHON_USEDEP}]"
58 +RDEPEND="${DEPEND}
59 + selinux? ( sec-policy/selinux-mailman )
60 +"
61 +
62 +S="${WORKDIR}/${P/_p/-}"
63 +
64 +pkg_setup() {
65 + python-single-r1_pkg_setup
66 + INSTALLDIR=${MAILMAN_PREFIX:-"/usr/$(get_libdir)/mailman"}
67 + VAR_PREFIX=${MAILMAN_VAR_PREFIX:-"/var/lib/mailman"}
68 + CGIUID=${MAILMAN_CGIUID:-apache}
69 + CGIGID=${MAILMAN_CGIGID:-apache}
70 + MAILUSR=${MAILMAN_MAILUSR:-mailman}
71 + MAILUID=${MAILMAN_MAILUID:-280}
72 + MAILGRP=${MAILMAN_MAILGRP:-mailman}
73 + MAILGID=${MAILMAN_MAILGID:-280}
74 +
75 + # Bug #58526: switch to enew{group,user}.
76 + # need to add mailman here for compile process.
77 + # Duplicated at pkg_postinst() for binary install.
78 + enewgroup ${MAILGRP} ${MAILGID}
79 + enewuser ${MAILUSR} ${MAILUID} /bin/bash ${INSTALLDIR} mailman,cron
80 +}
81 +
82 +src_prepare() {
83 + epatch "${FILESDIR}/${PN}-2.1.14_rc1-directory-check.patch"
84 + epatch "${FILESDIR}/${PN}-2.1.9-icons.patch"
85 +}
86 +
87 +src_configure() {
88 + econf \
89 + --without-permcheck \
90 + --prefix="${INSTALLDIR}" \
91 + --with-mail-gid=${MAILGID} \
92 + --with-cgi-gid=${CGIGID} \
93 + --with-cgi-ext="${MAILMAN_CGIEXT}" \
94 + --with-var-prefix="${VAR_PREFIX}" \
95 + --with-username=${MAILUSR} \
96 + --with-groupname=${MAILGRP} \
97 + --with-python="${PYTHON}"
98 +}
99 +
100 +src_install () {
101 + emake "DESTDIR=${D}" doinstall
102 +
103 + insinto /etc/apache2/modules.d
104 + newins "${FILESDIR}/50_mailman.conf-r2" 50_mailman.conf
105 + sed \
106 + -e "s:/usr/local/mailman/cgi-bin:${INSTALLDIR}/cgi-bin:g" \
107 + -e "s:/usr/local/mailman/icons:${INSTALLDIR}/icons:g" \
108 + -e "s:/usr/local/mailman/archives:${VAR_PREFIX}/archives:g" \
109 + -i "${D}/etc/apache2/modules.d/50_mailman.conf" || die
110 +
111 + newdoc "${FILESDIR}/README.gentoo-r3" README.gentoo
112 +
113 + dodoc ACK* BUGS FAQ NEWS README* TODO UPGRADING INSTALL contrib/mailman.mc \
114 + contrib/README.check_perms_grsecurity contrib/virtusertable
115 +
116 + exeinto ${INSTALLDIR}/bin
117 + doexe build/contrib/*.py contrib/majordomo2mailman.pl contrib/auto \
118 + contrib/mm-handler*
119 +
120 + dodir /etc/mailman
121 + mv "${D}/${INSTALLDIR}/Mailman/mm_cfg.py" "${D}/etc/mailman"
122 + dosym /etc/mailman/mm_cfg.py ${INSTALLDIR}/Mailman/mm_cfg.py
123 +
124 + # Save the old config for updates from pre-2.1.9-r2
125 + # To be removed some distant day
126 + for i in /var/mailman /home/mailman /usr/local/mailman ${INSTALLDIR}; do
127 + if [ -f ${i}/Mailman/mm_cfg.py ] && ! [ -L ${i}/Mailman/mm_cfg.py ]; then
128 + cp ${i}/Mailman/mm_cfg.py "${D}/etc/mailman/mm_cfg.py" || die
129 + fi
130 + done
131 +
132 + newinitd "${FILESDIR}/mailman.rc" mailman
133 + cp "${FILESDIR}/mailman.service" "${T}/mailman.service" || die
134 + sed -i "s/^User=.*/User=${MAILUSR}/" "${T}/mailman.service" || die
135 + systemd_dounit "${T}/mailman.service"
136 +
137 + keepdir ${VAR_PREFIX}/logs
138 + keepdir ${VAR_PREFIX}/locks
139 + keepdir ${VAR_PREFIX}/spam
140 + keepdir ${VAR_PREFIX}/archives/public
141 + keepdir ${VAR_PREFIX}/archives/private
142 + keepdir ${VAR_PREFIX}/lists
143 + keepdir ${VAR_PREFIX}/qfiles
144 +
145 + chown -R ${MAILUSR}:${MAILGRP} "${D}/${VAR_PREFIX}" "${D}/${INSTALLDIR}" "${D}"/etc/mailman/* || die
146 + chown ${CGIUID}:${MAILGRP} "${D}/${VAR_PREFIX}/archives/private" || die
147 + chmod 2775 "${D}/${INSTALLDIR}" "${D}/${INSTALLDIR}"/templates/* \
148 + "${D}/${INSTALLDIR}"/messages/* "${D}/${VAR_PREFIX}" "${D}/${VAR_PREFIX}"/{logs,lists,spam,locks,archives/public} || die
149 + chmod 2770 "${D}/${VAR_PREFIX}/archives/private" || die
150 + chmod 2770 "${D}/${VAR_PREFIX}/qfiles" || die
151 + chmod 2755 "${D}/${INSTALLDIR}"/cgi-bin/* "${D}/${INSTALLDIR}/mail/mailman" || die
152 +
153 + python_optimize "${D}/${INSTALLDIR}/bin/" \
154 + "${D}/${INSTALLDIR}/Mailman/" \
155 + "${D}/${INSTALLDIR}/Mailman/*"
156 +}
157 +
158 +pkg_postinst() {
159 + enewgroup ${MAILGRP} ${MAILGID}
160 + enewuser ${MAILUSR} ${MAILUID} -1 ${INSTALLDIR} mailman,cron
161 + echo
162 + elog "Please read /usr/share/doc/${PF}/README.gentoo.bz2 for additional"
163 + elog "Setup information, mailman will NOT run unless you follow"
164 + elog "those instructions!"
165 + echo
166 +
167 + elog "An example Mailman configuration file for Apache has been installed into:"
168 + elog " ${APACHE2_MODULES_CONFDIR}/50_mailman.conf"
169 + echo
170 + elog "To enable, you will need to add \"-D MAILMAN\" to"
171 + elog "/etc/conf.d/apache2."
172 + echo
173 +
174 + ewarn "Default-Configuration has changed deeply in 2.1.9-r2. You can configure"
175 + ewarn "mailman with the following variables:"
176 + ewarn "MAILMAN_PREFIX (default: /usr/$(get_libdir)/mailman)"
177 + ewarn "MAILMAN_VAR_PREFIX (default: /var/lib/mailman)"
178 + ewarn "MAILMAN_CGIUID (default: apache)"
179 + ewarn "MAILMAN_CGIGID (default: apache)"
180 + ewarn "MAILMAN_CGIEXT (default: empty)"
181 + ewarn "MAILMAN_MAILUSR (default: mailman)"
182 + ewarn "MAILMAN_MAILUID (default: 280)"
183 + ewarn "MAILMAN_MAILGRP (default: mailman)"
184 + ewarn "MAILMAN_MAILGID (default: 280)"
185 + ewarn
186 + ewarn "Config file is now symlinked in /etc/mailman, so etc-update works."
187 + ewarn
188 + ewarn "If you're upgrading from below 2.1.9-r2 or changed MAILMAN_PREFIX, you"
189 + ewarn "NEED to make a few manual updates to your system:"
190 + ewarn
191 + ewarn "1. Update your mailman users's home directory: usermod -d ${INSTALLDIR} mailman"
192 + ewarn "2. Re-import the crontab: su - mailman -c 'crontab cron/crontab.in'"
193 + ewarn "3. Copy your old mm_cfg.py file to /etc/mailman/mm_cfg.py"
194 + ewarn
195 + ewarn "Additionally if you've modified MAILMAN_VAR_PREFIX (or upgraded from"
196 + ewarn "a pre 2.1.9-r2 installation), you should move your old lists/ and"
197 + ewarn "archives/ directory to the new location, ensuring that the"
198 + ewarn "permissions is correct. See bug #208789 for a discussion."
199 +}