2 # Make freshclam (script and daemon)
4 Summary: An anti-virus utility for Unix
5 Summary(pl): Antywirusowe narzêdzie dla Uniksów
11 Source0: http://dl.sourceforge.net/clamav/%{name}-%{version}.tar.gz
12 # Source0-md5: 2c85b7957eba9fd9e9ff8c2537ae006f
14 Source2: %{name}.sysconfig
15 Source4: %{name}-cron-updatedb
16 Source5: %{name}.logrotate
17 # Remember to update date after databases upgrade
18 %define database_version 20040731
19 Source6: http://www.clamav.net/database/daily.cvd
20 # Source6-md5: 8aa799fff39b3dd7c36a7dd796890b66
21 Source7: http://www.clamav.net/database/main.cvd
22 # Source7-md5: fb569320447dff5b22acdbec2dbc5772
23 Source8: %{name}-post-updatedb
24 Patch0: %{name}-pld_config.patch
25 Patch1: %{name}-no_auto_libwrap.patch
26 URL: http://www.clamav.net/
27 BuildRequires: autoconf
28 BuildRequires: automake
29 BuildRequires: gmp-devel
30 BuildRequires: zlib-devel
31 Requires(post,preun): /sbin/chkconfig
32 Requires: %{name}-libs = %{version}-%{release}
34 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
37 Clam Antivirus is a powerful anti-virus scanner for Unix. It supports
38 AMaViS, compressed files, on-access scanning and includes a program
39 for auto-updating with support for digital signatures.
40 The virus database has over 20000 viruses, worms and trojans signatures.
41 The 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, skanowanie "on-access"
46 i posiada system bezpiecznej, automatycznej aktualizacji.
47 Baza wirusów zawiera ponad 20000 sygnatur. Skaner jest wielow±tkowy,
48 napisany w C i zgodny z POSIXem.
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}).
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}/
134 install %{SOURCE8} $RPM_BUILD_ROOT%{_sbindir}
136 # NOTE: clamd uses sane rights to it's clamd.pid file
137 # So better keep it dir
138 # If it is fixed use of dir will be unecesary
139 install -d $RPM_BUILD_ROOT%{_var}/run/%{name}
141 touch $RPM_BUILD_ROOT%{_var}/log/freshclam.log
144 rm -rf $RPM_BUILD_ROOT
146 %triggerin -- amavis-ng
147 AMAVIS=$(/usr/bin/getgid amavis)
149 if [ $RESULT -eq 0 ]; then
150 /usr/sbin/usermod -G amavis clamav 1>&2 > /dev/null
151 echo "adding clamav to amavis group GID=$AMAVIS"
154 %triggerin -- amavisd-new
155 AMAVIS=$(/usr/bin/getgid amavis)
157 if [ $RESULT -eq 0 ]; then
158 /usr/sbin/usermod -G amavis clamav 1>&2 > /dev/null
159 echo "adding clamav to amavis group GID=$AMAVIS"
162 %triggerin -- amavisd
163 AMAVIS=$(/usr/bin/getgid amavis)
165 if [ $RESULT -eq 0 ]; then
166 /usr/sbin/usermod -G amavis clamav 1>&2 > /dev/null
167 echo "adding clamav to amavis group GID=$AMAVIS"
172 if [ -n "`getgid clamav`" ]; then
173 if [ "`getgid clamav`" != "43" ]; then
174 echo "Warning: group clamav doesn't have gid=43. Correct this before installing clamav" 1>&2
178 echo "Adding group clamav GID=43"
179 /usr/sbin/groupadd -g 43 -r -f clamav
181 if [ -n "`id -u clamav 2>/dev/null`" ]; then
182 if [ "`id -u clamav`" != "43" ]; then
183 echo "Warning: user clamav doesn't have uid=43. Correct this before installing clamav" 1>&2
187 echo "Adding user clamav UID=43"
188 /usr/sbin/useradd -u 43 -r -d /tmp -s /bin/false -c "Clam Anti Virus Checker" -g clamav clamav 1>&2
192 /sbin/chkconfig --add clamd
193 if [ -f /var/lock/subsys/clamd ]; then
194 /etc/rc.d/init.d/clamd restart >&2
196 echo "Run \"/etc/rc.d/init.d/clamd start\" to start Clam Antivirus daemon." >&2
198 touch %{_var}/log/freshclam.log
199 chown clamav:root %{_var}/log/freshclam.log
200 chmod 640 %{_var}/log/freshclam.log
203 if [ "$1" = "0" ]; then
204 if [ -f /var/lock/subsys/clamd ]; then
205 /etc/rc.d/init.d/clamd stop
207 /sbin/chkconfig --del clamd
211 if [ "$1" = "0" ]; then
212 echo "Removing user clamav"
213 /usr/sbin/userdel clamav
214 echo "Removing group clamav"
215 /usr/sbin/groupdel clamav
218 %post libs -p /sbin/ldconfig
219 %postun libs -p /sbin/ldconfig
221 %post database -p %{_sbindir}/%{name}-post-updatedb
224 %defattr(644,root,root,755)
225 %doc AUTHORS ChangeLog FAQ NEWS README TODO docs/html/
226 %attr(755,root,root) %{_bindir}/*
227 %attr(755,root,root) %{_sbindir}/*
228 %attr(755,clamav,root) %dir /var/lib/%{name}
229 %attr(640,clamav,root) %ghost %{_var}/log/freshclam.log
230 %attr(750,clamav,clamav) %dir %{_var}/run/%{name}
232 %attr(640,root,root) %{_sysconfdir}/cron.d/%{name}
233 %attr(644,root,root) %config(noreplace) %verify(not md5 size mtime) /etc/clamav.conf
234 %attr(644,root,root) %config(noreplace) %verify(not md5 size mtime) /etc/freshclam.conf
236 %attr(754,root,root) /etc/rc.d/init.d/clamd
237 %attr(640,root,root) %config(noreplace) %verify(not md5 size mtime) /etc/sysconfig/clamd
238 %attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/logrotate.d/clamav
242 %defattr(644,root,root,755)
243 %attr(755,root,root) %{_libdir}/lib*.so.*.*
246 %defattr(644,root,root,755)
247 %attr(755,root,root) %{_libdir}/lib*.so
250 %{_pkgconfigdir}/*.pc
253 %defattr(644,root,root,755)
257 %defattr(644,root,root,755)
258 %attr(644,clamav,root) %verify(not md5 size mtime) /var/lib/%{name}/*.cvd