]> git.pld-linux.org Git - packages/ecartis.git/blame_incremental - ecartis.spec
- tabs in preamble
[packages/ecartis.git] / ecartis.spec
... / ...
CommitLineData
1#
2# TODO:
3# - webapps or /usr/lib/cgi-bin
4# - %bcond_without doc
5# - look at permissions. why all by default have access to lists, their config,
6# users...
7
8%define _ver 1.0.0
9%define _snap 20060813
10
11Summary: Ecartis mailing list manager
12Summary(pl.UTF-8): Zarządca list dyskusyjnych Ecartis
13Name: ecartis
14Version: %{_ver}.%{_snap}
15Release: 0.1
16License: GPL v2
17Group: Applications/Mail
18Source0: ftp://ftp.ecartis.org/pub/ecartis/snapshots/tar/%{name}-%{_ver}-snap%{_snap}.tar.gz
19# Source0-md5: 198e045b5b64aecee50e6c3fc69a42f4
20Source1: %{name}.logrotate
21#Original taken from: http://www.misiek.eu.org/ipv6/listar-0.129a-ipv6-20000915.patch.gz
22Patch0: %{name}-ipv6.patch
23Patch1: %{name}-conf.patch
24Patch2: %{name}-paths.patch
25URL: http://www.ecartis.org/
26BuildRequires: /usr/bin/pdflatex
27BuildRequires: latex2html
28BuildRequires: perl-base
29BuildRequires: rpmbuild(macros) >= 1.202
30BuildRequires: tetex-dvips
31BuildRequires: tetex-latex
32BuildRequires: tetex-pdftex
33BuildRequires: w3m
34Requires(post): /bin/hostname
35Requires(post): fileutils
36Requires(post): grep
37Requires(postun): /usr/sbin/groupdel
38Requires(postun): /usr/sbin/userdel
39Requires(pre): /bin/id
40Requires(pre): /usr/bin/getgid
41Requires(pre): /usr/sbin/groupadd
42Requires(pre): /usr/sbin/useradd
43Provides: group(ecartis)
44Provides: listar
45Provides: user(ecartis)
46Obsoletes: listar
47BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
48
49%define _ecartisdir /usr/lib/ecartis
50%define _ecartisdata /var/lib/ecartis
51%define _cgidir /home/services/httpd/cgi-bin
52
53%description
54Ecartis is a modular mailing list manager; all its functionality is
55encapsulated in individual 'epm' (Ecartis Plugin Module) files. This
56allows new commands and functionality to be added on the fly. Ecartis
57has several useful features, including the ability to have 'flags' set
58on user accounts (similar to L-soft Listserv), and a very secure
59remote administration method over e-mail.
60
61Errors to this package should be reported to bugs@ecartis.org or via
62the web at <http://bugs.ecartis.org/ecartis/>.
63
64NOTE: This package used to be named Listar, but has recently changed
65name due to trademark issues.
66
67%description -l pl.UTF-8
68Ecartis jest modułowym narzędziem do zarządzania listami dyskusyjnymi.
69Cała jego funkcjonalność zawiera się w pojedynczych plikach 'epm'
70(Ecartis Plugin Module), dzięki czemu można w locie dodawać nowe
71polecenia i funkcjonalność. Ecartis ma wiele przydatnych funkcji, np.
72możliwość ustawienia 'flag' na kontach użytkowników (podobnie jak w
73programie L-soft Listserv), i bardzo bezpieczną metodę zdalnej
74administracji przy użyciu poczty elektronicznej.
75
76Informacje o błędach w pakiecie należy wysyłać na adres
77bugs@ecartis.org lub zgłaszać na stronie
78<http://bugs.ecartis.org/ecartis/>.
79
80UWAGA: Pakiet nazywał się kiedyś Listar, jednak nazwa została
81zmieniona ze względu na problemy ze znakiem handlowym.
82
83%package cgi
84Summary: Web interface for Ecartis
85Summary(pl.UTF-8): Web interfejs dla Ecartis
86Group: Applications/Mail
87Requires: %{name} = %{version}-%{release}
88Requires: webserver
89Obsoletes: listar-cgi
90
91%description cgi
92ecartis-cgi program, which provides a web-based front-end for your
93Ecartis mailing lists.
94
95%description cgi -l pl.UTF-8
96Program ecartis-cgi, który jest interfejsem WWW do programu
97zarządzającego Ecartis.
98
99%prep
100%setup -q -n %{name}-%{_ver}
101%patch0 -p1
102%patch1 -p1
103%patch2 -p1
104
105%build
106TEXINPUTS=".:/usr/share/latex2html/texinputs:"; export TEXINPUTS
107
108perl -pi -e 's@include templates@include %{_ecartisdata}/templates@' templates/*.lsc
109
110%{__make} -C src \
111 -fMakefile.dist \
112 WFLAGS="%{rpmcflags} -Wall"
113
114%{__make} -C documentation \
115 LATEX=%{_bindir}/latex \
116 PDFLATEX=%{_bindir}/pdflatex \
117 DVIPS=%{_bindir}/dvips \
118 W3M=%{_bindir}/w3m \
119 LATEX2HTML=%{_bindir}/latex2html \
120 WFLAGS="%{rpmcflags} -Wall"
121
122%install
123rm -rf $RPM_BUILD_ROOT
124install -d $RPM_BUILD_ROOT%{_sysconfdir}/{%{name},logrotate.d,cron.daily} \
125 $RPM_BUILD_ROOT%{_ecartisdata}/{archive,queue,lists/{test/text,SITEDATA/users}} \
126 $RPM_BUILD_ROOT%{_ecartisdir}/{modules,scripts,templates} \
127 $RPM_BUILD_ROOT{%{_cgidir},/var/log}
128
129%{__make} -C src install \
130 -fMakefile.dist
131
132install %{name} $RPM_BUILD_ROOT%{_ecartisdir}
133
134install modules/*.lpm $RPM_BUILD_ROOT%{_ecartisdir}/modules
135install scripts/* $RPM_BUILD_ROOT%{_ecartisdir}/scripts
136install ecartis.cfg.dist $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/ecartis.cfg
137install ecartis.aliases.dist $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/ecartis.aliases
138install banned $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/banned
139install spam-regexp.sample $RPM_BUILD_ROOT%{_ecartisdir}/spam-regexp.sample
140install templates/*.lsc $RPM_BUILD_ROOT%{_ecartisdir}/templates
141install ecartis.hlp $RPM_BUILD_ROOT%{_ecartisdata}/ecartis.hlp
142install -D lists/test/text/* $RPM_BUILD_ROOT%{_ecartisdata}/lists/test/text
143
144install %{SOURCE1} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}
145
146> $RPM_BUILD_ROOT%{_var}/log/%{name}.log
147> $RPM_BUILD_ROOT%{_ecartisdata}/lists/SITEDATA/cookies
148
149cat << EOF > $RPM_BUILD_ROOT%{_cgidir}/ecartisgate.cgi
150#!/bin/sh
151%{_ecartisdir}/%{name} -lsg2
152EOF
153
154cat << EOF > $RPM_BUILD_ROOT/etc/cron.daily/%{name}
155%{_ecartisdir}/%{name} -procbounce
156%{_ecartisdir}/%{name} -procdigest
157EOF
158
159# For compatibility with Listar:
160ln -sf %{_ecartisdir}/%{name} $RPM_BUILD_ROOT%{_ecartisdir}/listar
161ln -sf %{_cgidir}/ecartisgate.cgi $RPM_BUILD_ROOT%{_cgidir}/listargate.cgi
162
163%clean
164rm -rf $RPM_BUILD_ROOT
165
166%pre
167%groupadd -g 64 ecartis
168%useradd -u 64 -d %{_ecartisdir} -s /bin/false -c "Ecartis User" -g ecartis ecartis
169
170%postun
171if [ "$1" = "0" ]; then
172 %userremove ecartis
173 %groupremove ecartis
174fi
175
176%post
177# alias:
178umask 022
179if [ -f /etc/mail/aliases ]; then
180 if [ -e /etc/smrsh ]; then
181 if ! grep -q "^%{name}:" /etc/mail/aliases; then
182 echo "%{name}: \"|/etc/smrsh/ecartis\"" >> /etc/mail/aliases
183 newaliases || :
184 fi
185 else
186 if ! grep -q "^%{name}:" /etc/mail/aliases; then
187 echo "%{name}: \"|%{_ecartisdir}/%{name}\"" >> /etc/mail/aliases
188 newaliases || :
189 fi
190 fi
191fi
192
193# mailname:
194if [ ! -f /etc/mail/mailname -a -d /etc/mail -a -x /bin/hostname ]; then
195 hostname -f > /etc/mail/mailname
196fi
197
198# Detect SMRSH
199if [ -e /etc/smrsh -a ! -e /etc/smrsh/ecartis ]; then
200 echo "#!/bin/sh" > /etc/smrsh/ecartis
201 echo "%{_ecartisdir}/ecartis \$@" >> /etc/smrsh/ecartis
202 chmod ug+rx /etc/smrsh/ecartis
203
204 echo "Your installation has been detected to have SMRSH, the SendMail"
205 echo "Restricted SHell, installed. If this is your first install, you"
206 echo "will want to: "
207 echo ""
208 echo "1) add 'listserver-bin-dir = /etc/smrsh' to ecartis.cfg"
209 echo "2) change the address for Ecartis in the aliases file to be"
210 echo " /etc/smrsh/ecartis instead of /home/ecartis/ecartis"
211 chmod a+x /etc/smrsh/ecartis
212fi
213
214# Force the %{_ecartisdir} directory permissions to something sane
215chmod 711 %{_ecartisdir}
216
217# Run upgrade
218echo "Running \"%{_ecartisdir}/%{name} -upgrade\" now... "
219%{_ecartisdir}/%{name} -upgrade
220echo "done."
221exit 0
222
223%triggerpostun -- listar
224echo "Upgrading from listar..."
225if [ -e /etc/smrsh ]; then
226 ln -sf /etc/smrsh/ecartis /etc/smrsh/listar
227fi
228echo "Copying lists from listar directories"
229cp -R /var/lib/listar/lists %{_ecartisdata}
230chown -R ecartis:ecartis %{_ecartisdata}
231if [ -e /etc/smrsh ]; then
232 echo "Making link /etc/smrsh/listar to /etc/smrsh/ecartis:"
233 ln -sf ecartis /etc/smrsh/listar
234fi
235
236%files
237%defattr(644,root,root,755)
238%doc ECARTIS.TODO NOTE README* src/{CHANGELOG,CREDITS} documentation/ecartis.txt
239%attr(750,root,root) /etc/cron.daily/%{name}
240%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/%{name}
241%attr(775,ecartis,ecartis) %dir %{_sysconfdir}/%{name}
242%attr(644,root,ecartis) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/*
243%attr(640,ecartis,ecartis) %ghost /var/log/%{name}.log
244%attr(711,ecartis,ecartis) %dir %{_ecartisdir}
245%attr(750,ecartis,ecartis) %dir %{_ecartisdir}/templates
246%attr(750,ecartis,ecartis) %dir %{_ecartisdir}/modules
247%attr(750,ecartis,ecartis) %dir %{_ecartisdir}/scripts
248%attr(755,ecartis,ecartis) %dir %{_ecartisdata}
249%attr(751,ecartis,ecartis) %dir %{_ecartisdata}/archive
250%attr(755,ecartis,ecartis) %dir %{_ecartisdata}/lists
251%attr(750,ecartis,ecartis) %dir %{_ecartisdata}/queue
252%attr(750,ecartis,ecartis) %{_ecartisdata}/*.hlp
253%attr(640,root ,ecartis) %{_ecartisdir}/spam-regexp.sample
254%attr(750,ecartis,ecartis) %{_ecartisdir}/modules/*
255%attr(750,ecartis,ecartis) %{_ecartisdir}/scripts/*
256%attr(4755,ecartis,ecartis) %{_ecartisdir}/ecartis
257
258%files cgi
259%defattr(644,root,root,755)
260%doc src/modules/lsg2/*.txt
261%attr(755,root, root) %{_cgidir}/*.cgi
262%attr(775,root,ecartis) %dir %{_ecartisdata}/lists/SITEDATA
263%attr(660,root,ecartis) %{_ecartisdata}/lists/SITEDATA/cookies
264%{_ecartisdir}/templates/*.lsc
This page took 0.10527 seconds and 4 git commands to generate.