2 # Make freshclam (script and daemon)
3 # log nicely via syslog to /var/log/freshclam.log
5 Summary: An anti-virus utility for Unix
6 Summary(pl): Antywirusowe narzêdzie dla Uniksów
13 Source0: http://dl.sourceforge.net/clamav/%{name}-%{_ver}.tar.gz
14 # Source0-md5: 3986d26d2fd17bcd133def5d73665b0f
16 Source2: %{name}.sysconfig
17 Source4: %{name}-cron-updatedb
18 Source5: %{name}.logrotate
19 # Remember to update date on each rebuild!!
20 %define database_version 20040416
21 Source6: http://www.clamav.net/database/daily.cvd
22 # Source6-md5: 2a95e0986a83da6ada14da8bc1f65ac9
23 Source7: http://www.clamav.net/database/main.cvd
24 # Source7-md5: e85d9a1c57005458c3208bf94a888706
25 Patch0: %{name}-pld_config.patch
26 Patch1: %{name}-no_auto_libwrap.patch
27 URL: http://www.clamav.net/
28 BuildRequires: autoconf
29 BuildRequires: automake
30 BuildRequires: zlib-devel
31 BuildRequires: gmp-devel
32 Requires(post,preun): /sbin/chkconfig
33 Requires: %{name}-libs = %{version}-%{release}
35 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
38 Clam Antivirus is a powerful anti-virus scanner for Unix. It supports
39 AMaViS, compressed files, uses the virus database from
40 OpenAntivirus.org, and includes a program for auto-updating. The
41 scanner is multithreaded, written in C, and POSIX compliant.
44 Clam Antivirus jest potê¿nym skanerem antywirusowym dla systemów
45 uniksowych. Wspiera on AMaViSa, skompresowane pliki, u¿ywa bazy
46 wirusów z OpenAntivirus.org, i posiada system automatycznej
47 aktualizacji. Skaner jest wielow±tkowy, napisany w C i zgodny z
51 Summary: Shared libraries for clamav
52 Summary(pl): Biblioteki dzielone clamav
56 Shared libraries for clamav.
58 %description libs -l pl
59 Biblioteki dzielone clamav.
62 Summary: clamav - Development header files and libraries
63 Summary(pl): clamav - Pliki nag³ówkowe i biblioteki dla programistów
64 Group: Development/Libraries
65 Requires: %{name}-libs = %{version}-%{release}
68 This package contains the development header files and libraries
69 necessary to develop clamav client applications.
71 %description devel -l pl
72 Pliki nag³ówkowe i biblioteki konieczne do kompilacji aplikacji
76 Summary: clamav static libraris
77 Summary(pl): Biblioteki statyczne clamav
78 Group: Development/Libraries
79 Requires: %{name}-devel = %{version}-%{release}
82 clamav static libraries.
84 %description static -l pl
85 Biblioteki statyczne clamav.
88 Summary: Virus database for clamav
89 Summary(pl): Bazy wirusów dla clamav
91 Version: %{version}.%{database_version}
95 Virus database for clamav (updated %{database_version}).
97 %description database -l pl
98 Bazy wirusów dla clamav (aktualizowana %{database_version}).
101 %setup -q -n %{name}-%{_ver}
111 --with-dbdir=/var/lib/%{name}
115 rm -rf $RPM_BUILD_ROOT
116 install -d $RPM_BUILD_ROOT%{_sysconfdir}/{rc.d/init.d,sysconfig,logrotate.d} \
117 $RPM_BUILD_ROOT{%{_sysconfdir}/cron.d,%{_var}/log}
120 DESTDIR=$RPM_BUILD_ROOT
122 cat <<EOF >$RPM_BUILD_ROOT%{_sysconfdir}/cron.d/%{name}
123 5 * * * * root %{_sbindir}/clamav-cron-updatedb
127 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/clamd
128 install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/clamd
129 install %{SOURCE4} $RPM_BUILD_ROOT%{_sbindir}/clamav-cron-updatedb
130 install etc/*.conf $RPM_BUILD_ROOT%{_sysconfdir}/
131 install %{SOURCE5} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}
132 install %{SOURCE6} $RPM_BUILD_ROOT/var/lib/%{name}/
133 install %{SOURCE7} $RPM_BUILD_ROOT/var/lib/%{name}/
135 # NOTE: clamd uses sane rights to it's clamd.pid file
136 # So better keep it dir
137 # If it is fixed use of dir will be unecesary
138 install -d $RPM_BUILD_ROOT%{_var}/run/%{name}
139 touch $RPM_BUILD_ROOT%{_var}/log/freshclam.log
142 rm -rf $RPM_BUILD_ROOT
144 %triggerin -- amavis-ng
145 AMAVIS=$(/usr/bin/getgid amavis)
147 if [ $RESULT -eq 0 ]; then
148 /usr/sbin/usermod -G amavis clamav 1>&2 > /dev/null
149 echo "adding clamav to amavis group GID=$AMAVIS"
152 %triggerin -- amavisd-new
153 AMAVIS=$(/usr/bin/getgid amavis)
155 if [ $RESULT -eq 0 ]; then
156 /usr/sbin/usermod -G amavis clamav 1>&2 > /dev/null
157 echo "adding clamav to amavis group GID=$AMAVIS"
160 %triggerin -- amavisd
161 AMAVIS=$(/usr/bin/getgid amavis)
163 if [ $RESULT -eq 0 ]; then
164 /usr/sbin/usermod -G amavis clamav 1>&2 > /dev/null
165 echo "adding clamav to amavis group GID=$AMAVIS"
170 if [ -n "`getgid clamav`" ]; then
171 if [ "`getgid clamav`" != "43" ]; then
172 echo "Warning: group clamav doesn't have gid=43. Correct this before installing clamav" 1>&2
176 echo "Adding group clamav GID=43"
177 /usr/sbin/groupadd -g 43 -r -f clamav
179 if [ -n "`id -u clamav 2>/dev/null`" ]; then
180 if [ "`id -u clamav`" != "43" ]; then
181 echo "Warning: user clamav doesn't have uid=43. Correct this before installing clamav" 1>&2
185 echo "Adding user clamav UID=43"
186 /usr/sbin/useradd -u 43 -r -d /tmp -s /bin/false -c "Clam Anti Virus Checker" -g clamav clamav 1>&2
190 /sbin/chkconfig --add clamd
191 if [ -f /var/lock/subsys/clamd ]; then
192 /etc/rc.d/init.d/clamd restart >&2
194 echo "Run \"/etc/rc.d/init.d/clamd start\" to start Clam Antivirus daemon." >&2
196 touch %{_var}/log/freshclam.log
197 chown clamav:root %{_var}/log/freshclam.log
198 chmod 640 %{_var}/log/freshclam.log
201 if [ "$1" = "0" ]; then
202 if [ -f /var/lock/subsys/clamd ]; then
203 /etc/rc.d/init.d/clamd stop
205 /sbin/chkconfig --del clamd
209 if [ "$1" = "0" ]; then
210 echo "Removing user clamav"
211 /usr/sbin/userdel clamav
212 echo "Removing group clamav"
213 /usr/sbin/groupdel clamav
216 %post libs -p /sbin/ldconfig
217 %postun libs -p /sbin/ldconfig
220 %defattr(644,root,root,755)
221 %doc AUTHORS ChangeLog FAQ NEWS README TODO docs/html/
222 %attr(755,root,root) %{_bindir}/*
223 %attr(755,root,root) %{_sbindir}/*
224 %attr(755,clamav,root) %dir /var/lib/%{name}
225 #%%attr(640,clamav,root) %ghost %{_var}/log/%{name}.log
226 %attr(640,clamav,root) %ghost %{_var}/log/freshclam.log
227 %attr(750,clamav,clamav) %dir %{_var}/run/%{name}
229 %attr(640,root,root) %{_sysconfdir}/cron.d/%{name}
230 %attr(644,root,root) %config(noreplace) %verify(not md5 size mtime) /etc/clamav.conf
231 %attr(644,root,root) %config(noreplace) %verify(not md5 size mtime) /etc/freshclam.conf
233 %attr(754,root,root) /etc/rc.d/init.d/clamd
234 %attr(640,root,root) %config(noreplace) %verify(not md5 size mtime) /etc/sysconfig/clamd
235 %attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/logrotate.d/clamav
239 %defattr(644,root,root,755)
240 %attr(755,root,root) %{_libdir}/lib*.so.*.*
243 %defattr(644,root,root,755)
244 %attr(755,root,root) %{_libdir}/lib*.so
249 %defattr(644,root,root,755)
253 %defattr(644,root,root,755)
254 %attr(644,clamav,root) %verify(not md5 size mtime) /var/lib/%{name}/*.cvd