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