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