- Refreshed spec-file via spec-cleaner and manual optimization.
* Removed file dovecot.init (droped SystemV support). * Added parameter -p to all install command in spec-file. * Added %{name} macro wherever possible. OBS-URL: https://build.opensuse.org/package/show/server:mail/dovecot?expand=0&rev=23
This commit is contained in:
parent
ea7d0a91bd
commit
0db101c419
@ -5,6 +5,14 @@ Wed Apr 21 11:50:25 UTC 2021 - Peter Varkoly <varkoly@suse.com>
|
||||
deprecated, please use /run instead
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Apr 16 10:58:13 UTC 2021 - Илья Индиго <ilya@ilya.pp.ua>
|
||||
- Refreshed spec-file via spec-cleaner and manual optimization.
|
||||
* Removed file dovecot.init (droped SystemV support).
|
||||
* Added parameter -p to all install command in spec-file.
|
||||
* Added %{name} macro wherever possible.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 21 11:50:25 UTC 2021 - Peter Varkoly <varkoly@suse.com>
|
||||
Fri Nov 13 14:11:59 UTC 2020 - Thorsten Kukuk <kukuk@suse.com>
|
||||
|
||||
- Check first if they exist before creating user and group accounts
|
||||
|
93
dovecot.spec
93
dovecot.spec
@ -16,12 +16,6 @@
|
||||
#
|
||||
|
||||
|
||||
%if 0%{?suse_version} > 1230
|
||||
%bcond_without systemd
|
||||
%else
|
||||
%bcond_with systemd
|
||||
%endif
|
||||
|
||||
Name: dovecot
|
||||
Version: 2.3
|
||||
Release: 0
|
||||
@ -31,23 +25,22 @@ Group: Productivity/Networking/Email/Servers
|
||||
URL: http://www.dovecot.org/
|
||||
PreReq: dovecot-implementation
|
||||
PreReq: shadow
|
||||
Recommends: dovecot23
|
||||
Recommends: %{name}23
|
||||
#!BuildIgnore: dovecot-implementation
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
BuildArch: noarch
|
||||
Source0: dovecot-2.0.configfiles
|
||||
Source1: dovecot-2.1.configfiles
|
||||
Source2: dovecot-2.2.configfiles
|
||||
Source3: %{name}.init
|
||||
Source0: %{name}-2.0.configfiles
|
||||
Source1: %{name}-2.1.configfiles
|
||||
Source2: %{name}-2.2.configfiles
|
||||
Source4: %{name}.pam
|
||||
Source5: %{name}.README.SUSE
|
||||
Source7: dovecot.tmpfiles.d
|
||||
Source8: dovecot.service
|
||||
Source9: dovecot.socket
|
||||
Source10: dovecot-2.1-pigeonhole.configfiles
|
||||
Source11: dovecot-2.2-pigeonhole.configfiles
|
||||
Source12: dovecot-2.3.configfiles
|
||||
Source13: dovecot-2.3-pigeonhole.configfiles
|
||||
Source7: %{name}.tmpfiles.d
|
||||
Source8: %{name}.service
|
||||
Source9: %{name}.socket
|
||||
Source10: %{name}-2.1-pigeonhole.configfiles
|
||||
Source11: %{name}-2.2-pigeonhole.configfiles
|
||||
Source12: %{name}-2.3.configfiles
|
||||
Source13: %{name}-2.3-pigeonhole.configfiles
|
||||
|
||||
%description
|
||||
Dovecot is an IMAP and POP3 server for Linux and UNIX-like systems,
|
||||
@ -73,87 +66,61 @@ for i in $RPM_SOURCE_DIR/*.configfiles ; do
|
||||
done
|
||||
done
|
||||
|
||||
install -D -m 0644 %{S:5} %{buildroot}%{_datadir}/doc/packages/dovecot/README.SUSE
|
||||
install -D -p -m 0644 %{S:5} %{buildroot}%{_datadir}/doc/packages/%{name}/README.SUSE
|
||||
install -d %{buildroot}%{_sbindir}
|
||||
# install the init script
|
||||
%if %{with systemd}
|
||||
%{__install} -D -m 644 %{S:7} %{buildroot}/usr/lib/tmpfiles.d/dovecot.conf
|
||||
%{__install} -D -m 644 %{S:7} %{buildroot}/usr/lib/tmpfiles.d/%{name}.conf
|
||||
%{__ln_s} -f %{_sbindir}/service %{buildroot}%{_sbindir}/rc%{name}
|
||||
install -D -m 0644 %{S:8} %{buildroot}%{_unitdir}/dovecot.service
|
||||
install -D -m 0644 %{S:9} %{buildroot}%{_unitdir}/dovecot.socket
|
||||
%else
|
||||
%{__install} -D -m 0755 %{S:3} %{buildroot}%{_sysconfdir}/init.d/%{name}
|
||||
%{__ln_s} -f %{_sysconfdir}/init.d/%{name} %{buildroot}%{_sbindir}/rc%{name}
|
||||
%endif
|
||||
install -D -p -m 0644 %{S:8} %{buildroot}%{_unitdir}/%{name}.service
|
||||
install -D -p -m 0644 %{S:9} %{buildroot}%{_unitdir}/%{name}.socket
|
||||
|
||||
# install pam config
|
||||
%{__install} -D -m 0644 %{S:4} %{buildroot}%{_sysconfdir}/pam.d/%{name}
|
||||
%{__install} -D -p -m 0644 %{S:4} %{buildroot}%{_sysconfdir}/pam.d/%{name}
|
||||
# create /var directories
|
||||
%{__install} -m 0755 -Dd \
|
||||
%{__install} -p -m 0755 -Dd \
|
||||
%{buildroot}%{_var}/run/%{name}/login/ \
|
||||
%{buildroot}%{_var}/lib/%{name}/
|
||||
|
||||
%pre
|
||||
getent group %{name} > /dev/null || /usr/sbin/groupadd -r %{name} >/dev/null 2>&1 || :
|
||||
getent passwd %{name} > /dev/null || /usr/sbin/useradd -g %{name} -s /bin/false -r -c "User for Dovecot imapd" -d %{_var}/run/%{name} %{name} >/dev/null 2>&1 || :
|
||||
getent passwd dovenull > /dev/null || /usr/sbin/useradd -g %{name} -s /bin/false -r -c "User for Dovecot login" -d %{_var}/run/%{name} dovenull >/dev/null 2>&1 || :
|
||||
getent passwd %{name} > /dev/null || /usr/sbin/useradd -g %{name} -s /bin/false -r -c "User for Dovecot imapd" -d %{_var}/run/%{name} %{name}
|
||||
getent passwd dovenull > /dev/null || /usr/sbin/useradd -g %{name} -s /bin/false -r -c "User for Dovecot login" -d %{_var}/run/%{name} dovenull
|
||||
# try to copy the default configuration.
|
||||
#
|
||||
# we fail silently if the dovecot-implementation package is not
|
||||
# installed yet. This allows us to break a little build loop between
|
||||
# dovecot and dovecotXY.
|
||||
if [ ! -e %{_sysconfdir}/%{name}/dovecot.conf -a -e %{_datadir}/%{name}/example-config/dovecot.conf ] ; then
|
||||
if [ ! -e %{_sysconfdir}/%{name}/%{name}.conf -a -e %{_datadir}/%{name}/example-config/%{name}.conf ] ; then
|
||||
# install default config
|
||||
echo "Did not find a /etc/dovecot/dovecot.conf. copying default configuration"
|
||||
cp -na %{_datadir}/%{name}/example-config/* %{_sysconfdir}/%{name}/
|
||||
# the chmod breaks the lda. lets use the more open permissions
|
||||
#chmod -Rv o= %{_sysconfdir}/%{name}/
|
||||
fi
|
||||
%if %{with systemd}
|
||||
%service_add_pre %{name}.service %{name}.socket
|
||||
%endif
|
||||
|
||||
%preun
|
||||
%if %{with systemd}
|
||||
%service_del_preun %{name}.service %{name}.socket
|
||||
%else
|
||||
%stop_on_removal %{name}
|
||||
%endif
|
||||
|
||||
%if %{with systemd}
|
||||
%post
|
||||
%tmpfiles_create dovecot.conf
|
||||
%tmpfiles_create %{_tmpfilesdir}/%{name}.conf
|
||||
%service_add_post %{name}.service %{name}.socket
|
||||
%endif
|
||||
|
||||
%postun
|
||||
%if %{with systemd}
|
||||
%service_del_postun %{name}.service
|
||||
%else
|
||||
%restart_on_update %{name}
|
||||
%insserv_cleanup
|
||||
%endif
|
||||
|
||||
%files
|
||||
%defattr(-,root,root)
|
||||
%doc %{_datadir}/doc/packages/dovecot/
|
||||
%doc %{_datadir}/doc/packages/%{name}/
|
||||
# conf
|
||||
%dir /etc/dovecot/
|
||||
%ghost %config(noreplace) /etc/dovecot/*
|
||||
%dir /etc/%{name}/
|
||||
%ghost %config(noreplace) /etc/%{name}/*
|
||||
%config(noreplace) %{_sysconfdir}/pam.d/%{name}
|
||||
%{_sbindir}/rc%{name}
|
||||
%if %{with systemd}
|
||||
/usr/lib/tmpfiles.d/dovecot.conf
|
||||
%{_unitdir}/dovecot.service
|
||||
%{_unitdir}/dovecot.socket
|
||||
%else
|
||||
%{_sysconfdir}/init.d/%{name}
|
||||
%endif
|
||||
# setting up permissions
|
||||
%if ! %{with systemd}
|
||||
%dir %attr(0755,root,root) %ghost %{_var}/run/%{name}/
|
||||
%dir %attr(0750,root,%{name}) %ghost %{_var}/run/%{name}/login/
|
||||
%endif
|
||||
%dir %attr(0750,root,root) %{_var}/lib/%{name}/
|
||||
/usr/lib/tmpfiles.d/%{name}.conf
|
||||
%{_unitdir}/%{name}.service
|
||||
%{_unitdir}/%{name}.socket
|
||||
%dir %{_localstatedir}/lib/%{name}
|
||||
%ghost %dir /run/%{name}
|
||||
%ghost %dir /run/%{name}/login
|
||||
|
||||
%changelog
|
||||
|
Loading…
Reference in New Issue
Block a user