# TODO:
+# - consider following upstream and renaming to amavis
# - Add polish info mail templates
# - move amavis part of tmpwatch configuration from tmpwatch.spec
#
-%include /usr/lib/rpm/macros.perl
Summary: A Mail Virus Scanner with SpamAssassin support - daemon
Summary(pl.UTF-8): Antywirusowy skaner poczty elektronicznej z obsługą SpamAssasina - demon
Name: amavisd-new
-Version: 2.6.2
+Version: 2.12.0
Release: 1
Epoch: 1
License: GPL
Group: Applications/Mail
-Source0: http://www.ijs.si/software/amavisd/%{name}-%{version}.tar.gz
-# Source0-md5: 0b3b0ef8771af8e4a950e7381d42adbd
+Source0: https://gitlab.com/amavis/amavis/-/archive/v%{version}/amavis-v%{version}.tar.bz2
+# Source0-md5: 67cdd043d5d7046ec5995564444ec10f
Source1: %{name}.init
-Source2: %{name}-milter.init
+Source2: %{name}.tmpfiles
Source3: %{name}.tmpwatch
+Source4: %{name}.service
Patch0: %{name}-config.patch
Patch1: %{name}-tools-dbdir.patch
-URL: http://www.ijs.si/software/amavisd/
-BuildRequires: libmilter-devel
+URL: https://gitlab.com/amavis/amavis/
BuildRequires: rpm-perlprov
-BuildRequires: rpmbuild(macros) >= 1.304
+BuildRequires: rpmbuild(macros) >= 1.671
+BuildRequires: tar >= 1:1.22
Requires(post,preun): /sbin/chkconfig
Requires(postun): /usr/sbin/groupdel
Requires(postun): /usr/sbin/userdel
Requires: /usr/lib/sendmail
Requires: perl-Archive-Tar
Requires: perl-Archive-Zip >= 1.14
-Requires: perl-Compress-Zlib >= 1.35
+Requires: perl-Convert-BinHex
Requires: perl-Convert-TNEF
Requires: perl-Convert-UUlib >= 1.05
+Requires: perl-File-LibMagic
+Requires: perl-IO-Compress
Requires: perl-MIME-tools
+Requires: perl-Net-LibIDN
Requires: perl-Net-Server >= 0.93
Requires: perl-Time-HiRes >= 1.49
Requires: perl-Unix-Syslog
Requires: perl-libnet
+Requires: rc-scripts >= 0.4.1.23
Requires: sh-utils
+Requires: systemd-units >= 38
+Suggests: amavisd-milter >= 1.5.0
#Suggests: arc
-Suggests: nomarch
#Suggests: arj
-Suggests: unarj
Suggests: binutils
Suggests: bzip2
Suggests: cabextract
Suggests: cpio
Suggests: dspam
Suggests: freeze
-#Suggests: unfreeze
-#Suggests: melt
Suggests: gzip
Suggests: lha
Suggests: lzop
+#Suggests: melt
Suggests: ncompress
+Suggests: nomarch
Suggests: pax
Suggests: perl-Authen-SASL
+Suggests: unarj
+#Suggests: unfreeze
# required already by perl-Mail-SpamAssassin
#Suggests: perl-DB_File
#Suggests: perl-IO-Socket-INET6
# required when doing SQL lookups
+Suggests: p0f
+Suggests: perl-Crypt-OpenSSL-RSA
#Suggests: perl-DBD-mysql
Suggests: perl-Digest-MD5
Suggests: perl-Mail-DKIM >= 0.31
-Suggests: perl-Mail-SpamAssassin
+Suggests: perl-Mail-SpamAssassin > 3.3.0
+Suggests: perl-Net-DNS
Suggests: perl-Razor
Suggests: perl-SAVI
Suggests: perl-ldap
-Suggests: p0f
#Suggests: rar
-Suggests: unrar
#Suggests: ripole
Suggests: rpm-utils
Suggests: tnef
+Suggests: unrar
Suggests: unzoo
#Suggests: zoo
Provides: group(amavis)
Obsoletes: amavisd-postfix
Obsoletes: amavisd-qmail
Conflicts: amavis-stats <= 0.1.12
+Conflicts: postfix < 2.7.0
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%define _tmpwatchdir /etc/tmpwatch
a jednym lub więcej programów antywirusowych i SpamAssasinem. Wersja
zdemonizowana.
-%package sendmail
-Summary: A Mail Virus Scanner with SpamAssasin support - sendmail backend
-Summary(pl.UTF-8): Antywirusowy skaner poczty elektronicznej - backend dla sendmaila
-Group: Applications/Mail
-Requires: %{name} = %{epoch}:%{version}-%{release}
-Requires: sendmail
-
-%description sendmail
-AMaViS is a script that interfaces a mail transport agent (MTA) with
-one or more virus scanners. This is daemonized version of amavis.
-
-This package contains backend for sendmail.
-
-%description sendmail -l pl.UTF-8
-AMaViS to skrypt pośredniczący pomiędzy agentem transferu poczty (MTA)
-a jednym lub więcej programów antywirusowych. Wersja zdemonizowana.
-
-Pakiet ten zawiera back-end dla sendmaila.
-
%package -n openldap-schema-amavisd-new
Summary: Amavisd-new LDAP schema
Summary(pl.UTF-8): Schemat LDAP dla amavisd-new
Group: Networking/Daemons
Requires: openldap-servers
+BuildArch: noarch
%description -n openldap-schema-amavisd-new
This package contains LDAP schema for use with amavisd-new.
Ten pakiet zawiera schemat LDAP do używania z amavisd-new.
%prep
-%setup -q
+%setup -q -n amavis-v%{version}
%patch0 -p1
%patch1 -p1
-%build
-cd helper-progs
-%configure \
- --with-sendmail=/usr/lib/sendmail \
- --with-runtime-dir=/var/spool/amavis/runtime \
- --with-sockname=/var/run/amavisd/amavisd.sock \
- --with-milterlib=%{_libdir}
-%{__make}
-
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_var}/spool/amavis/{runtime,virusmails,db},%{_var}/run/amavisd,/etc/rc.d/init.d,%{_sbindir},%{_tmpwatchdir}}
-
-install amavisd $RPM_BUILD_ROOT%{_sbindir}
-install amavisd-agent $RPM_BUILD_ROOT%{_sbindir}
-install amavisd-nanny $RPM_BUILD_ROOT%{_sbindir}
-install amavisd-release $RPM_BUILD_ROOT%{_sbindir}
-install amavisd.conf-sample $RPM_BUILD_ROOT%{_sysconfdir}/amavisd.conf
-install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/amavisd
-install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/amavis-milter
-install helper-progs/amavis $RPM_BUILD_ROOT%{_sbindir}
-install helper-progs/amavis-milter $RPM_BUILD_ROOT%{_sbindir}
-install %{SOURCE3} $RPM_BUILD_ROOT%{_tmpwatchdir}/%{name}.conf
-install -D LDAP.schema $RPM_BUILD_ROOT%{schemadir}/amavisd-new.schema
+install -d $RPM_BUILD_ROOT%{_var}/spool/amavis/{runtime,virusmails,db} \
+ $RPM_BUILD_ROOT{%{_var}/run/amavisd,/etc/rc.d/init.d,%{_sbindir}} \
+ $RPM_BUILD_ROOT{%{systemdtmpfilesdir},%{_tmpwatchdir}} \
+ $RPM_BUILD_ROOT%{systemdunitdir}
+
+install -p amavisd $RPM_BUILD_ROOT%{_sbindir}
+install -p amavisd-agent $RPM_BUILD_ROOT%{_sbindir}
+install -p amavisd-nanny $RPM_BUILD_ROOT%{_sbindir}
+install -p amavisd-release $RPM_BUILD_ROOT%{_sbindir}
+install -p amavisd-submit $RPM_BUILD_ROOT%{_sbindir}
+cp -p amavisd.conf $RPM_BUILD_ROOT%{_sysconfdir}/amavisd.conf
+
+install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/amavisd
+cp -p %{SOURCE3} $RPM_BUILD_ROOT%{_tmpwatchdir}/%{name}.conf
+
+cp -p %{SOURCE2} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/%{name}.conf
+cp -p %{SOURCE4} $RPM_BUILD_ROOT%{systemdunitdir}/amavisd.service
+
+install -Dp LDAP.schema $RPM_BUILD_ROOT%{schemadir}/amavisd-new.schema
%clean
rm -rf $RPM_BUILD_ROOT
%userremove amavis
%groupremove amavis
fi
+%systemd_reload
%post
/sbin/chkconfig --add amavisd
%service amavisd restart "Amavisd daemon"
+%systemd_post amavisd.service
%preun
if [ "$1" = "0" ]; then
%service amavisd stop
/sbin/chkconfig --del amavisd
fi
+%systemd_preun amavisd.service
-%post sendmail
-/sbin/chkconfig --add amavis-milter
-%service amavis-milter restart "Amavis-milter daemon"
-
-%preun sendmail
-if [ "$1" = "0" ];then
- %service amavis-milter stop
- /sbin/chkconfig --del amavis-milter
-fi
+%triggerpostun -- %{name} < 1:2.8.1-1
+%systemd_trigger amavisd.service
%post -n openldap-schema-amavisd-new
%openldap_schema_register %{schemadir}/amavisd-new.schema
%files
%defattr(644,root,root,755)
%doc AAAREADME.first INSTALL RELEASE_NOTES README_FILES/* test-messages
-%attr(755,root,root) %{_sbindir}/amavisd*
+%attr(755,root,root) %{_sbindir}/amavisd
+%attr(755,root,root) %{_sbindir}/amavisd-agent
+%attr(755,root,root) %{_sbindir}/amavisd-nanny
+%attr(755,root,root) %{_sbindir}/amavisd-release
+%attr(755,root,root) %{_sbindir}/amavisd-submit
+%{systemdunitdir}/amavisd.service
%attr(754,root,root) /etc/rc.d/init.d/amavisd
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/amavisd.conf
%config(noreplace) %verify(not md5 mtime size) %{_tmpwatchdir}/%{name}.conf
+%{systemdtmpfilesdir}/%{name}.conf
%attr(750,amavis,amavis) %{_var}/spool/amavis
%attr(750,amavis,amavis) %{_var}/run/amavisd
-%files sendmail
-%defattr(644,root,root,755)
-%attr(754,root,root) /etc/rc.d/init.d/amavis-milter
-%attr(755,root,root) %{_sbindir}/amavis
-%attr(755,root,root) %{_sbindir}/amavis-milter
-
%files -n openldap-schema-amavisd-new
%defattr(644,root,root,755)
%{schemadir}/*.schema