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