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