]>
Commit | Line | Data |
---|---|---|
9bb8ee1c ER |
1 | # |
2 | # Conditional build: | |
78781d0e JR |
3 | %bcond_with umbrella_hack # break anonimization (for use with moderated umbrella list of moderated lists) |
4 | ||
064d962f | 5 | %define rel 5.13 |
e03ec2d4 | 6 | Summary: The GNU Mailing List Management System |
a444548f ER |
7 | Summary(es.UTF-8): El Sistema de Mantenimiento de listas de GNU |
8 | Summary(pl.UTF-8): System Zarządzania Listami Pocztowymi GNU | |
9 | Summary(pt_BR.UTF-8): O Sistema de Manutenção de listas da GNU | |
e03ec2d4 | 10 | Name: mailman |
261e6103 | 11 | Version: 2.1.13 |
344ad428 | 12 | Release: %{rel}%{?with_umbrella_hack:.umh} |
c9ade2a5 | 13 | Epoch: 5 |
6db16968 | 14 | License: GPL v2+ |
71786abb | 15 | Group: Applications/System |
a5c1bef4 | 16 | Source0: http://downloads.sourceforge.net/mailman/%{name}-%{version}.tgz |
261e6103 | 17 | # Source0-md5: 3235323ccb3e0135c10b7c66a440390b |
55198b62 | 18 | Source1: http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-man-pages.tar.bz2 |
cfa9db27 | 19 | # Source1-md5: 6b55f9f8051c76961b84a12ed17fc14f |
b74a500a | 20 | Source2: %{name}.conf |
4f307f1a | 21 | Source3: %{name}.init |
45822e50 | 22 | Source4: %{name}.sysconfig |
1f1f1e51 | 23 | Source5: %{name}.logrotate |
e5e7e1da ER |
24 | Source6: add_nonmembers |
25 | Source7: subscribe_list | |
9ac4bc26 JR |
26 | Patch0: %{name}-MM_FIND_GROUP_NAME.patch |
27 | Patch1: %{name}-dont-send-broken-reminder-ugly-hack.patch | |
28 | Patch2: %{name}-mailmanctl-status.patch | |
29 | Patch3: %{name}-cron.patch | |
30 | Patch4: %{name}-python-compile.patch | |
31 | Patch5: %{name}-build.patch | |
32 | Patch6: %{name}-FHS.patch | |
33 | Patch7: %{name}-x-imap-folder.patch | |
34 | Patch8: %{name}-lib64.patch | |
35 | Patch9: %{name}-umbrella-anon-hack.patch | |
bd0eb725 ER |
36 | Patch10: %{name}-daemonize-fds.patch |
37 | Patch11: %{name}-httpauth.patch | |
bad20e64 | 38 | Patch12: %{name}-MM_FIND_USER_NAME.patch |
064d962f | 39 | Patch13: keep-original-mime-headers.patch |
611deac8 | 40 | URL: http://www.list.org/ |
42215f42 | 41 | BuildRequires: autoconf |
c227cd5a | 42 | BuildRequires: automake |
42215f42 JB |
43 | BuildRequires: python >= 2.1 |
44 | BuildRequires: python-devel | |
3028296b | 45 | BuildRequires: python-modules |
46 | BuildRequires: rpm-pythonprov | |
91960d37 | 47 | BuildRequires: rpmbuild(macros) >= 1.234 |
1ca365d2 JB |
48 | Requires(post): /bin/hostname |
49 | Requires(post): grep | |
d366fa4f ER |
50 | Requires(post,preun): /sbin/chkconfig |
51 | Requires(postun): /usr/sbin/groupdel | |
52 | Requires(postun): /usr/sbin/userdel | |
1ca365d2 JB |
53 | Requires(postun): fileutils |
54 | Requires(postun): grep | |
d366fa4f ER |
55 | Requires(pre): /bin/id |
56 | Requires(pre): /usr/bin/getgid | |
57 | Requires(pre): /usr/sbin/groupadd | |
58 | Requires(pre): /usr/sbin/useradd | |
4bc957f5 | 59 | Requires: /sbin/chkconfig |
18e8047c | 60 | Requires: crondaemon |
b47844d8 | 61 | Requires: mailcap >= 2.3-5 |
d366fa4f | 62 | Requires: rc-scripts |
18e8047c | 63 | Requires: smtpdaemon |
5de7fff6 | 64 | Requires: webapps |
28503e33 | 65 | Requires: webserver |
c395bdae | 66 | Requires: webserver(indexfile) |
d366fa4f | 67 | %pyrequires_eq python-modules |
283de5b9 | 68 | Provides: group(mailman) |
69 | Provides: user(mailman) | |
002dea4b PG |
70 | # for converting text/html into plain text in default configuration: |
71 | Suggests: lynx | |
944f8d92 | 72 | Conflicts: logrotate < 3.7-4 |
e03ec2d4 AM |
73 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
74 | ||
ff7c645e | 75 | %define _queuedir /var/spool/%{name} |
ad258e55 PG |
76 | %define _lockdir /var/lock/%{name} |
77 | %define _logdir /var/log/%{name} | |
f242975b | 78 | %define _logarchdir /var/log/archive/%{name} |
ad258e55 PG |
79 | %define _piddir /var/run/%{name} |
80 | ||
5de7fff6 JR |
81 | %define _webapps /etc/webapps |
82 | %define _webapp %{name} | |
83 | %define _sysconfdir %{_webapps}/%{_webapp} | |
ad258e55 | 84 | |
e03ec2d4 | 85 | %description |
71786abb | 86 | Mailman -- The GNU Mailing List Management System -- is a mailing list |
87 | management system written mostly in Python. Features: | |
88 | - most standard mailing list features, including: moderation, mail | |
89 | based commands, digests, etc... | |
90 | - an extensive Web interface, customizable on a per-list basis, | |
91 | - web based list administration interface for *all* admin-type tasks | |
92 | - automatic Web based hypermail-style archives (using pipermail or | |
93 | other external archiver), including provisions for private archives | |
94 | - integrated mail list to newsgroup gatewaying | |
95 | - integrated newsgroup to mail list gatewaying (polling-based... if | |
96 | you have access to the nntp server, you should be able to easily do | |
0433634b | 97 | non-polling based news->mail list gatewaying; email viega@list.org |
98 | (I'd like to help get that going and come up with instructions) | |
71786abb | 99 | - smart bounce detection and correction |
100 | - integrated fast bulk mailing | |
101 | - smart spam protection | |
102 | - extensible logging | |
103 | - multiple list owners and moderators are possible | |
104 | - optional MIME-compliant digests, | |
105 | - nice about which machine you subscribed from if you're from the | |
106 | right domain, | |
107 | ||
c7fea9f2 JR |
108 | %description -l es.UTF-8 |
109 | Mailman -- El sistema de manutención de listas de discusión de la | |
0433634b | 110 | licencia GNU. |
111 | ||
c7fea9f2 JR |
112 | %description -l pl.UTF-8 |
113 | Mailman -- System Zarządzania Listami Pocztowymi GNU -- został | |
114 | napisany głównie w Pythonie. Jego możliwości to: | |
115 | - standardowe możliwości: moderowanie, komendy przesyłane pocztą, | |
71786abb | 116 | digesty itp, |
c7fea9f2 JR |
117 | - interfejs WWW konfigurowalny dla każdej listy, |
118 | - automatyczny system archiwizowania (z użyciem pipermaila lub innego | |
119 | zewnętrznego archiwizera) włączając w to odpowiednie zarządzanie | |
71786abb | 120 | prywatnymi archiwami, |
121 | - bramki mail <-> news, | |
c7fea9f2 | 122 | - doskonały system wykrywania odbić i korekcji odbitej poczty, |
71786abb | 123 | - system ochrony przed spamem, |
124 | - rozszerzone logowanie, | |
c7fea9f2 | 125 | - listy mogą być własnością wielu osób oraz moderatorów może być |
71786abb | 126 | kilku. |
e03ec2d4 | 127 | |
c7fea9f2 JR |
128 | %description -l pt_BR.UTF-8 |
129 | O Mailman -- O sistema de gerenciamento de listas de discussão do GNU | |
130 | -- é um sistema de gerenciamento de listas de discussão escrito em sua | |
131 | maior parte em Python. Características: | |
0433634b | 132 | |
c7fea9f2 JR |
133 | - Maioria das características de lista de discussão padrão, incluindo: |
134 | moderação, comandos baseados em e-mail, compiladores (digests), | |
0d521289 | 135 | etc... |
c7fea9f2 JR |
136 | - Uma interface extensiva da Web, personalizável lista a lista. |
137 | - Interface de administração de lista baseada na Web para *todas* as | |
0433634b | 138 | tarefas de tipo de admin. |
c7fea9f2 JR |
139 | - Arquivos automáticos de estilo hypermail baseado na Web (usando |
140 | pipermail ou outros arquivadores externos), incluindo provisões para | |
0433634b | 141 | arquivos privados. |
c7fea9f2 JR |
142 | - Lista de e-mails integrada ao gateway de grupo de notícias. |
143 | - Grupo de notícias integrado ao gateway de lista de e-mail (baseado | |
144 | em consulta... se você tiver acesso ao servidor nntp, deve ser fácil | |
145 | conseguir efetuar notícias baseadas em não-consulta->gateway de | |
0d521289 | 146 | lista de e-mails; envie um e-mail a viega@list.org, eu gostaria de |
c7fea9f2 JR |
147 | ajudar a manter isto e aparecer com instruções). |
148 | - Detecção e correção inteligente de mensagens retornadas. | |
149 | - Envio de e-mail em massa rápido e integrado. | |
150 | - Proteção inteligente contra spam. | |
151 | - Registro ampliável. | |
152 | - São possíveis múltiplos donos e moderadores de lista. | |
153 | - Compiladores (digests) opcionais compatíveis com MIME. | |
154 | - Informa a partir de qual máquina você se inscreveu, caso esteja no | |
155 | domínio correto. | |
0433634b | 156 | |
7d7f0b99 JR |
157 | %package sendmail |
158 | Summary: Sendmail support for mailman | |
942975fb | 159 | Summary(pl.UTF-8): Obsługa mailmana dla sendmaila |
7d7f0b99 JR |
160 | Group: Applications/System |
161 | Requires: %{name} = %{epoch}:%{version}-%{release} | |
162 | ||
163 | %description sendmail | |
942975fb JB |
164 | This package provides wrapper symlink in /etc/smrsh that allows |
165 | sendmail to run mailman. | |
166 | ||
167 | %description sendmail -l pl.UTF-8 | |
168 | Ten pakiet udostępnia dowiązanie w /etc/smrsh pozwalające sendmailowi | |
169 | uruchamiać mailmana. | |
7d7f0b99 | 170 | |
e03ec2d4 | 171 | %prep |
4987a9c4 | 172 | %setup -q |
9ac4bc26 JR |
173 | %patch0 -p1 |
174 | #patch1 -p1 | |
951d18f3 | 175 | %patch2 -p1 |
ad258e55 | 176 | %patch3 -p1 |
7fca4a12 | 177 | %patch4 -p1 |
33bf8c3c | 178 | %patch5 -p1 |
ad258e55 PG |
179 | %patch6 -p1 |
180 | %patch7 -p1 | |
1918aa10 | 181 | %patch8 -p1 |
9ac4bc26 | 182 | %{?with_umbrella_hack:%patch9 -p1} |
417e2177 | 183 | %patch10 -p1 |
91cf6964 | 184 | %patch11 -p1 |
bad20e64 | 185 | %patch12 -p1 |
064d962f | 186 | %patch13 -p1 |
9ac4bc26 JR |
187 | |
188 | # Conflicts with python built-in email package | |
189 | sed -i -e 's,EMAILPKG=,#EMAILPKG=,g' misc/Makefile.in | |
e03ec2d4 | 190 | |
e5e7e1da ER |
191 | install -p %{SOURCE6} %{SOURCE7} contrib |
192 | ||
e03ec2d4 | 193 | %build |
47b79953 | 194 | %{__aclocal} |
52cf35d9 | 195 | %{__autoconf} |
838e4fb7 | 196 | |
e03ec2d4 | 197 | %configure \ |
9ddb2c4a | 198 | --prefix=%{_libdir}/%{name} \ |
9db31966 | 199 | --exec-prefix=%{_libdir}/%{name} \ |
9ddb2c4a | 200 | --with-var-prefix=/var/lib/%{name} \ |
5de7fff6 | 201 | --with-config-dir=%{_sysconfdir} \ |
ad258e55 PG |
202 | --with-lock-dir=%{_lockdir} \ |
203 | --with-log-dir=%{_logdir} \ | |
204 | --with-pid-dir=%{_piddir} \ | |
ff7c645e | 205 | --with-queue-dir=%{_queuedir} \ |
e03ec2d4 AM |
206 | --with-username=%{name} \ |
207 | --with-groupname=%{name} \ | |
d7156e9e AM |
208 | --with-mail-gid='mailman' \ |
209 | --with-cgi-gid='http' \ | |
28503e33 | 210 | --with-mailhost=localhost.localdomain \ |
ad258e55 | 211 | --with-urlhost=localhost.localdomain \ |
d366fa4f | 212 | --without-permcheck |
e03ec2d4 | 213 | |
9ac4bc26 | 214 | %{__make} |
ad258e55 | 215 | |
e03ec2d4 AM |
216 | %install |
217 | rm -rf $RPM_BUILD_ROOT | |
9ddb2c4a JR |
218 | install -d $RPM_BUILD_ROOT{/etc/{cron.d,logrotate.d,rc.d/init.d,sysconfig,smrsh},%{_mandir}} \ |
219 | $RPM_BUILD_ROOT{%{_sysconfdir},%{_logarchdir}} | |
e03ec2d4 | 220 | |
a5c1bef4 | 221 | export PYTHONPATH=$RPM_BUILD_ROOT%{_libdir}/%{name}:$RPM_BUILD_ROOT%{_libdir}/%{name}/pythonlib |
2dd74da3 | 222 | |
7ef4b69f | 223 | %{__make} doinstall \ |
9ddb2c4a | 224 | DESTDIR=$RPM_BUILD_ROOT |
ad258e55 PG |
225 | |
226 | %{__make} install-packages -C misc \ | |
9ddb2c4a | 227 | DESTDIR=$RPM_BUILD_ROOT |
e03ec2d4 | 228 | |
55198b62 | 229 | bzip2 -dc %{SOURCE1} | tar xf - -C $RPM_BUILD_ROOT%{_mandir} |
230 | ||
ef0fd010 JR |
231 | sed -e 's#/usr/lib/mailman#%{_libdir}/mailman#g' %{SOURCE2} \ |
232 | > $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf | |
31cccda6 ER |
233 | sed -e 's#/usr/lib/mailman#%{_libdir}/mailman#g' %{SOURCE2} \ |
234 | > $RPM_BUILD_ROOT%{_sysconfdir}/apache.conf | |
ef0fd010 JR |
235 | sed -e 's#/usr/lib/mailman#%{_libdir}/mailman#g' %{SOURCE3} \ |
236 | > $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name} | |
a5c1bef4 ER |
237 | cp -a %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/%{name} |
238 | cp -a %{SOURCE5} $RPM_BUILD_ROOT/etc/logrotate.d/%{name} | |
4f307f1a | 239 | |
a5c1bef4 | 240 | cp -a cron/crontab.in $RPM_BUILD_ROOT/etc/cron.d/%{name} |
f7c05caf | 241 | |
e5e7e1da ER |
242 | install -p contrib/{subscribe_list,add_nonmembers} $RPM_BUILD_ROOT%{_libdir}/%{name}/bin |
243 | ||
d9cb6a7a | 244 | ln -s %{_sysconfdir}/sitelist.cfg $RPM_BUILD_ROOT%{_var}/lib/mailman/data/sitelist.cfg |
4ee42131 | 245 | |
076c2f35 | 246 | cat >> $RPM_BUILD_ROOT%{_sysconfdir}/mm_cfg.py << 'EOF' |
d7156e9e AM |
247 | DEFAULT_EMAIL_HOST = 'YOUR.HOST.NAME.HERE' |
248 | DEFAULT_URL_HOST = 'YOUR.HOST.NAME.HERE' | |
0800ed01 | 249 | DEFAULT_HOST_NAME = 'YOUR.HOST.NAME.HERE' |
d7156e9e AM |
250 | IMAGE_LOGOS = '/mailman/icons/' |
251 | PUBLIC_ARCHIVE_URL = '/mailman/pipermail/%%(listname)s' | |
252 | MAILMAN_GROUP = '%{name}' | |
253 | MAILMAN_USER = '%{name}' | |
0800ed01 | 254 | VIRTUAL_HOST_OVERVIEW = Off |
dc848f2c ER |
255 | |
256 | #MTA = 'Postfix' | |
257 | #POSTFIX_STYLE_VIRTUAL_DOMAINS = [] | |
258 | ||
259 | #DEFAULT_SERVER_LANGUAGE = 'pl' | |
260 | ||
261 | # If value is True, site administrator is trusted from REMOTE_USER CGI variable | |
262 | # Use this to if you want to use password authentication for site admin. | |
263 | USE_HTTP_AUTH = False | |
d7156e9e AM |
264 | |
265 | # For available options and their descriptions see: | |
e5e7e1da | 266 | # %{_docdir}/%{name}-%{version}/Defaults.py* |
d7156e9e AM |
267 | EOF |
268 | ||
076c2f35 ER |
269 | touch $RPM_BUILD_ROOT%{_sysconfdir}/aliases{,.db} |
270 | touch $RPM_BUILD_ROOT%{_sysconfdir}/adm.pw | |
271 | touch $RPM_BUILD_ROOT%{_var}/lib/mailman/data/last_mailman_version | |
272 | ||
ad258e55 | 273 | # Create a link to the wrapper in /etc/smrsh to allow sendmail to run it. |
9db31966 | 274 | ln -s %{_libdir}/%{name}/mail/%{name} $RPM_BUILD_ROOT/etc/smrsh |
ad258e55 | 275 | |
39f4ef46 | 276 | # regenerate pyc files with proper paths |
91960d37 | 277 | find $RPM_BUILD_ROOT -name '*.pyc' | xargs rm -f |
39f4ef46 | 278 | %py_comp $RPM_BUILD_ROOT |
dc848f2c ER |
279 | # save mm_cfg.py from py_postclean |
280 | mv $RPM_BUILD_ROOT%{_libdir}/%{name}/Mailman/mm_cfg.{py,pyX} | |
9bb8ee1c | 281 | %py_postclean %{_libdir}/mailman |
39f4ef46 | 282 | |
dc848f2c ER |
283 | # must do this after py_postclean |
284 | # should we also symlink .pyc? in case commands are ran as root python would create .pyc file | |
285 | mv $RPM_BUILD_ROOT%{_libdir}/%{name}/Mailman/mm_cfg.pyX $RPM_BUILD_ROOT%{_sysconfdir}/mm_cfg.py | |
286 | ln -s %{_sysconfdir}/mm_cfg.py $RPM_BUILD_ROOT%{_libdir}/%{name}/Mailman/mm_cfg.py | |
287 | rm $RPM_BUILD_ROOT%{_libdir}/%{name}/Mailman/mm_cfg.py.dist | |
288 | ||
076c2f35 ER |
289 | rm -f $RPM_BUILD_ROOT%{_mandir}/README-mailman-man-pages |
290 | rm -f $RPM_BUILD_ROOT%{_mandir}/diff.arch.8 | |
9bb8ee1c | 291 | rm -f $RPM_BUILD_ROOT%{_libdir}/mailman/messages/*/LC_MESSAGES/*.po |
a5c1bef4 ER |
292 | rm -rf $RPM_BUILD_ROOT%{_libdir}/mailman/tests |
293 | ||
294 | # create dirs to package them | |
064d962f | 295 | install -d $RPM_BUILD_ROOT%{_queuedir}/{archive,bad,bounces,commands,in,news,out,retry,shunt,virgin} |
9bb8ee1c | 296 | |
e03ec2d4 AM |
297 | %clean |
298 | rm -rf $RPM_BUILD_ROOT | |
299 | ||
838e4fb7 | 300 | %pre |
45b15c94 | 301 | %groupadd -g 94 mailman |
9ddb2c4a | 302 | %useradd -u 94 -d %{_var}/lib/%{name} -s /bin/false -c "GNU Mailing List Manager" -g mailman mailman |
1941810d | 303 | |
838e4fb7 | 304 | %post |
6fe860f9 | 305 | if [ "$1" = "1" ]; then |
076c2f35 ER |
306 | if hostname=$(hostname -f 2>/dev/null); then |
307 | %{__sed} -i -e "s,YOUR.HOST.NAME.HERE,$hostname," %{_sysconfdir}/mm_cfg.py | |
308 | fi | |
309 | ||
d366fa4f | 310 | %service -q crond restart |
18e8047c | 311 | fi |
076c2f35 ER |
312 | if [ ! -f %{_sysconfdir}/adm.pw ]; then |
313 | echo 'Run "%{_libdir}/%{name}/bin/mmsitepass" to set site pass.' | |
314 | fi | |
315 | if [ ! -d /var/lib/mailman/lists/mailman ]; then | |
316 | echo 'Run "%{_libdir}/%{name}/bin/newlist mailman" to setup site-wide mailinglist.' | |
317 | fi | |
318 | if [ -f %{_var}/lib/mailman/data/last_mailman_version ]; then | |
319 | %{_libdir}/mailman/bin/update | |
320 | fi | |
2f132763 | 321 | /sbin/chkconfig --add mailman |
d366fa4f ER |
322 | if [ -f /var/lock/subsys/mailman ] && [ -d /var/spool/mailman/data ]; then |
323 | ln -sf %{_sysconfdir}/sitelist.cfg /var/spool/mailman/data/sitelist.cfg | |
4f307f1a | 324 | fi |
076c2f35 ER |
325 | if [ ! -f %{_sysconfdir}/aliases ]; then |
326 | touch %{_sysconfdir}/aliases{,.db} | |
8decd3c6 ER |
327 | chown root:mailman %{_sysconfdir}/aliases |
328 | chown mailman:mailman %{_sysconfdir}/aliases.db | |
076c2f35 ER |
329 | chmod 660 %{_sysconfdir}/aliases{,.db} |
330 | fi | |
9bb8ee1c | 331 | %service mailman restart "Mailman Qrunner Daemon" |
4f307f1a TO |
332 | |
333 | %preun | |
334 | if [ "$1" = "0" ]; then | |
d366fa4f | 335 | %service mailman stop |
4f307f1a TO |
336 | /sbin/chkconfig --del mailman |
337 | fi | |
838e4fb7 | 338 | |
339 | %postun | |
340 | if [ "$1" = "0" ]; then | |
283de5b9 | 341 | %userremove mailman |
342 | %groupremove mailman | |
d366fa4f | 343 | %service -q crond restart |
838e4fb7 | 344 | fi |
345 | ||
711ebd43 | 346 | %triggerin -- apache1 < 1.3.37-3, apache1-base |
31cccda6 ER |
347 | %webapp_register apache %{_webapp} |
348 | ||
711ebd43 | 349 | %triggerun -- apache1 < 1.3.37-3, apache1-base |
31cccda6 ER |
350 | %webapp_unregister apache %{_webapp} |
351 | ||
b97eb9ba | 352 | %triggerin -- apache < 2.2.0, apache-base |
5de7fff6 JR |
353 | %webapp_register httpd %{_webapp} |
354 | ||
b97eb9ba | 355 | %triggerun -- apache < 2.2.0, apache-base |
5de7fff6 JR |
356 | %webapp_unregister httpd %{_webapp} |
357 | ||
3ba6587c | 358 | %triggerpostun -- mailman < 1:2.1.7-2.1 |
bfa57404 | 359 | if [ -f /var/spool/cron/%{name} ]; then |
0c77cb1a | 360 | crontab -u %{name} -r |
bfa57404 TO |
361 | fi |
362 | ||
9ddb2c4a JR |
363 | if [ -f /var/lock/subsys/mailman ]; then |
364 | ln -sf %{_sysconfdir}/sitelist.cfg /var/spool/mailman/data/sitelist.cfg | |
d366fa4f | 365 | /sbin/service mailman stop 1>&2 |
9ddb2c4a JR |
366 | stopped=true |
367 | fi | |
368 | ||
5de7fff6 JR |
369 | # rescue app configs. |
370 | for i in mm_cfg.py sitelist.cfg; do | |
371 | if [ -f /etc/%{name}/$i.rpmsave ]; then | |
372 | mv -f %{_sysconfdir}/$i{,.rpmnew} | |
373 | mv -f /etc/%{name}/$i.rpmsave %{_sysconfdir}/$i | |
374 | fi | |
375 | done | |
376 | ||
9ddb2c4a JR |
377 | if [ "`getent passwd mailman | cut -d: -f6`" != "%{_var}/lib/%{name}" ]; then |
378 | echo "Fixing passwd entry" | |
379 | /usr/sbin/usermod -d %{_var}/lib/%{name} mailman | |
380 | fi | |
381 | echo "Moving data from /var/spool/mailman to /var/lib/mailman" | |
24cd3ebb | 382 | mv -f /var/spool/mailman/archives/private/* %{_var}/lib/mailman/archives/private/ |
9ddb2c4a JR |
383 | mv -f /var/spool/mailman/archives/public/* %{_var}/lib/mailman/archives/public/ |
384 | mv -f /var/spool/mailman/data/* %{_var}/lib/mailman/data/ | |
385 | mv -f /var/spool/mailman/lists/* %{_var}/lib/mailman/lists/ | |
386 | mv -f /var/spool/mailman/spam/* %{_var}/lib/mailman/spam/ | |
387 | mv -f /var/spool/mailman/logs/* %{_logdir}/ | |
388 | mv -f /var/spool/mailman/locks/* %{_lockdir}/ | |
389 | mv -f /var/spool/mailman/qfiles/* %{_queuedir}/ | |
390 | # Fix symlinks for public archives | |
391 | cd %{_var}/lib/mailman/archives/public/ | |
a5c1bef4 | 392 | for i in *; do |
9ddb2c4a JR |
393 | link=$(readlink "$i") |
394 | dn=$(dirname "$link") | |
395 | if [ "$dn" = "/var/spool/mailman/archives/private" ]; then | |
396 | ln -sf "%{_var}/lib/mailman/archives/private/$i" "$i" | |
397 | fi | |
398 | done | |
399 | cd - | |
400 | # Remove empty dirs (DON'T rm -rf here!) | |
24cd3ebb | 401 | rmdir --ignore-fail-on-non-empty /var/spool/mailman/{archives/{private,public},archives,data,lists,spam,logs,locks,qfiles} |
23ade1a9 JR |
402 | if [ -f %{_var}/lib/mailman/Mailman/mm_cfg.pyc ]; then |
403 | rm -f %{_var}/lib/mailman/Mailman/mm_cfg.pyc | |
404 | fi | |
9ddb2c4a | 405 | %{_libdir}/mailman/bin/update |
d366fa4f | 406 | if [ "$stopped" = "true" ]; then |
9ddb2c4a | 407 | rm -f /var/spool/mailman/data/sitelist.cfg |
d366fa4f | 408 | /sbin/service mailman start 1>&2 |
9ddb2c4a JR |
409 | fi |
410 | ||
5de7fff6 JR |
411 | # nuke very-old config location (this mostly for Ra) |
412 | if [ -f /etc/httpd/httpd.conf ]; then | |
413 | sed -i -e "/^Include.*%{name}.conf/d" /etc/httpd/httpd.conf | |
414 | fi | |
415 | ||
416 | # migrate from httpd (apache2) config dir | |
417 | if [ -f /etc/httpd/%{name}.conf.rpmsave ]; then | |
418 | cp -f %{_sysconfdir}/httpd.conf{,.rpmnew} | |
419 | mv -f /etc/httpd/%{name}.conf.rpmsave %{_sysconfdir}/httpd.conf | |
420 | fi | |
421 | ||
0b26fc15 JR |
422 | # migrate from httpd (apache2) config dir |
423 | if [ -f /etc/httpd/httpd.conf/90_%{name}.conf.rpmsave ]; then | |
424 | cp -f %{_sysconfdir}/httpd.conf{,.rpmnew} | |
425 | mv -f /etc/httpd/httpd.conf/90_%{name}.conf.rpmsave %{_sysconfdir}/httpd.conf | |
426 | fi | |
427 | ||
5de7fff6 JR |
428 | rm -f /etc/httpd/httpd.conf/90_%{name}.conf |
429 | /usr/sbin/webapp register httpd %{_webapp} | |
d366fa4f | 430 | %service -q httpd reload |
5de7fff6 | 431 | |
e03ec2d4 AM |
432 | %files |
433 | %defattr(644,root,root,755) | |
ad258e55 | 434 | %doc BUGS FAQ NEWS README README.CONTRIB README.NETSCAPE README.USERAGENT TODO UPGRADING INSTALL |
e5e7e1da | 435 | %doc Mailman/mm_cfg.py.dist Mailman/Defaults.py |
736c46b0 | 436 | %{_mandir}/man?/* |
31cccda6 ER |
437 | %attr(2775,root,mailman) %dir %{_sysconfdir} |
438 | %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apache.conf | |
5de7fff6 | 439 | %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/httpd.conf |
31cccda6 | 440 | %attr(644,root,mailman) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mm_cfg.py |
dc848f2c | 441 | %attr(664,root,mailman) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mm_cfg.pyc |
31cccda6 | 442 | %attr(644,root,mailman) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/sitelist.cfg |
fd555e2f | 443 | %attr(660,root,mailman) %ghost %{_sysconfdir}/aliases |
444 | %attr(660,root,mailman) %ghost %{_sysconfdir}/aliases.db | |
445 | %attr(640,root,mailman) %ghost %{_sysconfdir}/adm.pw | |
3aaf3756 | 446 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name} |
3aaf3756 | 447 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/%{name} |
1f1f1e51 | 448 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/%{name} |
838e4fb7 | 449 | |
ad258e55 | 450 | %attr(754,root,root) /etc/rc.d/init.d/%{name} |
4f307f1a | 451 | |
736c46b0 | 452 | %defattr(644,root,mailman,2775) |
9ddb2c4a JR |
453 | %dir %{_libdir}/%{name} |
454 | %dir %{_libdir}/%{name}/bin | |
ff7c645e | 455 | %dir %{_libdir}/%{name}/cgi-bin |
9ddb2c4a JR |
456 | %dir %{_libdir}/%{name}/cron |
457 | %dir %{_libdir}/%{name}/icons | |
ff7c645e | 458 | %dir %{_libdir}/%{name}/mail |
9ddb2c4a JR |
459 | %dir %{_libdir}/%{name}/scripts |
460 | %dir %{_libdir}/%{name}/templates | |
9ddb2c4a | 461 | %dir %{_libdir}/%{name}/messages |
dc848f2c ER |
462 | %dir %{_libdir}/%{name}/Mailman |
463 | ||
464 | # move to %{py_sitedir}? | |
465 | %{_libdir}/%{name}/Mailman/[A-Z_hiv]*.py[co] | |
466 | %{_libdir}/%{name}/Mailman/mm_cfg.py | |
467 | %ghost %{_libdir}/%{name}/Mailman/mm_cfg.pyc | |
468 | %{_libdir}/%{name}/Mailman/Archiver | |
469 | %{_libdir}/%{name}/Mailman/Bouncers | |
470 | %{_libdir}/%{name}/Mailman/Cgi | |
471 | %{_libdir}/%{name}/Mailman/Commands | |
472 | %{_libdir}/%{name}/Mailman/Gui | |
473 | %{_libdir}/%{name}/Mailman/Handlers | |
474 | %{_libdir}/%{name}/Mailman/Logging | |
475 | %{_libdir}/%{name}/Mailman/MTA | |
476 | %{_libdir}/%{name}/Mailman/Queue | |
477 | ||
e5e7e1da ER |
478 | %{_libdir}/%{name}/bin/*.py[co] |
479 | %attr(2755,root,mailman) %{_libdir}/%{name}/bin/add_members | |
480 | %attr(2755,root,mailman) %{_libdir}/%{name}/bin/add_nonmembers | |
481 | %attr(2755,root,mailman) %{_libdir}/%{name}/bin/arch | |
482 | %attr(2755,root,mailman) %{_libdir}/%{name}/bin/b4b5-archfix | |
483 | %attr(2755,root,mailman) %{_libdir}/%{name}/bin/change_pw | |
484 | %attr(2755,root,mailman) %{_libdir}/%{name}/bin/check_db | |
485 | %attr(2755,root,mailman) %{_libdir}/%{name}/bin/check_perms | |
486 | %attr(2755,root,mailman) %{_libdir}/%{name}/bin/cleanarch | |
487 | %attr(2755,root,mailman) %{_libdir}/%{name}/bin/clone_member | |
488 | %attr(2755,root,mailman) %{_libdir}/%{name}/bin/config_list | |
489 | %attr(2755,root,mailman) %{_libdir}/%{name}/bin/discard | |
490 | %attr(2755,root,mailman) %{_libdir}/%{name}/bin/dumpdb | |
491 | %attr(2755,root,mailman) %{_libdir}/%{name}/bin/find_member | |
492 | %attr(2755,root,mailman) %{_libdir}/%{name}/bin/genaliases | |
493 | %attr(2755,root,mailman) %{_libdir}/%{name}/bin/inject | |
494 | %attr(2755,root,mailman) %{_libdir}/%{name}/bin/list_admins | |
495 | %attr(2755,root,mailman) %{_libdir}/%{name}/bin/list_lists | |
496 | %attr(2755,root,mailman) %{_libdir}/%{name}/bin/list_members | |
497 | %attr(2755,root,mailman) %{_libdir}/%{name}/bin/list_owners | |
498 | %attr(2755,root,mailman) %{_libdir}/%{name}/bin/mailmanctl | |
499 | %attr(2755,root,mailman) %{_libdir}/%{name}/bin/mmsitepass | |
500 | %attr(2755,root,mailman) %{_libdir}/%{name}/bin/newlist | |
501 | %attr(2755,root,mailman) %{_libdir}/%{name}/bin/qrunner | |
502 | %attr(2755,root,mailman) %{_libdir}/%{name}/bin/rb-archfix | |
503 | %attr(2755,root,mailman) %{_libdir}/%{name}/bin/remove_members | |
504 | %attr(2755,root,mailman) %{_libdir}/%{name}/bin/rmlist | |
505 | %attr(2755,root,mailman) %{_libdir}/%{name}/bin/show_qfiles | |
506 | %attr(2755,root,mailman) %{_libdir}/%{name}/bin/subscribe_list | |
507 | %attr(2755,root,mailman) %{_libdir}/%{name}/bin/sync_members | |
508 | %attr(2755,root,mailman) %{_libdir}/%{name}/bin/transcheck | |
509 | %attr(2755,root,mailman) %{_libdir}/%{name}/bin/unshunt | |
510 | %attr(2755,root,mailman) %{_libdir}/%{name}/bin/update | |
511 | %attr(2755,root,mailman) %{_libdir}/%{name}/bin/version | |
512 | %attr(2755,root,mailman) %{_libdir}/%{name}/bin/withlist | |
513 | ||
514 | %attr(2755,root,mailman) %{_libdir}/%{name}/cgi-bin/admin | |
515 | %attr(2755,root,mailman) %{_libdir}/%{name}/cgi-bin/admindb | |
516 | %attr(2755,root,mailman) %{_libdir}/%{name}/cgi-bin/confirm | |
517 | %attr(2755,root,mailman) %{_libdir}/%{name}/cgi-bin/create | |
518 | %attr(2755,root,mailman) %{_libdir}/%{name}/cgi-bin/edithtml | |
519 | %attr(2755,root,mailman) %{_libdir}/%{name}/cgi-bin/listinfo | |
520 | %attr(2755,root,mailman) %{_libdir}/%{name}/cgi-bin/options | |
521 | %attr(2755,root,mailman) %{_libdir}/%{name}/cgi-bin/private | |
522 | %attr(2755,root,mailman) %{_libdir}/%{name}/cgi-bin/rmlist | |
523 | %attr(2755,root,mailman) %{_libdir}/%{name}/cgi-bin/roster | |
524 | %attr(2755,root,mailman) %{_libdir}/%{name}/cgi-bin/subscribe | |
525 | ||
526 | %attr(755,root,root) %{_libdir}/%{name}/cron/bumpdigests | |
527 | %attr(755,root,root) %{_libdir}/%{name}/cron/checkdbs | |
528 | %attr(755,root,root) %{_libdir}/%{name}/cron/cull_bad_shunt | |
529 | %attr(755,root,root) %{_libdir}/%{name}/cron/disabled | |
530 | %attr(755,root,root) %{_libdir}/%{name}/cron/gate_news | |
531 | %attr(755,root,root) %{_libdir}/%{name}/cron/mailpasswds | |
532 | %attr(755,root,root) %{_libdir}/%{name}/cron/nightly_gzip | |
533 | %attr(755,root,root) %{_libdir}/%{name}/cron/senddigests | |
ff7c645e JR |
534 | %{_libdir}/%{name}/cron/crontab.in |
535 | %{_libdir}/%{name}/cron/paths.py* | |
9ddb2c4a JR |
536 | %{_libdir}/%{name}/scripts/* |
537 | %{_libdir}/%{name}/icons/* | |
e5e7e1da | 538 | %attr(2755,root,mailman) %{_libdir}/%{name}/mail/mailman |
9ddb2c4a | 539 | %{_libdir}/%{name}/templates/* |
9ddb2c4a | 540 | %{_libdir}/%{name}/messages/* |
9ddb2c4a | 541 | |
ff7c645e JR |
542 | %dir %{_var}/lib/%{name} |
543 | %dir %{_var}/lib/%{name}/archives | |
e5e7e1da | 544 | %dir %attr(2771,root,mailman) %{_var}/lib/%{name}/archives/private |
ff7c645e | 545 | %dir %{_var}/lib/%{name}/archives/public |
076c2f35 ER |
546 | %dir %{_var}/lib/%{name}/data |
547 | %ghost %{_var}/lib/%{name}/data/last_mailman_version | |
548 | %{_var}/lib/%{name}/data/sitelist.cfg | |
ff7c645e JR |
549 | %dir %{_var}/lib/%{name}/lists |
550 | %dir %{_var}/lib/%{name}/spam | |
551 | %dir %{_queuedir} | |
a5c1bef4 | 552 | %dir %{_queuedir}/* |
ad258e55 PG |
553 | %dir %{_lockdir} |
554 | %dir %{_logdir} | |
555 | %dir %{_logarchdir} | |
556 | %dir %{_piddir} | |
7d7f0b99 JR |
557 | |
558 | %files sendmail | |
559 | %defattr(644,root,root,755) | |
560 | /etc/smrsh/%{name} |