# TODO:
-# - Make freshclam (script and daemon)
-# - trigger for 0.90 config
+# - Make freshclam package (script and daemon)
#
# Conditional build:
%bcond_without milter # build without milter subpackage
-%bcond_without database # build without databases subpackage
%bcond_with curl # enable curl support
#
-%define _ver 0.90
-%define _rc rc2
-%define _rel 0.1
+%define _rc rc2
+%define _rel 2
Summary: An anti-virus utility for Unix
Summary(pl): Narzêdzie antywirusowe dla Uniksów
Name: clamav
-Version: %{_ver}
+Version: 0.90
Release: 0.%{_rc}.%{_rel}
Epoch: 0
License: GPL
Source3: %{name}-milter.init
Source4: %{name}-cron-updatedb
Source5: %{name}.logrotate
-%if %{with database}
-# Remember to update date after databases upgrade
-%define database_version 20060808
-Source6: http://db.local.clamav.net/daily.cvd
-# Source6-md5: 03dfca1179e8209fa9ece6e75025d72d
-Source7: http://db.local.clamav.net/main.cvd
-# Source7-md5: 258f99d2893c66c1584dd9a52a237c75
Source8: %{name}-post-updatedb
-%endif # database
Source9: %{name}-milter.sysconfig
Patch0: %{name}-pld_config.patch
Patch1: %{name}-no_auto_libwrap.patch
Clam Antivirus is a powerful anti-virus scanner for Unix. It supports
AMaViS, compressed files, on-access scanning and includes a program
for auto-updating with support for digital signatures. The virus
-database has over 34000 viruses, worms and trojans signatures. The
+database has over 85387 viruses, worms and trojans signatures. The
scanner is multithreaded, written in C, and POSIX compliant.
%description -l pl
Clam Antivirus jest potê¿nym skanerem antywirusowym dla systemów
uniksowych. Wspiera on AMaViSa, skompresowane pliki, skanowanie
"on-access" i posiada system bezpiecznej, automatycznej aktualizacji.
-Baza wirusów zawiera ponad 34000 sygnatur. Skaner jest wielow±tkowy,
+Baza wirusów zawiera ponad 85387 sygnatur. Skaner jest wielow±tkowy,
napisany w C i zgodny z POSIXem.
%package libs
%description static -l pl
Biblioteki statyczne clamav.
-%package database
-Summary: Virus database for clamav
-Summary(pl): Bazy wirusów dla clamav
-Version: %{_ver}.%{database_version}
-Group: Applications/Databases
-Requires: %{name}
-
-%description database
-Virus database for clamav (updated %{database_version}).
-
-%description database -l pl
-Bazy wirusów dla clamav (aktualizowana %{database_version}).
-
%prep
-%setup -q %{?_rc:-n %{name}-%{_ver}%{_rc}}
+%setup -q %{?_rc:-n %{name}-%{version}%{_rc}}
%patch0 -p1
%patch1 -p1
%patch2 -p1
install etc/*.conf $RPM_BUILD_ROOT%{_sysconfdir}
install %{SOURCE5} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}
-%if %{with database}
-install %{SOURCE6} $RPM_BUILD_ROOT/var/lib/%{name}
-install %{SOURCE7} $RPM_BUILD_ROOT/var/lib/%{name}
install %{SOURCE8} $RPM_BUILD_ROOT%{_sbindir}
-%else
-rm -f $RPM_BUILD_ROOT/var/lib/%{name}/{main,daily}.cvd
-%endif
# NOTE: clamd uses sane rights to it's clamd.pid file
# So better keep it dir
mv -f /etc/clamd.conf /etc/clamd.conf.rpmnew
mv -f /etc/clamav.conf.rpmsave /etc/clamd.conf
echo "Changing config location in freshclam config"
- sed -i -e 's/clamav.conf/clamd.conf/' /etc/freshclam.conf
+ %{__sed} -i -e 's/clamav.conf/clamd.conf/' /etc/freshclam.conf
fi
+%triggerpostun -- %{name} < 0.90-0.rc2.0.10
+%{__cp} -f /etc/clamd.conf{,.rpmsave}
+%{__sed} -i -e '
+ s,^LogSyslog$,& yes,
+ s,^FixStaleSocket$,& yes,
+ s,^AllowSupplementaryGroups$,& yes,
+ s,^ClamukoScanOnOpen$,& yes,
+ s,^ClamukoScanOnClose$,& yes,
+ s,^ClamukoScanOnExec$,& yes,
+' /etc/clamd.conf
+%banner -e %{name}-0.90 <<EOF
+ClamAV config was automatically upgraded to 0.90 format. You should review it
+that it's still valid.
+EOF
+#'
+# unfortunately clamd has no configcheck option so we just have to start it
+# once again after config was broken after upgrade
+touch /var/lock/subsys/clamd
+%service -q clamd restart
+
%post milter
/sbin/chkconfig --add clamav-milter
%service clamav-milter restart "Clam Antivirus daemon"
%post libs -p /sbin/ldconfig
%postun libs -p /sbin/ldconfig
-%post database -p %{_sbindir}/%{name}-post-updatedb
-
%files
%defattr(644,root,root,755)
%doc AUTHORS ChangeLog FAQ NEWS README TODO docs/*.pdf
%attr(755,root,root) %{_bindir}/clamconf
%attr(755,root,root) %{_sbindir}/clamd
%attr(755,root,root) %{_sbindir}/clamav-cron-updatedb
+%attr(755,root,root) %{_sbindir}/clamav-post-updatedb
%attr(755,clamav,root) %dir /var/lib/%{name}
+%ghost %attr(644,clamav,root) %verify(not md5 mtime size) /var/lib/clamav/*.cvd
%attr(640,clamav,root) %ghost /var/log/freshclam.log
%attr(750,clamav,clamav) %dir /var/run/%{name}
%files static
%defattr(644,root,root,755)
%{_libdir}/*.a
-
-%if %{with database}
-%files database
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_sbindir}/clamav-post-updatedb
-%attr(644,clamav,root) %verify(not md5 mtime size) /var/lib/%{name}/*.cvd
-%endif # database