Hello community, here is the log from the commit of package dovecot22 for openSUSE:Factory checked in at 2014-09-12 10:03:04 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/dovecot22 (Old) and /work/SRC/openSUSE:Factory/.dovecot22.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "dovecot22" Changes: -------- --- /work/SRC/openSUSE:Factory/dovecot22/dovecot22.changes 2014-08-25 11:04:15.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.dovecot22.new/dovecot22.changes 2014-09-12 10:03:06.000000000 +0200 @@ -1,0 +2,109 @@ +Thu Sep 11 11:40:28 UTC 2014 - mrueck...@suse.de + +- also track the config files from the sieve support in the %ghost + +------------------------------------------------------------------- +Thu Sep 11 11:09:41 UTC 2014 - mrueck...@suse.de + +- for the mysql subpackage use the really provided symbol and not + just part of the package name. + +------------------------------------------------------------------- +Wed Sep 10 15:45:52 UTC 2014 - mrueck...@suse.de + +- fix typo in conflicts: s/otherprovider/otherproviders/ + +------------------------------------------------------------------- +Wed Sep 10 10:51:45 UTC 2014 - mrueck...@suse.de + +- while technically not needed, adding back conflicts on + otherprovider(subpackage) + +------------------------------------------------------------------- +Tue Sep 9 10:18:05 UTC 2014 - mrueck...@suse.de + +- add all dovecot-*.configfiles as sources + +------------------------------------------------------------------- +Mon Sep 8 23:42:19 UTC 2014 - mrueck...@suse.de + +- dont ghost the whole /etc/dovecot. on older rpms the directory is + not created in that case. we only ghost /etc/dovecot/* and have a + %dir entry for /etc/dovecot. + +------------------------------------------------------------------- +Mon Sep 8 22:24:22 UTC 2014 - mrueck...@suse.de + +- dont try to delete systemd files when not building with systemd. + +------------------------------------------------------------------- +Mon Sep 8 20:14:32 UTC 2014 - mrueck...@suse.de + +- also add dovecot config files for the other 2.x branches + +------------------------------------------------------------------- +Mon Sep 8 14:35:56 UTC 2014 - mrueck...@suse.de + +- finally found a way to preserve the configuration even over + version updates. + - have the same ghosting loop in this package as in the + unversioned package + - that way the config files are owned by oth and upgrading to a + newer version of dovecot e.g. 2.3 would also not kill the + config anymore as before. + +------------------------------------------------------------------- +Fri Sep 5 19:04:10 UTC 2014 - mrueck...@suse.de + +- added back the old style conflicts to make upgrading easier +- moved copying of the config to the unversioned package + +------------------------------------------------------------------- +Fri Sep 5 18:23:46 UTC 2014 - mrueck...@suse.de + +- move the copy part to %postun for handling the upgrading more + graceful. + +------------------------------------------------------------------- +Fri Sep 5 17:36:38 UTC 2014 - mrueck...@suse.de + +- we really need the %posttrans for reinstalling the same package + +------------------------------------------------------------------- +Fri Sep 5 17:03:33 UTC 2014 - mrueck...@suse.de + +- no longer obsolete older packages. module packages require + their base package with version. the main package has a conflicts + on other providers of dovecot-implementation. + +------------------------------------------------------------------- +Fri Sep 5 16:15:14 UTC 2014 - mrueck...@suse.de + +- guard the new %pre/%post snippets against missing dovecot package + +------------------------------------------------------------------- +Fri Sep 5 16:06:18 UTC 2014 - mrueck...@suse.de + +- fix https://bugzilla.redhat.com/show_bug.cgi?id=134325: + dovecot should be shut down before exchanging files. + +------------------------------------------------------------------- +Fri Sep 5 11:02:25 UTC 2014 - mrueck...@suse.de + +- remove all the init script related scripts from this package. + that we we can break the build cycle more easily. +- copy the example config in post. + +------------------------------------------------------------------- +Fri Sep 5 10:45:17 UTC 2014 - mrueck...@suse.de + +- split out all the things we can share with other versioned + dovecot packages. + +------------------------------------------------------------------- +Thu Sep 4 15:45:02 UTC 2014 - mrueck...@suse.de + +- no longer obsolete/provide dovecot +- provide dovecot-implementation + +------------------------------------------------------------------- Old: ---- dovecot-fw dovecot.README.SUSE dovecot.init dovecot.pam dovecot.tmpfiles.d New: ---- dovecot-2.0.configfiles dovecot-2.1-pigeonhole.configfiles dovecot-2.1.configfiles dovecot-2.2-pigeonhole.configfiles dovecot-2.2.configfiles ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ dovecot22.spec ++++++ --- /var/tmp/diff_new_pack.e7pXhz/_old 2014-09-12 10:03:07.000000000 +0200 +++ /var/tmp/diff_new_pack.e7pXhz/_new 2014-09-12 10:03:07.000000000 +0200 @@ -23,6 +23,7 @@ %define sieve_version 2.2 %define dovecot_version 2.2.13 %define dovecot_pigeonhole_docdir %{_docdir}/%{pkg_name}/dovecot-pigeonhole +%define restart_flag /var/run/%{pkg_name}/%{pkg_name}-restart-after-rpm-install %if 0%{?suse_version} > 1230 %bcond_without systemd %else @@ -84,11 +85,13 @@ %define has_systemd 1 %endif PreReq: pwdutils %insserv_prereq %fillup_prereq -Conflicts: otherproviders(dovecot) -Provides: dovecot = %{version}-%{release} -Obsoletes: dovecot < %{version} +Requires: dovecot +Conflicts: otherproviders(dovecot-implementation) +Conflicts: dovecot20 dovecot21 +Provides: dovecot-implementation = %{version}-%{release} %if 0%{?suse_version} >= 1010 -Recommends: %{name}-backend-mysql = %{version} %{name}-backend-pgsql = %{version} +Recommends: %{name}-backend-mysql = %{version} +Recommends: %{name}-backend-pgsql = %{version} %if %{with sqlite} Recommends: %{name}-backend-sqlite = %{version} %endif @@ -99,12 +102,12 @@ # hg clone http://hg.rename-it.nl/dovecot-2.1-pigeonhole/ %define dovecot_pigeonhole_source_dir %{pkg_name}-%{sieve_version}-pigeonhole-0.4.2 Source1: %{dovecot_pigeonhole_source_dir}.tar.bz2 -Source2: %{pkg_name}.init -Source3: %{pkg_name}.pam -Source4: %{pkg_name}.README.SUSE -Source5: %{pkg_name}-fw -Source6: dovecot.tmpfiles.d -Source7: dovecot-rpmlintrc +Source2: dovecot-rpmlintrc +Source3: dovecot-2.0.configfiles +Source4: dovecot-2.1.configfiles +Source5: dovecot-2.2.configfiles +Source6: dovecot-2.1-pigeonhole.configfiles +Source7: dovecot-2.2-pigeonhole.configfiles Summary: IMAP and POP3 Server Written Primarily with Security in Mind License: BSD-3-Clause and LGPL-2.1+ and MIT Group: Productivity/Networking/Email/Servers @@ -122,8 +125,7 @@ Requires: %{name} = %{version} Provides: dovecot-backend-mysql = %{version}-%{release} Provides: dovecot_sql_backend = %{version}-%{release} -Obsoletes: dovecot-backend-mysql < %{version} -Conflicts: dovecot-backend-mysql < %{version} +Conflicts: otherproviders(dovecot-backend-mysql) Summary: MySQL support for Dovecot Group: Productivity/Networking/Email/Servers @@ -142,8 +144,7 @@ Requires: %{name} = %{version} Provides: dovecot-backend-pgsql = %{version}-%{release} Provides: dovecot_sql_backend = %{version}-%{release} -Obsoletes: dovecot-backend-pgsql < %{version} -Conflicts: dovecot-backend-pgsql < %{version} +Conflicts: otherproviders(dovecot-backend-pgsql) Summary: PostgreSQL support for Dovecot Group: Productivity/Networking/Email/Servers @@ -164,8 +165,7 @@ Requires: %{name} = %{version} Provides: dovecot-backend-sqlite = %{version}-%{release} Provides: dovecot_sql_backend = %{version}-%{release} -Obsoletes: dovecot-backend-sqlite < %{version} -Conflicts: dovecot-backend-sqlite < %{version} +Conflicts: otherproviders(dovecot-backend-sqlite) Summary: SQLite support for Dovecot Group: Productivity/Networking/Email/Servers @@ -188,8 +188,7 @@ Requires: %{name} = %{version} Provides: dovecot-fts-clucene = %{version}-%{release} Provides: dovecot_fts_backend = %{version}-%{release} -Obsoletes: dovecot-fts-clucene < %{version} -Conflicts: dovecot-fts-clucene < %{version} +Conflicts: otherproviders(dovecot-fts-clucene) Summary: Fulltext search support via CLucene Group: Productivity/Networking/Email/Servers @@ -212,8 +211,7 @@ Requires: %{name} = %{version} Provides: dovecot-fts-solr = %{version}-%{release} Provides: dovecot_fts_backend = %{version}-%{release} -Obsoletes: dovecot-fts-solr < %{version} -Conflicts: dovecot-fts-solr < %{version} +Conflicts: otherproviders(dovecot-fts-solr) Summary: Fulltext search support via solr Group: Productivity/Networking/Email/Servers @@ -233,8 +231,7 @@ %package devel Requires: %{name} = %{version} Provides: dovecot-devel = %{version}-%{release} -Obsoletes: dovecot-devel < %{version} -Conflicts: dovecot-devel < %{version} +Conflicts: otherproviders(dovecot-devel) Summary: Development files for Dovecot plugins Group: Development/Libraries/C and C++ @@ -328,27 +325,9 @@ %{buildroot}%{_var}/run/%{pkg_name}/login/ \ %{buildroot}%{_var}/lib/%{pkg_name}/ -# install the init script -%if %{with systemd} -%{__install} -D -m 644 %{S:6} %{buildroot}/usr/lib/tmpfiles.d/dovecot.conf -%{__ln_s} -f %{_sbindir}/service %{buildroot}%{_sbindir}/rc%{pkg_name} -%else -%{__install} -D -m 0755 %{S:2} %{buildroot}%{_sysconfdir}/init.d/%{pkg_name} -%{__ln_s} -f %{_sysconfdir}/init.d/%{pkg_name} %{buildroot}%{_sbindir}/rc%{pkg_name} -%endif - -# install pam config -%{__install} -D -m 0644 %{S:3} %{buildroot}%{_sysconfdir}/pam.d/%{pkg_name} - # install the script to create dummy selfsigned certs %{__install} -m 0755 doc/mkcert.sh %{buildroot}%{_docdir}/%{pkg_name} %{__install} -m 0644 doc/*.cnf %{buildroot}%{_docdir}/%{pkg_name} -%{__install} -m 0644 %{S:4} %{buildroot}%{_docdir}/%{pkg_name}/README.SUSE - -# install default config -cp -av %{buildroot}%{_docdir}/%{pkg_name}/example-config/* %{buildroot}%{_sysconfdir}/%{pkg_name}/ -# the chmod breaks the lda. lets use the more open permissions -#chmod -Rv o= %{buildroot}%{_sysconfdir}/%{pkg_name}/ # additional docs for the main package %{__install} -m 0644 \ @@ -368,51 +347,93 @@ rm %{buildroot}%{dovecot_pigeonhole_docdir}/rfc/Makefile* popd -# install firewall services -%{__install} -D -m 644 %{S:5} %{buildroot}%{_sysconfdir}/sysconfig/SuSEfirewall2.d/services/%{pkg_name} +for i in $RPM_SOURCE_DIR/*.configfiles ; do + echo "Creating ghost files for '$i'" + for j in $(<$i) ; do + install -D -m 0644 /dev/null %{buildroot}$j + done +done +# clean up of things that are now in the unversioned package. +%if %{with systemd} +rm %{buildroot}%{_unitdir}/dovecot.{service,socket} +%endif +rm %{buildroot}%{_sysconfdir}/%{pkg_name}/README %pre +test -n "$FIRST_ARG" || FIRST_ARG=$1 /usr/sbin/groupadd -r %{pkg_name} &>/dev/null || : /usr/sbin/useradd -g %{pkg_name} -s /bin/false -r -c "User for Dovecot imapd" -d %{_var}/run/%{pkg_name} %{pkg_name} &>/dev/null || : /usr/sbin/useradd -g %{pkg_name} -s /bin/false -r -c "User for Dovecot login" -d %{_var}/run/%{pkg_name} dovenull &>/dev/null || : -%if %{with systemd} -%service_add_pre %{pkg_name}.service %{pkg_name}.socket -%endif - -%preun -%if %{with systemd} -%service_del_preun %{pkg_name}.service %{pkg_name}.socket -%else -%stop_on_removal %{pkg_name} -%endif +# do not let dovecot run during upgrade rhbz#134325 +if [ "$FIRST_ARG" -ge "1" ]; then + rm -f %restart_flag + %if %{with systemd} + # we get installed before the unversioned dovecot package is installed + # in that case we dont need to restart as there was no file to start us before + if [ -x /bin/systemctl -a -e %{_unitdir}/%{pkg_name}.service ] ; then + /bin/systemctl is-active %{pkg_name}.service >/dev/null 2>&1 && touch %restart_flag ||: + /bin/systemctl stop %{pkg_name}.service >/dev/null 2>&1 + fi + %else + # we get installed before the unversioned dovecot package is installed + # in that case we dont need to restart as there was no file to start us before + if [ -x /etc/init.d/%{pkg_name} ] ; then + /etc/init.d/%{pkg_name} status >/dev/null 2>&1 && touch %restart_flag ||: + /etc/init.d/%{pkg_name} stop >/dev/null 2>&1 + fi + %endif +fi %post /sbin/ldconfig -%if %{with systemd} -systemd-tmpfiles --create /usr/lib/tmpfiles.d/dovecot.conf || true -%service_add_post %{pkg_name}.service %{pkg_name}.socket -%endif %postun +test -n "$FIRST_ARG" || FIRST_ARG=$1 /sbin/ldconfig -%if %{with systemd} -%service_del_postun %{pkg_name}.service %{pkg_name}.socket -%else -%restart_on_update %{pkg_name} -%insserv_cleanup -%endif +# do not let dovecot run during upgrade rhbz#134325 +if [ "$FIRST_ARG" -ge "1" -a -e %restart_flag ]; then + %if %{with systemd} + # we get installed before the unversioned dovecot package is installed + # in that case we dont need to restart as there was no file to start us before + if [ -x /bin/systemctl -a -e %{_unitdir}/%{pkg_name}.service ] ; then + /bin/systemctl start %{pkg_name}.service >/dev/null 2>&1 || : + fi + %else + # we get installed before the unversioned dovecot package is installed + # in that case we dont need to restart as there was no file to start us before + if [ -x /etc/init.d/%{pkg_name} ] ; then + /etc/init.d/%{pkg_name} start >/dev/null 2>&1 || : + fi + %endif + rm -f %restart_flag +fi + +# do not let dovecot run during upgrade rhbz#134325 +# dovecot should be started again in %%postun, but it's not executed on reinstall +# if it was already started, restart_flag won't be here, so it's ok to test it again +%posttrans +if [ -e %restart_flag ]; then + %if %{with systemd} + # we get installed before the unversioned dovecot package is installed + # in that case we dont need to restart as there was no file to start us before + if [ -x /bin/systemctl -a -e %{_unitdir}/%{pkg_name}.service ] ; then + /bin/systemctl start %{pkg_name}.service >/dev/null 2>&1 || : + fi + %else + # we get installed before the unversioned dovecot package is installed + # in that case we dont need to restart as there was no file to start us before + if [ -x /etc/init.d/%{pkg_name} ] ; then + /etc/init.d/%{pkg_name} start >/dev/null 2>&1 || : + fi + %endif + rm -f %restart_flag +fi %files %defattr(-,root,root) -%if %{with systemd} -/usr/lib/tmpfiles.d/dovecot.conf -%{_unitdir}/dovecot.service -%{_unitdir}/dovecot.socket -%else -%{_sysconfdir}/init.d/%{pkg_name} -%endif -%{_sbindir}/rc%{pkg_name} +%dir %{_sysconfdir}/%{pkg_name}/ +%ghost %config(noreplace) /etc/dovecot/* %{_sbindir}/%{pkg_name} %{_bindir}/doveadm %{_bindir}/doveconf @@ -420,10 +441,6 @@ %{_bindir}/sieve-test %{_bindir}/sievec %{_bindir}/sieve-dump -# conf -%config(noreplace) %{_sysconfdir}/%{pkg_name}/ -%config(noreplace) %{_sysconfdir}/pam.d/%{pkg_name} -%config %{_sysconfdir}/sysconfig/SuSEfirewall2.d/services/%{pkg_name} # subprocesses %dir %{_prefix}/lib/%{pkg_name} %{_prefix}/lib/%{pkg_name}/aggregator ++++++ dovecot-2.0.configfiles ++++++ /etc/dovecot/README /etc/dovecot/conf.d/10-auth.conf /etc/dovecot/conf.d/10-director.conf /etc/dovecot/conf.d/10-logging.conf /etc/dovecot/conf.d/10-mail.conf /etc/dovecot/conf.d/10-master.conf /etc/dovecot/conf.d/10-ssl.conf /etc/dovecot/conf.d/15-lda.conf /etc/dovecot/conf.d/20-imap.conf /etc/dovecot/conf.d/20-lmtp.conf /etc/dovecot/conf.d/20-pop3.conf /etc/dovecot/conf.d/90-acl.conf /etc/dovecot/conf.d/90-plugin.conf /etc/dovecot/conf.d/90-quota.conf /etc/dovecot/conf.d/auth-checkpassword.conf.ext /etc/dovecot/conf.d/auth-deny.conf.ext /etc/dovecot/conf.d/auth-ldap.conf.ext /etc/dovecot/conf.d/auth-master.conf.ext /etc/dovecot/conf.d/auth-passwdfile.conf.ext /etc/dovecot/conf.d/auth-sql.conf.ext /etc/dovecot/conf.d/auth-static.conf.ext /etc/dovecot/conf.d/auth-system.conf.ext /etc/dovecot/conf.d/auth-vpopmail.conf.ext /etc/dovecot/dovecot-db.conf.ext /etc/dovecot/dovecot-dict-sql.conf.ext /etc/dovecot/dovecot-ldap.conf.ext /etc/dovecot/dovecot-sql.conf.ext /etc/dovecot/dovecot.conf ++++++ dovecot-2.1-pigeonhole.configfiles ++++++ /etc/dovecot/conf.d/20-managesieve.conf /etc/dovecot/conf.d/90-sieve.conf ++++++ dovecot-2.1.configfiles ++++++ /etc/dovecot/README /etc/dovecot/conf.d/10-auth.conf /etc/dovecot/conf.d/10-director.conf /etc/dovecot/conf.d/10-logging.conf /etc/dovecot/conf.d/10-mail.conf /etc/dovecot/conf.d/10-master.conf /etc/dovecot/conf.d/10-ssl.conf /etc/dovecot/conf.d/15-lda.conf /etc/dovecot/conf.d/15-mailboxes.conf /etc/dovecot/conf.d/20-imap.conf /etc/dovecot/conf.d/20-lmtp.conf /etc/dovecot/conf.d/20-pop3.conf /etc/dovecot/conf.d/90-acl.conf /etc/dovecot/conf.d/90-plugin.conf /etc/dovecot/conf.d/90-quota.conf /etc/dovecot/conf.d/auth-checkpassword.conf.ext /etc/dovecot/conf.d/auth-deny.conf.ext /etc/dovecot/conf.d/auth-dict.conf.ext /etc/dovecot/conf.d/auth-ldap.conf.ext /etc/dovecot/conf.d/auth-master.conf.ext /etc/dovecot/conf.d/auth-passwdfile.conf.ext /etc/dovecot/conf.d/auth-sql.conf.ext /etc/dovecot/conf.d/auth-static.conf.ext /etc/dovecot/conf.d/auth-system.conf.ext /etc/dovecot/conf.d/auth-vpopmail.conf.ext /etc/dovecot/dovecot-db.conf.ext /etc/dovecot/dovecot-dict-auth.conf.ext /etc/dovecot/dovecot-dict-sql.conf.ext /etc/dovecot/dovecot-ldap.conf.ext /etc/dovecot/dovecot-sql.conf.ext /etc/dovecot/dovecot.conf ++++++ dovecot-2.2-pigeonhole.configfiles ++++++ /etc/dovecot/conf.d/20-managesieve.conf /etc/dovecot/conf.d/90-sieve-extprograms.conf /etc/dovecot/conf.d/90-sieve.conf /etc/dovecot/sieve-ldap.conf ++++++ dovecot-2.2.configfiles ++++++ /etc/dovecot/README /etc/dovecot/conf.d/10-auth.conf /etc/dovecot/conf.d/10-director.conf /etc/dovecot/conf.d/10-logging.conf /etc/dovecot/conf.d/10-mail.conf /etc/dovecot/conf.d/10-master.conf /etc/dovecot/conf.d/10-ssl.conf /etc/dovecot/conf.d/11-object-storage.conf /etc/dovecot/conf.d/15-lda.conf /etc/dovecot/conf.d/15-mailboxes.conf /etc/dovecot/conf.d/20-imap.conf /etc/dovecot/conf.d/20-lmtp.conf /etc/dovecot/conf.d/20-pop3.conf /etc/dovecot/conf.d/90-acl.conf /etc/dovecot/conf.d/90-plugin.conf /etc/dovecot/conf.d/90-quota.conf /etc/dovecot/conf.d/auth-checkpassword.conf.ext /etc/dovecot/conf.d/auth-deny.conf.ext /etc/dovecot/conf.d/auth-dict.conf.ext /etc/dovecot/conf.d/auth-ldap.conf.ext /etc/dovecot/conf.d/auth-master.conf.ext /etc/dovecot/conf.d/auth-passwdfile.conf.ext /etc/dovecot/conf.d/auth-sql.conf.ext /etc/dovecot/conf.d/auth-static.conf.ext /etc/dovecot/conf.d/auth-system.conf.ext /etc/dovecot/conf.d/auth-vpopmail.conf.ext /etc/dovecot/dovecot-dict-auth.conf.ext /etc/dovecot/dovecot-dict-sql.conf.ext /etc/dovecot/dovecot-ldap.conf.ext /etc/dovecot/dovecot-sql.conf.ext /etc/dovecot/dovecot.conf -- To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org For additional commands, e-mail: opensuse-commit+h...@opensuse.org