X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=clamav.spec;h=d610cb34e40b40264ebc06ba556942ef368d763d;hb=0d90572a2d56522c2230517eaf70479ed7e04eb4;hp=08a3b5bde855643dcebe413090d9da5b966ada84;hpb=24e2a659db06ad396b1bebd32e340159271a266d;p=packages%2Fclamav.git diff --git a/clamav.spec b/clamav.spec index 08a3b5b..d610cb3 100644 --- a/clamav.spec +++ b/clamav.spec @@ -1,29 +1,36 @@ # TODO: -# - Fix inconsistency: -# clamd uses syslog but log from (crond) db update goes to -# /var/log/clamd.log +# Make freshclam (script and daemon) -%define database_version 20030813 Summary: An anti-virus utility for Unix -Summary(pl): Antywirusowe narzêdzie dla Unixów +Summary(pl): Antywirusowe narzêdzie dla Uniksów Name: clamav -Version: 0.60 -Release: 4.2 +Version: 0.74 +Release: 2 License: GPL Group: Applications Source0: http://dl.sourceforge.net/clamav/%{name}-%{version}.tar.gz -# Source0-md5: eddeba4e1f399f65bc71aa2b3e901543 +# Source0-md5: 3a1e6e0b33267749cdb1f4104ed42f14 Source1: %{name}.init Source2: %{name}.sysconfig -# gziped from http://clamav.elektrapro.com/database/: -Source3: %{name}-database-%{database_version}.tar.gz -# Source3-md5: a8848904249edd97b873a43032c0208f -Patch0: %{name}-pld_config.patch +Source4: %{name}-cron-updatedb +Source5: %{name}.logrotate +# Remember to update date after databases upgrade +%define database_version 20040703 +Source6: http://www.clamav.net/database/daily.cvd +# Source6-md5: 794193f51b470ebf9d8f04b2e647fe67 +Source7: http://www.clamav.net/database/main.cvd +# Source7-md5: 937f22844dd8dc7e75604a7c0939ad73 +Source8: %{name}-post-updatedb +Patch0: %{name}-pld_config.patch +Patch1: %{name}-no_auto_libwrap.patch URL: http://www.clamav.net/ BuildRequires: autoconf BuildRequires: automake BuildRequires: zlib-devel +BuildRequires: gmp-devel Requires(post,preun): /sbin/chkconfig +Requires: %{name}-libs = %{version}-%{release} +Requires: bc BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %description @@ -54,7 +61,7 @@ Biblioteki dzielone clamav. Summary: clamav - Development header files and libraries Summary(pl): clamav - Pliki nag³ówkowe i biblioteki dla programistów Group: Development/Libraries -Requires: %{name}-libs = %{version} +Requires: %{name}-libs = %{version}-%{release} %description devel This package contains the development header files and libraries @@ -68,10 +75,10 @@ klienckich clamav. Summary: clamav static libraris Summary(pl): Biblioteki statyczne clamav Group: Development/Libraries -Requires: %{name}-devel = %{version} +Requires: %{name}-devel = %{version}-%{release} %description static -clamav static libraris. +clamav static libraries. %description static -l pl Biblioteki statyczne clamav. @@ -84,17 +91,17 @@ Version: %{version}.%{database_version} PreReq: %{name} %description database -Virus database for clamav (updated %{database_version}) +Virus database for clamav (updated %{database_version}). %description database -l pl -Bazy wirusów dla clamav (aktualizowana %{database_version}) +Bazy wirusów dla clamav (aktualizowana %{database_version}). %prep -%setup -q -a 3 +%setup -q %patch0 -p1 - +%patch1 -p1 + %build -rm -f missing %{__aclocal} %{__autoconf} %{__automake} @@ -102,93 +109,94 @@ rm -f missing --disable-clamav \ --with-dbdir=/var/lib/%{name} %{__make} -mv database/mirrors.txt{,.old} -echo clamav.sourceforge.net >database/mirrors.txt -cat database/mirrors.txt.old >>database/mirrors.txt %install rm -rf $RPM_BUILD_ROOT -install -d $RPM_BUILD_ROOT%{_sysconfdir}/{rc.d/init.d,sysconfig} \ +install -d $RPM_BUILD_ROOT%{_sysconfdir}/{rc.d/init.d,sysconfig,logrotate.d} \ $RPM_BUILD_ROOT{%{_sysconfdir}/cron.d,%{_var}/log} %{__make} install \ DESTDIR=$RPM_BUILD_ROOT cat <$RPM_BUILD_ROOT%{_sysconfdir}/cron.d/%{name} -0 */6 * * * root umask 022; %{_bindir}/freshclam --quiet -l %{_var}/log/%{name}.log --daemon-notify +5 * * * * root %{_sbindir}/clamav-cron-updatedb EOF -touch $RPM_BUILD_ROOT%{_var}/log/%{name}.log install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/clamd install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/clamd -install etc/clamav.conf $RPM_BUILD_ROOT%{_sysconfdir}/ +install %{SOURCE4} $RPM_BUILD_ROOT%{_sbindir}/clamav-cron-updatedb +install etc/*.conf $RPM_BUILD_ROOT%{_sysconfdir}/ +install %{SOURCE5} $RPM_BUILD_ROOT/etc/logrotate.d/%{name} +install %{SOURCE6} $RPM_BUILD_ROOT/var/lib/%{name}/ +install %{SOURCE7} $RPM_BUILD_ROOT/var/lib/%{name}/ +install %{SOURCE8} $RPM_BUILD_ROOT%{_sbindir} # NOTE: clamd uses sane rights to it's clamd.pid file # So better keep it dir # If it is fixed use of dir will be unecesary install -d $RPM_BUILD_ROOT%{_var}/run/%{name} -# touch $RPM_BUILD_ROOT%{_var}/run/%{name}/clamd.pid + +touch $RPM_BUILD_ROOT%{_var}/log/freshclam.log %clean rm -rf $RPM_BUILD_ROOT -# FIXME: Does %triggerin -- amavis-ng really have to written three times ? -# It's stolen from mksd.spec - if it's wrong fix mksd.spec too - %triggerin -- amavis-ng AMAVIS=$(/usr/bin/getgid amavis) RESULT=$? -if [ $RESULT -eq 0 ]; then - /usr/sbin/usermod -G amavis clamav 1>&2 > /dev/null - echo "adding clamav to amavis group GID=$AMAVIS" +if [ $RESULT -eq 0 ]; then + /usr/sbin/usermod -G amavis clamav 1>&2 > /dev/null + echo "adding clamav to amavis group GID=$AMAVIS" fi %triggerin -- amavisd-new AMAVIS=$(/usr/bin/getgid amavis) RESULT=$? -if [ $RESULT -eq 0 ]; then - /usr/sbin/usermod -G amavis clamav 1>&2 > /dev/null - echo "adding clamav to amavis group GID=$AMAVIS" +if [ $RESULT -eq 0 ]; then + /usr/sbin/usermod -G amavis clamav 1>&2 > /dev/null + echo "adding clamav to amavis group GID=$AMAVIS" fi %triggerin -- amavisd AMAVIS=$(/usr/bin/getgid amavis) RESULT=$? -if [ $RESULT -eq 0 ]; then - /usr/sbin/usermod -G amavis clamav 1>&2 > /dev/null - echo "adding clamav to amavis group GID=$AMAVIS" +if [ $RESULT -eq 0 ]; then + /usr/sbin/usermod -G amavis clamav 1>&2 > /dev/null + echo "adding clamav to amavis group GID=$AMAVIS" fi -%pre +%pre if [ -n "`getgid clamav`" ]; then - if [ "`getgid clamav`" != "43" ]; then - echo "Warning: group clamav doesn't have gid=43. Correct this before installing clamav" 1>&2 - exit 1 - fi + if [ "`getgid clamav`" != "43" ]; then + echo "Warning: group clamav doesn't have gid=43. Correct this before installing clamav" 1>&2 + exit 1 + fi else - echo "Adding group clamav GID=43" - /usr/sbin/groupadd -g 43 -r -f clamav + echo "Adding group clamav GID=43" + /usr/sbin/groupadd -g 43 -r -f clamav fi if [ -n "`id -u clamav 2>/dev/null`" ]; then - if [ "`id -u clamav`" != "43" ]; then - echo "Warning: user clamav doesn't have uid=43. Correct this before installing clamav" 1>&2 - exit 1 - fi + if [ "`id -u clamav`" != "43" ]; then + echo "Warning: user clamav doesn't have uid=43. Correct this before installing clamav" 1>&2 + exit 1 + fi else - echo "Adding user clamav UID=43" - /usr/sbin/useradd -u 43 -r -d /tmp -s /bin/false -c "Clam Anti Virus Checker" -g clamav clamav 1>&2 + echo "Adding user clamav UID=43" + /usr/sbin/useradd -u 43 -r -d /tmp -s /bin/false -c "Clam Anti Virus Checker" -g clamav clamav 1>&2 fi %post -touch %{_var}/log/%{name}.log && chmod 640 %{_var}/log/%{name}.log && chown clamav %{_var}/log/%{name}.log /sbin/chkconfig --add clamd if [ -f /var/lock/subsys/clamd ]; then /etc/rc.d/init.d/clamd restart >&2 else echo "Run \"/etc/rc.d/init.d/clamd start\" to start Clam Antivirus daemon." >&2 fi +touch %{_var}/log/freshclam.log +chown clamav:root %{_var}/log/freshclam.log +chmod 640 %{_var}/log/freshclam.log %preun if [ "$1" = "0" ]; then @@ -200,14 +208,16 @@ fi %postun if [ "$1" = "0" ]; then - echo "Removing user clamav" - /usr/sbin/userdel clamav - echo "Removing group clamav" - /usr/sbin/groupdel clamav + echo "Removing user clamav" + /usr/sbin/userdel clamav + echo "Removing group clamav" + /usr/sbin/groupdel clamav fi -%post libs -p /sbin/ldconfig -%postun libs -p /sbin/ldconfig +%post libs -p /sbin/ldconfig +%postun libs -p /sbin/ldconfig + +%post database -p %{_sbindir}/%{name}-post-updatedb %files %defattr(644,root,root,755) @@ -215,15 +225,16 @@ fi %attr(755,root,root) %{_bindir}/* %attr(755,root,root) %{_sbindir}/* %attr(755,clamav,root) %dir /var/lib/%{name} -%attr(644,clamav,root) %verify(not md5 size mtime) /var/lib/%{name}/mirrors.txt -%attr(640,clamav,root) %ghost %{_var}/log/%{name}.log +%attr(640,clamav,root) %ghost %{_var}/log/freshclam.log %attr(750,clamav,clamav) %dir %{_var}/run/%{name} -# %%attr(666,clamav,clamav) %%ghost %{_var}/run/%{name}/clamd.pid %attr(640,root,root) %{_sysconfdir}/cron.d/%{name} -%attr(644,root,root) %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/*.conf +%attr(644,root,root) %config(noreplace) %verify(not md5 size mtime) /etc/clamav.conf +%attr(644,root,root) %config(noreplace) %verify(not md5 size mtime) /etc/freshclam.conf + %attr(754,root,root) /etc/rc.d/init.d/clamd %attr(640,root,root) %config(noreplace) %verify(not md5 size mtime) /etc/sysconfig/clamd +%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/logrotate.d/clamav %{_mandir}/man?/* %files libs @@ -235,6 +246,7 @@ fi %attr(755,root,root) %{_libdir}/lib*.so %{_libdir}/lib*.la %{_includedir}/*.h +%{_pkgconfigdir}/*.pc %files static %defattr(644,root,root,755) @@ -242,4 +254,4 @@ fi %files database %defattr(644,root,root,755) -%attr(644,clamav,root) %verify(not md5 size mtime) /var/lib/%{name}/*.db* +%attr(644,clamav,root) %verify(not md5 size mtime) /var/lib/%{name}/*.cvd