# # # $Id: indimail.spec.in,v 1.42 2020-06-02 22:38:20+05:30 Cprogrammer Exp mbhangui $ # # vim: wrap ic %undefine _missing_build_ids_terminate_build %global _unpackaged_files_terminate_build 1 %if %{defined _project} # define if building on openSUSE build service %global build_on_obs 1 %global reconf_fetchmail 0 %global reconf_courierimap 0 %global build_cflags "-DOBS_BUILD %{build_cflags}" %else %define _project local %global build_on_obs 0 %global reconf_fetchmail 0 %global reconf_courierimap 0 %global _hardened_build 1 %endif %define nodebug 1 #global nodebug 1 %if %{defined nodebug} %global debug_package %{nil} %endif %global _prefix /usr %global indimaildir /var/indimail %global sysconfdir /etc/indimail %global libexecdir /usr/libexec/indimail %global shareddir /usr/share/indimail %global logdir /var/log/svc %global servicedir /service %global mandir /usr/share/man %global defaultDomain indimail.org %global courier_version 5.2.6 %global fetchmail_version 6.5.0.beta9 %global url https://github.com/mbhangui/indimail-virtualdomains %global nodksignatures 0 %global qcount 5 %global qbase %{indimaildir}/queue # Packages which do not use autosetup or setup macro # in the prep section have a problem in enabling debuginfo. # This isn't documented clearly anywhere. A workaround is # to define buildsubdir %if %{undefined nodebug} %global buildsubdir %{name}-%{version} %endif %if 0%{?fedora_version} > 30 || 0%{?centos_version} > 700 || 0%{?rhel_version} > 700 || 0%{?centos_ver} > 7 || 0%{?almalinux_version} > 700 || 0%{?rocky_version} > 700 || 0%{?fedora} > 30 || 0%{?rhel} > 7 || %{defined mgaversion} || %{defined amzn} || %{defined openEuler} || ( 0%{?sle_version} >= 150400 && 0%{?is_opensuse} ) %global pythondir %{python3_sitelib} %else %global pythondir %(python -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())") %endif %if %build_on_obs == 1 %global packager Manvendra Bhangui > %endif Summary: POP3, IMAP Fetchmail Services for IndiMail Name: indimail-access Version: 1.2 Release: 1.1%{?dist} %if %build_on_obs == 1 License: GPL-3.0+ %else License: GPLv3 %endif %if %{undefined suse_version} && %{undefined sles_version} Group: Applications/Mail %else Group: Productivity/Networking/Email/Servers %endif Source1: http://downloads.sourceforge.net/indimail/courier-imap-%{courier_version}.tar.gz Source2: http://downloads.sourceforge.net/indimail/fetchmail-%{fetchmail_version}.tar.gz Source3: http://downloads.sourceforge.net/indimail/%{name}-rpmlintrc %if 0%{?suse_version} >= 1120 Source4: http://downloads.sourceforge.net/indimail/%{name}-permissions.easy Source5: http://downloads.sourceforge.net/indimail/%{name}-permissions.secure Source6: http://downloads.sourceforge.net/indimail/%{name}-permissions.paranoid %endif URL: https://github.com/mbhangui/indimail-virtualdomains AutoReqProv: Yes Requires: indimail-mta > 2.6 BuildRequires: openssl-devel rpm gcc gcc-c++ make coreutils grep BuildRequires: glibc glibc-devel openssl procps binutils BuildRequires: gzip autoconf automake libtool pkgconfig BuildRequires: sed findutils procps BuildRequires: xz bison flex BuildRequires: gettext-devel %if 0%{?fedora_version} > 30 || 0%{?centos_version} > 700 || 0%{?rhel_version} > 700 || 0%{?centos_ver} > 7 || 0%{?almalinux_version} > 700 || 0%{?rocky_version} > 700 || 0%{?fedora} > 30 || 0%{?rhel} > 7 || %{defined mgaversion} || %{defined amzn} || %{defined openEuler} || ( 0%{?sle_version} >= 150400 && 0%{?is_opensuse} ) BuildRequires: python3 python3-devel %else BuildRequires: python python-devel %endif BuildRequires: libgcrypt-devel gdbm-devel libidn2-devel pcre2-devel pam-devel BuildRequires: perl %if %{defined fedora_version} BuildRequires: perl-generators BuildRequires: glibc-all-langpacks %endif Requires: user(qmaill) Requires: group(nofiles) %if %build_on_obs == 0 Requires(pre): shadow-utils Requires(postun): shadow-utils %endif %if 0%{?suse_version} >= 1120 Requires: permissions %endif ################################# OBS ############################### %if %build_on_obs == 1 %if 0%{?suse_version} BuildRequires: -post-build-checks #!BuildIgnore: post-build-checks #!BuildIgnore: brp-check-suse %endif %endif ################################# OBS ############################### Requires: procps /usr/bin/awk /usr/bin/which Requires: sed findutils pkgconfig Requires: coreutils grep /bin/sh glibc openssl Requires: /usr/bin/hostname Conflicts: indimail < 3.2 %description indimail-access package provides IMAP, POP3 and fetchmail retrieval for IndiMail IMAP/POP3 protocol is provided by Courier Imap. Mail retrieval is provided by fetchmail. IndiMail provides ability for a single domain to have users across multiple hosts (even across different geographical locations) and tools to manage virtual domains. For more details visit %{url} %prep %{__mkdir_p} %{_builddir}/%{name}-%{version} cd %{_builddir}/%{name}-%{version} for i in fetchmail-%{fetchmail_version} courier-imap-%{courier_version} do ( if [ -d $i ] ; then %{__rm} -rf $i fi if [ -f ../../SOURCES/$i.tar.bz2 ] ; then %{__bzip2} -d -c ../../SOURCES/$i.tar.bz2 | tar xf - elif [ -f ../../SOURCES/$i.tar.xz ] ; then xz -d -c ../../SOURCES/$i.tar.xz |tar xf - elif [ -f ../../SOURCES/$i.tar.gz ] ; then gunzip -c ../../SOURCES/$i.tar.gz | tar xf - else echo "No Source Archive for $i" exit 1 fi ) done %build cd %{_builddir}/%{name}-%{version} ( echo "---------------- INFORMATION ------------------------" echo target %_target echo target_alias %_target_alias echo target_cpu %_target_cpu echo target_os %_target_os echo target_vendor %_target_vendor %if 0%{?fedora_version} > 30 || 0%{?centos_version} > 700 || 0%{?rhel_version} > 700 || 0%{?centos_ver} > 7 || 0%{?almalinux_version} > 700 || 0%{?rocky_version} > 700 || 0%{?fedora} > 30 || 0%{?rhel} > 7 || %{defined mgaversion} || %{defined amzn} || %{defined openEuler} || ( 0%{?sle_version} >= 150400 && 0%{?is_opensuse} ) echo pythondir %{python3_sitelib} %else echo pythondir %{pythondir} %endif echo Project %{_project} echo Building %{name}-%{version}-%{release} Build %{_build} OS %{_os} lib=%{_lib} libdir=%{_libdir} echo "------------------------------------------------------" ) > %{name}-rpm.info ( echo "NAME=%{name}" echo "Description=\"IndiMail Access Package\"" echo "ACCESS_version=%{version}-%{release}" echo "ID=%{name}" echo "HOME_URL=\"https://github.com/mbhangui/indimail-virtualdomains\"" echo "PACKAGE_BUGREPORT=\"'Manvendra Bhangui '\"" ) > %{name}-release #### courier-imap ###################### if [ -d courier-imap-%{courier_version} ] ; then cd courier-imap-%{courier_version} if [ %{reconf_courierimap} -eq 1 ] ; then echo "reconfiguring..." %{__mkdir_p} m4 aclocal -I m4 autoreconf -fiv %{__cp} libs/unicode/depcomp . fi if [ -f /etc/fedora-release ] ; then export CFLAGS="${CFLAGS} -Wno-implicit-function-declaration" fi %configure --prefix=%{_prefix} --libexecdir=%{libexecdir} --bindir=%{_prefix}/bin \ --mandir=%{mandir} --sysconfdir=%{sysconfdir} --libdir=%{_libdir} \ --datarootdir=%{shareddir} --with-certsdir=%{sysconfdir}/certs \ --with-mailer=%{_prefix}/bin/sendmail --disable-root-check --with-redhat \ --without-userdb --without-authcustom --without-authchangepwdir \ --without-authgeneric --with-authshadow --with-authpam --without-authpwd \ --enable-syslog=1 cd .. fi #### fetchmail ###################### if [ -d fetchmail-%{fetchmail_version} ] ; then cd fetchmail-%{fetchmail_version} if [ %{reconf_fetchmail} -eq 1 ] ; then echo "reconfiguring..." %{__mkdir_p} m4 aclocal -I m4 autoreconf -fiv fi %configure --prefix=%{_prefix} --libexecdir=%{libexecdir} --sysconfdir=%{sysconfdir} \ --datarootdir=%{shareddir} --mandir=%{mandir} \ --enable-indimail --with-ssl cd .. fi %install cd %{_builddir}/%{name}-%{version} for i in fetchmail-%{fetchmail_version} courier-imap-%{courier_version} do if [ -d $i ] ; then cd $i %{__make} -s %{?_smp_mflags} %if %{defined nodebug} %{__make} -s %{?_smp_mflags} DESTDIR=%{buildroot} install-strip %else %{__make} -s %{?_smp_mflags} DESTDIR=%{buildroot} install %endif cd .. fi done %if ( ( %{defined fedora_version} && 0%{?fedora_version} <= 30 ) || ( %{defined fedora_ver} && 0%{?fedora_ver} <= 30 ) ) echo "Removing pyc for fedora" %{__rm} -f %{buildroot}%{pythondir}/fetchmailconf.py %endif %if ( ( %{defined centos_version} && 0%{?centos_version} <= 700 ) || ( %{defined centos_ver} && 0%{?centos_ver} <= 7) ) echo "Removing pyc for centos" %{__rm} -f %{buildroot}%{pythondir}/fetchmailconf.py %endif %if ( ( %{defined rhel_version} && 0%{?rhel_version} <= 700 ) || ( %{defined rhel} && 0%{?rhel} <= 7) ) echo "Removing pyc for rhel" %{__rm} -f %{buildroot}%{pythondir}/fetchmailconf.py %endif %if ( %{defined almalinux_version} && 0%{?almalinux_version} <= 700 ) echo "Removing pyc for almalinux" %{__rm} -f %{buildroot}%{pythondir}/fetchmailconf.py %endif %if ( %{defined rocky_version} && 0%{?rocky_version} <= 700 ) echo "Removing pyc for rocky" %{__rm} -f %{buildroot}%{pythondir}/fetchmailconf.py %endif %if ( %{defined scientificlinux_version} && 0%{?scientificlinux_version} <= 700 ) echo "Removing pyc for scientificlinux" %{__rm} -f %{buildroot}%{pythondir}/fetchmailconf.py %endif %if ( 0%{?sle_version} < 150400 && 0%{?is_opensuse} ) echo "Removing pyc for opensuse version 150400" %{__rm} -f %{buildroot}%{pythondir}/fetchmailconf.py %endif %if %{defined suse_version} && 0%{?suse_version} <= 150400 && !0%{?is_opensuse} echo "Removing pyc for SLE version 15" %{__rm} -f %{buildroot}%{pythondir}/fetchmailconf.py %endif %{__mkdir_p} %{buildroot}%{sysconfdir} install -m 0644 %{name}-rpm.info %{buildroot}%{sysconfdir}/%{name}-rpm.info install -m 0644 %{name}-release %{buildroot}%{sysconfdir}/%{name}-release %{__rm} -f %{name}-rpm.info %{name}-release %{__rm} -f %{name}-rpm.info %if 0%{?suse_version} >= 1120 %{__mkdir_p} %{buildroot}%{_sysconfdir}/permissions.d/ install -m 644 %{S:4} %{buildroot}%{_sysconfdir}/permissions.d/%{name}-permissions install -m 644 %{S:5} %{buildroot}%{_sysconfdir}/permissions.d/%{name}-permissions.secure %endif %{__rm} -f %{buildroot}%{_libdir}/libcourier-unicode.la %{__rm} -f %{buildroot}%{_libdir}/libcourier-unicode.a %{__rm} -f %{buildroot}%{_libdir}/libcourier-unicode.so %{__rm} -f %{buildroot}%{_prefix}/share/aclocal/courier-unicode.m4 %{__rm} -f %{buildroot}%{_prefix}/share/aclocal/courier-unicode-version.m4 %{__rm} -rf %{buildroot}%{_prefix}/include %{__rm} -rf %{buildroot}%{mandir}/man3 # Compress the man pages # Create these files so that %%ghost does not complain %{__mkdir_p} %{buildroot}%{sysconfdir}/tcp for i in tcp.imap tcp.imap.cdb tcp.pop3 tcp.pop3.cdb do if [ ! -f %{buildroot}%{sysconfdir}/tcp/$i ] ; then touch %{buildroot}%{sysconfdir}/tcp/$i fi done %if %{undefined suse_version} && %{undefined sles_version} %{__mkdir_p} %{buildroot}%{logdir} for i in imapd.143 imapd-ssl.993 \ pop3d.110 pop3d-ssl.995 do %{__mkdir_p} %{buildroot}%{logdir}/$i touch %{buildroot}%{logdir}/$i/current done %{__mkdir_p} %{buildroot}%{logdir}/fetchmail touch %{buildroot}%{logdir}/fetchmail/current touch %{buildroot}%{sysconfdir}/fetchmailrc #%%find_lang fetchmail %endif %if %{undefined nodebug} /bin/chmod -R 0755 %{buildroot}%{_prefix}/bin %{buildroot}%{_prefix}/sbin \ %{buildroot}%{libexecdir} ln -sf %{_builddir}/%{name}-%{version}/debugsourcefiles.list %{_builddir}/debugsourcefiles.list %endif %files %defattr(-, root, root,-) # # Directories # # opensuse requres ghost files to be present %if %{undefined suse_version} && %{undefined sles_version} %ghost %dir %attr(0755,qmaill,nofiles) %{logdir} %ghost %dir %attr(0755,qmaill,nofiles) %{logdir}/* %ghost %attr(-,qmaill,nofiles) %{logdir}/*/* %endif %if "%{mandir}" != "/usr/share/man" %dir %attr(755,root,root) %{mandir} %dir %attr(755,root,root) %{mandir}/man1 %dir %attr(755,root,root) %{mandir}/man7 %dir %attr(755,root,root) %{mandir}/man8 %endif %attr(444,root,root) %{sysconfdir}/%{name}-release %attr(444,root,root) %{sysconfdir}/%{name}-rpm.info %dir %attr(755,root,root) %{shareddir}/locale %ghost %config(noreplace,missingok) %{sysconfdir}/fetchmailrc %ghost %config(noreplace,missingok) %{sysconfdir}/tcp/tcp.imap %ghost %config(noreplace,missingok) %{sysconfdir}/tcp/tcp.pop3 # # These files will get removed during uninstallation # %ghost %attr(0644,indimail,indimail) %{sysconfdir}/tcp/tcp.imap.cdb %ghost %attr(0644,indimail,indimail) %{sysconfdir}/tcp/tcp.pop3.cdb # %attr(600,root,root) %config(noreplace) %{sysconfdir}/pop3d-ssl.dist %attr(600,root,root) %config(noreplace) %{sysconfdir}/imapd-ssl.dist %attr(600,root,root) %config(noreplace) %{sysconfdir}/pop3d.cnf %attr(600,root,root) %config(noreplace) %{sysconfdir}/imapd.cnf %attr(600,root,root) %config(noreplace) %{sysconfdir}/pop3d.dist %attr(600,root,root) %config(noreplace) %{sysconfdir}/imapd.dist %attr(600,root,root) %config(noreplace) %{sysconfdir}/authmodulelist %attr(644,root,root) %config(noreplace) %{sysconfdir}/quotawarnmsg.example %if 0%{?suse_version} >= 1120 %attr(644,root,root) %config(noreplace) %{_sysconfdir}/permissions.d/%{name}-permissions %attr(644,root,root) %config(noreplace) %{_sysconfdir}/permissions.d/%{name}-permissions.secure %endif # courier imap %attr(755,root,root) %{_prefix}/bin/maildirmake %attr(755,root,root) %{_prefix}/bin/maildirkw %attr(755,root,root) %{_prefix}/bin/maildiracl %attr(755,root,root) %{_prefix}/bin/maildirwatch %attr(755,root,root) %{_prefix}/bin/deliverquota %attr(755,root,root) %{_prefix}/bin/couriertls %attr(755,root,root) %{_prefix}/bin/imapd %attr(755,root,root) %{_prefix}/bin/pop3d %attr(755,root,root) %{_prefix}/bin/mailbot %attr(755,root,root) %{_prefix}/bin/maildrop %attr(755,root,root) %{_prefix}/bin/reformail %attr(755,root,root) %{_prefix}/sbin/imaplogin %attr(755,root,root) %{_prefix}/sbin/pop3login %attr(755,root,root) %{_prefix}/sbin/sharedindexinstall %attr(755,root,root) %{_prefix}/sbin/sharedindexsplit %attr(755,root,root) %{_prefix}/sbin/authenumerate %attr(755,root,root) %{_prefix}/sbin/authtest %if 0 %attr(755,root,root) %{libexecdir}/imapmodules/authpwd %endif # setuid binary %if 0%{?suse_version} >= 1120 %verify (not user group mode caps) %attr(4755, root, root) %{libexecdir}/imapmodules/authshadow %verify (not user group mode caps) %attr(4755, root, root) %{libexecdir}/imapmodules/authpam %else %attr(4755,root,root) %{libexecdir}/imapmodules/authshadow %attr(4755,root,root) %{libexecdir}/imapmodules/authpam %endif # fetchmail %attr(755,root,root) %{_prefix}/bin/fetchmailconf %attr(755,root,root) %{_prefix}/bin/fetchmail %attr(755,root,root) %{libexecdir}/pop3d-ssl.rc %attr(755,root,root) %{libexecdir}/makedatprog %attr(755,root,root) %{libexecdir}/imapd-ssl.rc %attr(755,root,root) %{libexecdir}/couriertcpd %attr(755,root,root) %{libexecdir}/imapd.rc %attr(755,root,root) %{libexecdir}/pop3d.rc %attr(755,root,root) %{libexecdir}/mkimapdcert %attr(755,root,root) %{libexecdir}/mkpop3dcert %attr(755,root,root) %{libexecdir}/mkdhparams %attr(755,root,root) %{libexecdir}/courierlogins %lang(eo) /usr/share/indimail/locale/eo/LC_MESSAGES/fetchmail.mo %lang(sq) /usr/share/indimail/locale/sq/LC_MESSAGES/fetchmail.mo %lang(cs) /usr/share/indimail/locale/cs/LC_MESSAGES/fetchmail.mo %lang(de) /usr/share/indimail/locale/de/LC_MESSAGES/fetchmail.mo %lang(vi) /usr/share/indimail/locale/vi/LC_MESSAGES/fetchmail.mo %lang(pl) /usr/share/indimail/locale/pl/LC_MESSAGES/fetchmail.mo %lang(fr) /usr/share/indimail/locale/fr/LC_MESSAGES/fetchmail.mo %lang(sv) /usr/share/indimail/locale/sv/LC_MESSAGES/fetchmail.mo %lang(es) /usr/share/indimail/locale/es/LC_MESSAGES/fetchmail.mo %lang(ja) /usr/share/indimail/locale/ja/LC_MESSAGES/fetchmail.mo %lang(ro) /usr/share/indimail/locale/ro/LC_MESSAGES/fetchmail.mo %lang(sr) /usr/share/indimail/locale/sr/LC_MESSAGES/fetchmail.mo %if 0%{?fedora_version} > 30 || 0%{?centos_version} > 700 || 0%{?rhel_version} > 700 || 0%{?centos_ver} > 7 || 0%{?almalinux_version} > 700 || 0%{?rocky_version} > 700 || 0%{?fedora} > 30 || 0%{?rhel} > 7 || %{defined mgaversion} || %{defined amzn} || %{defined openEuler} || ( 0%{?sle_version} >= 150400 && 0%{?is_opensuse} ) %attr(644,root,root) %{pythondir}/__pycache__/*.pyc %attr(755,root,root) %{pythondir}/fetchmailconf.py %endif %docdir %{shareddir}/doc %docdir %{mandir} %attr(0644,root,root) %{mandir}/man1/fetchmailconf.1.* %attr(0644,root,root) %{mandir}/man1/fetchmail.1.* %attr(0644,root,root) %{mandir}/man1/reformail.1.* %attr(0644,root,root) %{mandir}/man1/makedat.1.* %attr(0644,root,root) %{mandir}/man1/maildrop.1.* %attr(0644,root,root) %{mandir}/man1/mailbot.1.* %attr(0644,root,root) %{mandir}/man1/courierlogins.1.* %attr(0644,root,root) %{mandir}/man1/couriertls.1.* %attr(0644,root,root) %{mandir}/man1/couriertcpd.1.* %attr(0644,root,root) %{mandir}/man1/maildirkw.1.* %attr(0644,root,root) %{mandir}/man1/sharedindexsplit.1.* %attr(0644,root,root) %{mandir}/man1/sharedindexinstall.1.* %attr(0644,root,root) %{mandir}/man1/maildiracl.1.* %attr(0644,root,root) %{mandir}/man1/maildirmake.1.* %attr(0644,root,root) %{mandir}/man1/maildirwatch.1.* %attr(0644,root,root) %{mandir}/man1/authtest.1.* %attr(0644,root,root) %{mandir}/man1/authenumerate.1.* %attr(0644,root,root) %{mandir}/man7/maildropgdbm.7.* %attr(0644,root,root) %{mandir}/man7/maildropfilter.7.* %attr(0644,root,root) %{mandir}/man7/maildropex.7.* %attr(0644,root,root) %{mandir}/man7/authlib.7.* %attr(0644,root,root) %{mandir}/man7/authshadow.7.* %if 0 %attr(0644,root,root) %{mandir}/man7/authpwd.7.* %endif %attr(0644,root,root) %{mandir}/man7/authindi.7.* %attr(0644,root,root) %{mandir}/man7/authpam.7.* %attr(0644,root,root) %{mandir}/man7/maildirquota.7.* %attr(0644,root,root) %{mandir}/man7/courier-unicode.7.* %attr(0644,root,root) %{mandir}/man8/makeimapaccess.8.* %attr(0644,root,root) %{mandir}/man8/pop3login.8.* %attr(0644,root,root) %{mandir}/man8/imaplogin.8.* %attr(0644,root,root) %{mandir}/man8/pop3d.8.* %attr(0644,root,root) %{mandir}/man8/imapd.8.* %attr(0644,root,root) %{mandir}/man8/mkpop3dcert.8.* %attr(0644,root,root) %{mandir}/man8/mkimapdcert.8.* %attr(0644,root,root) %{mandir}/man8/mkdhparams.8.* %attr(0644,root,root) %{mandir}/man8/deliverquota.8.* %if %build_on_obs == 0 %license %attr(644,root,root) %{shareddir}/doc/courier-imap/COPYING %license %attr(644,root,root) %{shareddir}/doc/courier-imap/COPYING.GPL %license %attr(644,root,root) %{shareddir}/doc/COPYING.fetchmail %else %attr(644,root,root) %{shareddir}/doc/courier-imap/COPYING %attr(644,root,root) %{shareddir}/doc/courier-imap/COPYING.GPL %attr(644,root,root) %{shareddir}/doc/COPYING.fetchmail %endif %attr(644,root,root) %{shareddir}/doc/courier-imap/AUTHORS %attr(644,root,root) %{shareddir}/doc/README.SSL-SERVER.fetchmail %attr(644,root,root) %{shareddir}/doc/README.SSL.fetchmail %attr(644,root,root) %{shareddir}/doc/README.NTLM.fetchmail %attr(644,root,root) %{shareddir}/doc/README.fetchmail %attr(644,root,root) %{shareddir}/doc/courier-imap/README.sharedfolders.md %attr(644,root,root) %{shareddir}/doc/courier-imap/README.maildirquota.txt %attr(644,root,root) %{shareddir}/doc/courier-imap/README.imapkeywords.txt %attr(644,root,root) %{shareddir}/doc/courier-imap/README.couriertls %attr(644,root,root) %{shareddir}/doc/courier-imap/README.unicode %attr(644,root,root) %{shareddir}/doc/courier-imap/README.imap %attr(644,root,root) %{shareddir}/doc/courier-imap/README.courier-imap %attr(644,root,root) %{shareddir}/doc/courier-imap/html/lockmail.html %attr(644,root,root) %{shareddir}/doc/courier-imap/html/mailbot.html %attr(644,root,root) %{shareddir}/doc/courier-imap/html/maildir.html %attr(644,root,root) %{shareddir}/doc/courier-imap/html/maildiracl.html %attr(644,root,root) %{shareddir}/doc/courier-imap/html/maildirkw.html %attr(644,root,root) %{shareddir}/doc/courier-imap/html/maildirmake.html %attr(644,root,root) %{shareddir}/doc/courier-imap/html/maildrop.html %attr(644,root,root) %{shareddir}/doc/courier-imap/html/maildropex.html %attr(644,root,root) %{shareddir}/doc/courier-imap/html/maildropfilter.html %attr(644,root,root) %{shareddir}/doc/courier-imap/html/maildropgdbm.html %attr(644,root,root) %{shareddir}/doc/courier-imap/html/makemime.html %attr(644,root,root) %{shareddir}/doc/courier-imap/html/manpage.css %attr(644,root,root) %{shareddir}/doc/courier-imap/html/reformail.html %attr(644,root,root) %{shareddir}/doc/courier-imap/html/reformime.html %{_libdir}/libcourier-unicode.so.7 %{_libdir}/libcourier-unicode.so.7.0.0 %clean %if %{undefined nodebug} %{__rm} -f %{_builddir}/debugfiles.list %{_builddir}/debuglinks.list \ %{_builddir}/debugsourcefiles.list %{_builddir}/debugsources.list \ %{_builddir}/elfbins.list %endif ### SCRIPTLET ############################################################################### %verifyscript %if 0%{?suse_version} >= 1120 %verify_permissions -e %{libexecdir}/imapmodules/authshadow %verify_permissions -e %{libexecdir}/imapmodules/authpam %endif ### SCRIPTLET ############################################################################### %pretrans if [ -d /run ] ; then rundir=/run/svscan elif [ -d /var/run ] ; then rundir=/var/run/svscan else rundir=%{servicedir} fi for i in fetchmail qmail-imapd.143 qmail-imapd-ssl.993 \ qmail-pop3d.110 qmail-pop3d-ssl.995 fetchmail do if [ ! -d %{servicedir}/$i ] ; then continue fi %{_prefix}/bin/svstat %{servicedir}/$i >/dev/null 2>&1 if [ $? -eq 0 ] ; then %{__mkdir_p} ${rundir}/$i touch ${rundir}/$i/.down %{_prefix}/bin/svc -d %{servicedir}/$i fi done ### SCRIPTLET ############################################################################### %post argv1=$1 if [ -z "$argv1" ] ; then argv1=0 fi if [ $argv1 -eq 2 ] ; then # upgrade # we are doing upgrade ( echo "doing post upgrade activities" if [ "%{_libdir}" != "/usr/lib64" -a "%{_libdir}" != "/usr/lib" ] ; then /sbin/ldconfig fi # refresh indimail services svc_list="" for i in fetchmail qmail-imapd.143 qmail-imapd-ssl.993 \ qmail-pop3d.110 qmail-pop3d-ssl.995 do if [ ! -d %{servicedir}/$i ] ; then continue fi if [ -z "$svc_list" ] ; then svc_list="%{servicedir}/$i" else svc_list="$svc_list %{servicedir}/$i" fi done if [ -d /run ] ; then rundir=/run/svscan elif [ -d /var/run ] ; then rundir=/var/run/svscan else rundir=%{servicedir} fi # restart services %{_prefix}/sbin/svctool --servicedir=%{servicedir} --refreshsvc="$svc_list" for i in fetchmail qmail-imapd.143 qmail-imapd-ssl.993 \ qmail-pop3d.110 qmail-pop3d-ssl.995 fetchmail do if [ ! -d %{servicedir}/$i ] ; then continue fi %{_prefix}/bin/svok %{servicedir}/$i if [ $? -eq 0 -a -f ${rundir}/$i/.down ] ; then %{__rm} -f ${rundir}/$i/.down %{_prefix}/bin/svc -u %{servicedir}/$i fi done ) >> /var/log/indimail-access-setup.log 2>&1 exit 0 fi %if 0%{?suse_version} >= 1120 %if 0%{?set_permissions:1} > 0 %set_permissions %{libexecdir}/imapmodules/authshadow %set_permissions %{libexecdir}/imapmodules/authpam %else %run_permissions %endif %endif echo "Doing Post Install" echo "" echo " 1. Configure %{logdir} for multilog" echo " 2. Configure %{servicedir}" echo " 3. Configure fetchmail service" echo " 4. Configure IMAP/POP3 services" echo " 5. Configure tcprules database for IMAP, POP3" echo "" ( # Recreate ld.so links and cache if [ "%{_libdir}" != "/usr/lib64" -a "%{_libdir}" != "/usr/lib" ] ; then if [ -d %{_sysconfdir}/ld.so.conf.d ] ; then echo %{_libdir} > %{_sysconfdir}/ld.so.conf.d/indimail-access-%{_arch}.conf fi /sbin/ldconfig fi for i in fetchmail imapd.143 imapd-ssl.993 pop3d.110 pop3d-ssl.995 do %{__mkdir_p} %{logdir}/$i %{__chown} -R qmaill:nofiles %{logdir}/$i done %if %build_on_obs == 0 if [ -x /usr/bin/uname -o -x /bin/uname ] ; then default_domain=$(echo $([ -n "$HOSTNAME" ] && echo "$HOSTNAME" || uname -n) | sed 's/^\([^\.]*\)\.\([^\.]*\)\./\2\./') else default_domain=$([ -n "$HOSTNAME" ] && echo "$HOSTNAME" | sed 's/^\([^\.]*\)\.\([^\.]*\)\./\2\./' || echo %{defaultDomain}) fi %else default_domain=%{defaultDomain} %endif %ifarch x86_64 %global fetchmail_mem 104857600 %global imap_pop3_mem 104857600 %global imapspop3_mem 104857600 %else %global fetchmail_mem 52428800 %global imap_pop3_mem 52428800 %global imapspop3_mem 52428800 %endif # fetchmail if [ -d /run ] ; then logfifo="/run/indimail/logfifo" %{__mkdir_p} /run/indimail elif [ -d /var/run ] ; then logfifo="/var/run/indimail/logfifo" %{__mkdir_p} /var/run/indimail else logfifo="/tmp/logfifo" fi if [ %nodksignatures -eq 0 ] ; then if [ -f %{sysconfdir}/control/default ] ; then ver_opt="both" else ver_opt="none" fi else ver_opt="none" fi extra_opt="" if [ -x %{_prefix}/bin/bogofilter ] ; then extra_opt="--spamfilter=\"%{_prefix}/bin/bogofilter -p -d %{sysconfdir}\"" extra_opt="$extra_opt --logfilter=$logfifo --rejectspam=0 --spamexitcode=0" fi if [ -f /usr/sbin/clamd -a -f /usr/bin/clamdscan ] ; then if [ -d %{_sysconfdir}/clamav ] ; then mysysconfdir=%{_sysconfdir}/clamav elif [ -d %{_sysconfdir}/clamd.d ] ; then mysysconfdir=%{_sysconfdir}/clamd.d elif [ -d %{sysconfdir} ] ; then mysysconfdir=%{sysconfdir} else mysysconfdir=%{_sysconfdir} fi qhpsi="/usr/bin/clamdscan %s --config=${mysysconfdir}/scan.conf --fdpass --quiet --no-summary" extra_opt="$extra_opt --qhpsi=\"$qhpsi\"" fi eval %{_prefix}/sbin/svctool --fetchmail --servicedir=%{servicedir} \ --qbase=%{qbase} --qcount=%{qcount} --qstart=1 \ --cntrldir=control --memory=%{fetchmail_mem} --fsync --syncdir \ --dkverify=$ver_opt $extra_opt # # user has to create fetchmailrc before which fetchmail cannot be started # touch %{servicedir}/fetchmail/down # IMAP/POP3 %{_prefix}/sbin/svctool --imap=143 --servicedir=%{servicedir} --localip=0 --maxdaemons=40 \ --maxperip=25 --query-cache --memory=%{imap_pop3_mem} --default-domain=${default_domain} \ --starttls --infifo=infifo %{_prefix}/sbin/svctool --imap=993 --servicedir=%{servicedir} --localip=0 --maxdaemons=40 \ --maxperip=25 --query-cache --memory=%{imapspop3_mem} --default-domain=${default_domain} \ --ssl --infifo=infifo %{_prefix}/sbin/svctool --pop3=110 --servicedir=%{servicedir} --localip=0 --maxdaemons=40 \ --maxperip=25 --query-cache --memory=%{imap_pop3_mem} --default-domain=${default_domain} \ --starttls --infifo=infifo %{_prefix}/sbin/svctool --pop3=995 --servicedir=%{servicedir} --localip=0 --maxdaemons=40 \ --maxperip=25 --query-cache --memory=%{imapspop3_mem} --default-domain=${default_domain} \ --ssl --infifo=infifo # add courier-imap auth module authindi if [ -f %{libexecdir}/imapmodules/authindi ] ; then echo "adding authindi as IMAP/POP3 auth module" for i in `ls -d %{servicedir}/qmail-pop3d* %{servicedir}/qmail-imapd*` do if [ -s $i/variables/IMAPMODULES ] ; then grep authindi $i/variables/IMAPMODULES > /dev/null if [ $? -ne 0 ] ; then AUTHM="`cat $i/variables/IMAPMODULES` authindi" echo $AUTHM > $i/variables/IMAPMODULES fi fi done fi # rebuild cdb for i in imap pop3 do for j in `/bin/ls %{sysconfdir}/tcp/tcp*.$i 2>/dev/null` do t1=`date +'%s' -r $j` if [ -f $j.cdb ] ; then t2=`date +'%s' -r $j.cdb` else t2=0 fi if [ $t1 -gt $t2 ] ; then echo "Creating CDB $j.cdb" %{_prefix}/bin/tcprules $j.cdb $j.tmp < $j && /bin/chmod 664 $j.cdb \ && %{__chown} indimail:indimail $j.cdb fi done done # turn off automatic refresh for services during first time installation svc_list="" for i in fetchmail qmail-imapd.143 qmail-imapd-ssl.993 \ qmail-pop3d.110 qmail-pop3d-ssl.995 do if [ ! -d %{servicedir}/$i ] ; then continue fi svc_list="$svc_list %{servicedir}/$i" # save variables %{_prefix}/sbin/svctool --servicedir=%{servicedir} --service-name=$i \ --export-variables=%{servicedir}/$i/variables/.variables --force done %{_prefix}/sbin/svctool --servicedir=%{servicedir} --autorefresh="0 $svc_list" ) >> /var/log/indimail-access-setup.log 2>&1 echo echo "Check /var/log/indimail-access-setup.log for the detailed installation log!!!" ### SCRIPTLET ############################################################################### %postun argv1=$1 if [ -z "$argv1" ] ; then argv1=0 fi # we are doing upgrade if [ $argv1 -eq 1 ] ; then if [ "%{_libdir}" != "/usr/lib64" -a "%{_libdir}" != "/usr/lib" ] ; then echo "recreating ld.so cache" /sbin/ldconfig fi exit 0 fi ( echo "removing startup services" for i in fetchmail qmail-imapd.143 qmail-imapd-ssl.993 \ qmail-pop3d.110 qmail-pop3d-ssl.995 \ qmail-imapd.4143 qmail-pop3d.4110 do if [ -d %{servicedir}/$i -o -L %{servicedir}/$i ] ; then touch %{servicedir}/$i/down svc -dx %{servicedir}/$i fi if [ -d %{servicedir}/$i/log -o -L %{servicedir}/$i/log ] ; then touch %{servicedir}/$i/log/down svc -dx %{servicedir}/$i/log fi if [ -d %{servicedir}/$i -o -L %{servicedir}/$i ] ; then %{__rm} -rf %{servicedir}/$i || true fi done echo "removing logs" if [ -h %{logdir} ] ; then log_dir=`/bin/ls -ld %{logdir} | /usr/bin/awk '{print $10}'` else log_dir=%{logdir} fi for i in fetchmail imapd.143 imapd-ssl.993 do %{__rm} -rf $log_dir/$i done if [ "%{_libdir}" != "/usr/lib64" -a "%{_libdir}" != "/usr/lib" ] ; then echo "recreating ld.so cache" /sbin/ldconfig fi ) >> /var/log/indimail-setup.log 2>&1 # fix changelog for openSUSE buildservice %changelog * Fri May 10 2024 13:06:22 +0000 Manvendra Bhangui 1.2-1.1%{?dist} Release 1.2-1.1 Start 28/11/2024 End 03/12/2023 - fetchmail version upgraded to 6.5.0-beta9 - fetchmail/odmr.c: Fixed communication between SMTP and ODMR port - fetchmail/odmr.c: added more SMTP codes for ODMR - upgraded courier-imap to 5.2.6 - upgraded maildrop to 3.1.6 - courier-imap/libs/rfc1035/rfc1035str.c: Fix missing prototype for strcasecmp