Hello community, here is the log from the commit of package PackageKit for openSUSE:Leap:15.2 checked in at 2020-03-17 04:15:13 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Leap:15.2/PackageKit (Old) and /work/SRC/openSUSE:Leap:15.2/.PackageKit.new.3160 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "PackageKit" Tue Mar 17 04:15:13 2020 rev:65 rq:784745 version:1.1.13 Changes: -------- --- /work/SRC/openSUSE:Leap:15.2/PackageKit/PackageKit.changes 2020-01-30 14:48:25.746839556 +0100 +++ /work/SRC/openSUSE:Leap:15.2/.PackageKit.new.3160/PackageKit.changes 2020-03-17 04:15:22.332967212 +0100 @@ -1,0 +2,76 @@ +Thu Mar 12 01:47:44 UTC 2020 - Jonathan Kang <songchuan.k...@suse.com> + +- Add PackageKit-zypp-ignore-already-installed-packages.patch, + remove PackageKit-zypp-revert-fail-on-already-installed.patch: + zypp: Ignore already installed package when installing + (bsc#1155624, gh#/hughsie/PackageKit/commit/d9233011). + +------------------------------------------------------------------- +Tue Mar 10 03:04:40 UTC 2020 - Jonathan Kang <songchuan.k...@suse.com> + +- Fix source URL in the spec file. + +------------------------------------------------------------------- +Sat Mar 7 15:34:03 UTC 2020 - Neal Gompa <ngomp...@gmail.com> + +- Add patch to stop zypp backend failing on already installed packages (boo#1155624) + + Patch: PackageKit-zypp-revert-fail-on-already-installed.patch + +------------------------------------------------------------------- +Sat Jan 25 14:04:56 UTC 2020 - Dominique Leuenberger <dims...@opensuse.org> + +- No longer recommend -lang: supplements are in use + +------------------------------------------------------------------- +Sun Jan 19 22:48:36 UTC 2020 - Neal Gompa <ngomp...@gmail.com> + +- Fix autotools modifications in openSUSE vendor patch + + Patch: PackageKit-dnf-Add-openSUSE-vendor.patch + +------------------------------------------------------------------- +Sun Jan 12 19:25:24 UTC 2020 - Neal Gompa <ngomp...@gmail.com> + +- Update to version 1.1.13 + + New APIs for pk-client-helper in packagekit-glib2 + + dnf, zypp: Various fixes related to upgrades + + Added support for user services + + New plymouth "system-upgrade" and "reboot" modes used now + + Add mutex lock to protect EULAs array + + Correct bug tracker links on website + + Support non-x86 arches in gstreamer helper + + List installed, removed and obsoleted packages in pkcon get-updates + + Properly mark obsoleted packages when simulating upgrade + + Provide information about obsoleted packages + + Return directly when its state is going backwards + + Shrink the progress bar to fit when run in small spaces + + Improve the 'using' documentation with a link to API +- Remove upstreamed patches: + + PackageKit-add-mutex-lock-to-protect-backend-priv-eulas.patch + + PackageKit-return-on-transactions-going-backwards.patch + + PackageKit-zypp-dont-set-upgrade-mode-on-updating-specific-packages.patch + + PackageKit-zypp-fix-newest-filter.patch + + PackageKit-zypp-fix-what-provides-newest-filter.patch + + PackageKit-zypp-get-files-string-array.patch + + PackageKit-zypp-get-updates-dup-or-up.patch + + PackageKit-zypp-upgrade-system.patch + + zypp-perform-actions-disallowed-by-update-in-upgrade-mode.patch + + 0001-dnf-Don-t-override-DnfContext-s-release_ver-for-the-.patch + + 0001-dnf-Invalidate-the-sack-cache-after-downloading-new-.patch + + 0001-offline-update-Use-new-plymouth-system-upgrade-and-r.patch +- Add new openSUSE specific patches for DNF backend: + + PackageKit-dnf-Add-openSUSE-vendor.patch + + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch +- Remove old openSUSE patches for the DNF backend: + + 1001-dnf-Add-openSUSE-Tumbleweed-vendor.patch + + 1002-dnf-Add-support-for-AppStream-repodata-basenames-use.patch +- Refresh patches: + + PackageKit-drop-gtk2.patch + +------------------------------------------------------------------- +Thu Nov 21 01:09:07 UTC 2019 - Jonathan Kang <songchuan.k...@suse.com> + +- Add PackageKit-zypp-update-packages-in-all-openSUSE.patch: Handle + Tumbleweed upgrade in update-packages as well so that it doesn't + break other components. + +------------------------------------------------------------------- @@ -31,0 +108,13 @@ + +------------------------------------------------------------------- +Sun Sep 1 02:29:07 UTC 2019 - Neal Gompa <ngomp...@gmail.com> + +- Build PackageKit DNF backend +- Add patches to support backend + + 0001-dnf-Invalidate-the-sack-cache-after-downloading-new-.patch + + 0001-dnf-Don-t-override-DnfContext-s-release_ver-for-the-.patch + + 1001-dnf-Add-openSUSE-Tumbleweed-vendor.patch + + 1002-dnf-Add-support-for-AppStream-repodata-basenames-use.patch +- Add patch to improve offline updates with plymouth + + 0001-offline-update-Use-new-plymouth-system-upgrade-and-r.patch +- Fix Supplements to use modern rich Supplements statements Old: ---- PackageKit-1.1.12.tar.xz PackageKit-1.1.12.tar.xz.asc PackageKit-add-mutex-lock-to-protect-backend-priv-eulas.patch PackageKit-return-on-transactions-going-backwards.patch PackageKit-zypp-dont-set-upgrade-mode-on-updating-specific-packages.patch PackageKit-zypp-fix-newest-filter.patch PackageKit-zypp-fix-what-provides-newest-filter.patch PackageKit-zypp-get-files-string-array.patch PackageKit-zypp-get-updates-dup-or-up.patch PackageKit-zypp-upgrade-system.patch zypp-perform-actions-disallowed-by-update-in-upgrade-mode.patch New: ---- PackageKit-1.1.13.tar.xz PackageKit-1.1.13.tar.xz.asc PackageKit-dnf-Add-openSUSE-vendor.patch PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch PackageKit-zypp-ignore-already-installed-packages.patch PackageKit-zypp-update-packages-in-all-openSUSE.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ PackageKit.spec ++++++ --- /var/tmp/diff_new_pack.5E3xGv/_old 2020-03-17 04:15:23.760968040 +0100 +++ /var/tmp/diff_new_pack.5E3xGv/_new 2020-03-17 04:15:23.760968040 +0100 @@ -1,7 +1,7 @@ # # spec file for package PackageKit # -# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2020 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -22,6 +22,14 @@ %else %bcond_without offline_updates %endif + +# Only make DNF backend available on openSUSE flavors +%if (0%{?sle_version} >= 150100 || 0%{?suse_version} >= 1550) && 0%{?is_opensuse} +%bcond_without dnf +%else +%bcond_with dnf +%endif + # $ pkcon search file /usr/bin/anjuta #Compat macro for new _fillupdir macro introduced in Nov 2017 %if ! %{defined _fillupdir} @@ -29,43 +37,36 @@ %endif Name: PackageKit -Version: 1.1.12 +Version: 1.1.13 Release: 0 Summary: Simple software installation management software License: GPL-2.0-or-later Group: System/Daemons -URL: https://www.freedesktop.org/software/PackageKit/ +URL: https://www.freedesktop.org/software/PackageKit Source0: %{url}/releases/%{name}-%{version}.tar.xz Source1: %{url}/releases/%{name}-%{version}.tar.xz.asc Source2: baselibs.conf Source3: PackageKit.tmpfiles Source99: PackageKit.keyring -# PATCH-FIX-UPSTREAM PackageKit-return-on-transactions-going-backwards.patch gh#hughsie/PackageKit#301, bsc#1038425 sck...@suse.com -- transaction: Return directly when its state is going backwards -Patch1: PackageKit-return-on-transactions-going-backwards.patch -# PATCH-FIX-UPSTREAM PackageKit-add-mutex-lock-to-protect-backend-priv-eulas.patch gh#hughsie/PackageKit#303, bsc#1038425 sck...@suse.com -- Remove pk_is_thread_default() check in pk_backend_is_eula_valid -Patch2: PackageKit-add-mutex-lock-to-protect-backend-priv-eulas.patch # PATCH-FEATURE-OPENSUSE PackageKit-systemd-timers.patch bsc#1115410 sck...@suse.com -- Migrate from cron to systemd timers -Patch3: PackageKit-systemd-timers.patch +Patch1: PackageKit-systemd-timers.patch # PATCH-FIX-OPENSUSE PackageKit-remove-polkit-rules.patch bsc#1125434 sck...@suse.com -- Remove polkit rules file -Patch4: PackageKit-remove-polkit-rules.patch -# PATCH-FIX-UPSTREAM PackageKit-zypp-fix-newest-filter.patch bsc#1137019 gh#hughsie/PackageKit#329 sck...@suse.com -- zypp: Emit installed package for newest filter -Patch5: PackageKit-zypp-fix-newest-filter.patch -# PATCH-FIX-UPSTREAM PackageKit-zypp-fix-what-provides-newest-filter.patch bsc#984865, gh#hughsie/PackageKit#335 sck...@suse.com -- zypp: Add support for newest filter in what-provides -Patch6: PackageKit-zypp-fix-what-provides-newest-filter.patch +Patch2: PackageKit-remove-polkit-rules.patch # PATCH-FIX-UPSTREAM PackageKit-drop-gtk2.patch gh#/hughsie/PackageKit#333 - Port away from gtk2 dependency -Patch7: PackageKit-drop-gtk2.patch -# PATCH-FIX-UPSTREAM PackageKit-zypp-get-updates-dup-or-up.patch gh#hughsie/PackageKit#343 sck...@suse.com -- zypp: Fix get-updates in Tumbleweed -Patch8: PackageKit-zypp-get-updates-dup-or-up.patch -# PATCH-FIX-UPSTREAM PackageKit-zypp-dont-set-upgrade-mode-on-updating-specific-packages.patch gh#hughsie/PackageKit#345 sck...@suse.com -- zypp: Don't set upgrade mode in update-packages -Patch9: PackageKit-zypp-dont-set-upgrade-mode-on-updating-specific-packages.patch -Patch10: zypp-perform-actions-disallowed-by-update-in-upgrade-mode.patch -# PATCH-FIX-UPSTREAM PackageKit-zypp-upgrade-system.patch bsc#1155638, bsc#1154973, gh#hughsie/PackageKit/commit/d060dd24 sck...@suse.com -- zypp: implement upgrade-system method -Patch11: PackageKit-zypp-upgrade-system.patch -# PATCH-FIX-UPSTREAM PackageKit-zypp-get-files-string-array.patch gh#hughsie/PackageKit#351 sck...@suse.com -- zypp: pass an array of strings to pk_backend_job_files() -Patch12: PackageKit-zypp-get-files-string-array.patch +Patch3: PackageKit-drop-gtk2.patch +# PATCH-FIX-UPSTREAM PackageKit-zypp-update-packages-in-all-openSUSE.patch sck...@suse.com -- Handle Tumbleweed upgrade in update-packages as well so that it doesn't break other components. +Patch4: PackageKit-zypp-update-packages-in-all-openSUSE.patch +# PATCH-FIX-UPSTREAM PackageKit-zypp-ignore-already-installed-packages.patch bsc#1155624, gh#/hughsie/PackageKit/commit/d9233011 songchuan.k...@suse.com -- zypp: Ignore already installed package when installing. +Patch5: PackageKit-zypp-ignore-already-installed-packages.patch +# PATCH-FIX-OPENSUSE PackageKit-dnf-Add-openSUSE-vendor.patch ngomp...@gmail.com -- Add openSUSE vendor +Patch1001: PackageKit-dnf-Add-openSUSE-vendor.patch +# PATCH-FIX-OPENSUSE PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch ngomp...@gmail.com -- Band-aid to deal with OBS producing differently named appstream repodata files +Patch1002: PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch +BuildRequires: autoconf BuildRequires: autoconf-archive +BuildRequires: automake BuildRequires: fdupes BuildRequires: gcc-c++ BuildRequires: gobject-introspection-devel @@ -76,6 +77,10 @@ BuildRequires: intltool BuildRequires: libarchive-devel BuildRequires: libcppunit-devel +%if %{with dnf} +BuildRequires: appstream-glib-devel +BuildRequires: libdnf-devel >= 0.22.0 +%endif BuildRequires: libgudev-1_0-devel BuildRequires: libtool BuildRequires: libzypp-devel @@ -93,8 +98,8 @@ # We really want a working backend (likely zypp) Requires: %{name}-backend Requires: %{name}-branding = %{version} +Suggests: %{name}-backend-zypp Requires(post): %fillup_prereq -Recommends: %{name}-lang %if 0%{suse_version} < 1500 Suggests: cron %endif @@ -121,6 +126,8 @@ Group: System/Daemons Requires: %{name} = %{version} Provides: %{name}-backend = %{version} +Conflicts: %{name}-backend +Supplements: (%{name} and libzypp) %description backend-zypp PackageKit is a system designed to make installing and updating @@ -129,6 +136,26 @@ use some of the latest technology like PolicyKit to make the process suck less. +%if %{with dnf} +%package backend-dnf +Summary: DNF backend for the PackageKit installation management software +License: GPL-2.0-or-later +Group: System/Daemons +Requires: %{name} = %{version} +Provides: %{name}-backend = %{version} +Conflicts: %{name}-backend +Supplements: (%{name} and dnf-conf and rpm-repos-openSUSE) +# Stricter dependency to keep things sane +%requires_ge %(rpm -qf "$(readlink -f %{_libdir}/libdnf.so)") + +%description backend-dnf +PackageKit is a system designed to make installing and updating +software on your computer easier. The primary design goal is to unify +all the software graphical tools used in different distributions, and +use some of the latest technology like PolicyKit to make the process +suck less. +%endif + %package gstreamer-plugin Summary: GStreamer plugin for the PackageKit installation management software License: GPL-2.0-or-later @@ -136,7 +163,7 @@ Requires(post): update-alternatives Requires(postun): update-alternatives Recommends: %{name} = %{version} -Supplements: packageand(%{name}:gstreamer-plugins-base) +Supplements: (%{name} and gstreamer-plugins-base) %description gstreamer-plugin PackageKit is a system designed to make installing and updating @@ -150,7 +177,7 @@ License: GPL-2.0-or-later Group: System/Libraries Recommends: %{name} = %{version} -Supplements: packageand(%{name}:gtk3) +Supplements: (%{name} and gtk3) %glib2_gsettings_schema_requires %description gtk3-module @@ -224,7 +251,7 @@ License: GPL-2.0-or-later Group: System/Daemons Requires: %{name} = %{version} -Supplements: packageand(%{name}:branding-upstream) +Supplements: (%{name} and branding-upstream) Conflicts: %{name}-branding Provides: %{name}-branding = %{version} BuildArch: noarch @@ -246,6 +273,9 @@ %autosetup -p1 translation-update-upstream +# Due to DNF patches, need to regen configure... +autoreconf -fiv + %build NOCONFIGURE=1 ./autogen.sh %if !0%{?is_opensuse} @@ -253,6 +283,8 @@ %endif %configure \ --disable-static \ + %{?with_dnf:--enable-dnf} \ + %{?with_dnf:--with-dnf-vendor=opensuse} \ --enable-zypp \ --enable-gstreamer-plugin \ %if ! %{BUILD_CNF} @@ -432,6 +464,11 @@ %files backend-zypp %{_libdir}/packagekit-backend/libpk_backend_zypp.so +%if %{with dnf} +%files backend-dnf +%{_libdir}/packagekit-backend/libpk_backend_dnf.so +%endif + %files gstreamer-plugin %ghost %{_sysconfdir}/alternatives/gst-install-plugins-helper %{_libexecdir}/gst-install-plugins-helper ++++++ PackageKit-1.1.12.tar.xz -> PackageKit-1.1.13.tar.xz ++++++ ++++ 17587 lines of diff (skipped) ++++++ PackageKit-dnf-Add-openSUSE-vendor.patch ++++++ >From ce09f71f3ef58ccdb647672b400bbdddeea8235d Mon Sep 17 00:00:00 2001 From: Neal Gompa <ngomp...@gmail.com> Date: Sun, 12 Jan 2020 14:42:45 -0500 Subject: [PATCH] dnf: Add openSUSE vendor --- backends/dnf/Makefile.am | 3 +- backends/dnf/dnf-backend-vendor-opensuse.c | 61 ++++++++++++++++++++++ configure.ac | 4 +- 3 files changed, 65 insertions(+), 3 deletions(-) create mode 100644 backends/dnf/dnf-backend-vendor-opensuse.c diff --git a/backends/dnf/Makefile.am b/backends/dnf/Makefile.am index 7b12328bd..97578d081 100644 --- a/backends/dnf/Makefile.am +++ b/backends/dnf/Makefile.am @@ -4,7 +4,8 @@ EXTRA_DIST = \ dnf-backend-vendor-fedora.c \ dnf-backend-vendor-mageia.c \ dnf-backend-vendor-openmandriva.c \ - dnf-backend-vendor-rosa.c + dnf-backend-vendor-rosa.c \ + dnf-backend-vendor-opensuse.c libpk_backend_dnf_la_SOURCES = \ dnf-backend-vendor.h \ dnf-backend.c \ diff --git a/backends/dnf/dnf-backend-vendor-opensuse.c b/backends/dnf/dnf-backend-vendor-opensuse.c new file mode 100644 index 000000000..f317ac34f --- /dev/null +++ b/backends/dnf/dnf-backend-vendor-opensuse.c @@ -0,0 +1,61 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- + * + * Copyright (C) 2020 Neal Gompa <ngomp...@gmail.com> + * based on dnf-backend-vendor-mageia.c + * + * Licensed under the GNU Lesser General Public License Version 2.1 + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#include "dnf-backend-vendor.h" + +gboolean +dnf_validate_supported_repo (const gchar *id) +{ + guint i, j, k, l; + + const gchar *valid_sourcesect[] = { "-oss", + "-non-oss", + NULL }; + + const gchar *valid_sourcetype[] = { "", + "-debuginfo", + "-source", + NULL }; + + const gchar *valid_sourcechan[] = { "", + "-update", + NULL }; + + const gchar *valid[] = { "opensuse-tumbleweed", + "opensuse-leap", + NULL }; + + /* Iterate over the ID arrays to find a matching identifier */ + for (i = 0; valid[i] != NULL; i++) { + for (j = 0; valid_sourcesect[j] != NULL; j++) { + for (k = 0; valid_sourcechan[k] != NULL; k++) { + for (l = 0; valid_sourcetype[l] != NULL; l++) { + g_autofree gchar *source_entry = g_strconcat(valid[i], valid_sourcesect[j], valid_sourcechan[k], valid_sourcetype[l], NULL); + if (g_strcmp0 (id, source_entry) == 0) { + return TRUE; + } + } + } + } + } + return FALSE; +} diff --git a/configure.ac b/configure.ac index 2edb6270f..297304fa5 100644 --- a/configure.ac +++ b/configure.ac @@ -426,8 +426,8 @@ AC_SUBST(DBUS_SERVICES_DIR) if test x$enable_dnf = xyes; then PKG_CHECK_MODULES(DNF, appstream-glib libdnf >= 0.22.0 rpm) AC_ARG_WITH(dnf-vendor, - [AS_HELP_STRING([--with-dnf-vendor=<vendor>],[select a vendor configuration (fedora, mageia, openmandriva, rosa; default is fedora)])]) - if test "$with_dnf_vendor" = "fedora" -o "$with_dnf_vendor" = "mageia" -o "$with_dnf_vendor" = "openmandriva" -o "$with_dnf_vendor" = "rosa"; then + [AS_HELP_STRING([--with-dnf-vendor=<vendor>],[select a vendor configuration (fedora, mageia, openmandriva, rosa, opensuse; default is fedora)])]) + if test "$with_dnf_vendor" = "fedora" -o "$with_dnf_vendor" = "mageia" -o "$with_dnf_vendor" = "openmandriva" -o "$with_dnf_vendor" = "rosa" -o "$with_dnf_vendor" = "opensuse"; then with_dnf_vendor="$with_dnf_vendor" else with_dnf_vendor="fedora" -- 2.24.1 ++++++ PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch ++++++ >From 819847a0f585e9e950f63c65fa5dead5cdf0027c Mon Sep 17 00:00:00 2001 From: Neal Gompa <ngomp...@gmail.com> Date: Sat, 31 Aug 2019 22:45:04 -0400 Subject: [PATCH] dnf: Add support for AppStream repodata basenames used by Open Build Service For no particularly clear reason, it appears that the Open Build Service appends AppStream repodata to repositories with the 'appdata' basename instead of the default 'appstream' basename. Support downloading this variant as well, as it should (hopefully) be mutually exclusive. --- backends/dnf/pk-backend-dnf.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backends/dnf/pk-backend-dnf.c b/backends/dnf/pk-backend-dnf.c index 503a6eb0a..3d39101ba 100644 --- a/backends/dnf/pk-backend-dnf.c +++ b/backends/dnf/pk-backend-dnf.c @@ -505,7 +505,7 @@ pk_backend_stop_job (PkBackend *backend, PkBackendJob *job) static gboolean dnf_utils_refresh_repo_appstream (DnfRepo *repo, GError **error) { - const gchar *as_basenames[] = { "appstream", "appstream-icons", NULL }; + const gchar *as_basenames[] = { "appstream", "appstream-icons", "appdata", "appdata-icons", NULL }; for (guint i = 0; as_basenames[i] != NULL; i++) { const gchar *tmp = dnf_repo_get_filename_md (repo, as_basenames[i]); if (tmp != NULL) { -- 2.24.1 ++++++ PackageKit-drop-gtk2.patch ++++++ --- /var/tmp/diff_new_pack.5E3xGv/_old 2020-03-17 04:15:24.260968330 +0100 +++ /var/tmp/diff_new_pack.5E3xGv/_new 2020-03-17 04:15:24.260968330 +0100 @@ -1,7 +1,7 @@ -diff -Nur orig-PackageKit-1.1.12/configure.ac PackageKit-1.1.12/configure.ac ---- orig-PackageKit-1.1.12/configure.ac 2018-11-24 09:40:55.000000000 +0100 -+++ PackageKit-1.1.12/configure.ac 2019-08-13 02:42:33.673856519 +0200 -@@ -307,14 +307,10 @@ +diff -Nur PackageKit-1.1.13-orig/configure.ac PackageKit-1.1.13/configure.ac +--- PackageKit-1.1.13-orig/configure.ac 2020-01-08 08:56:23.000000000 -0500 ++++ PackageKit-1.1.13/configure.ac 2020-01-12 14:49:20.088311964 -0500 +@@ -339,14 +339,10 @@ if test x$enable_gtk_module = xyes; then PKG_CHECK_MODULES(PK_GTK_MODULE, gtk+-3.0 >= 3.0.0 pangoft2 fontconfig gio-2.0, build_gtk_module=yes, build_gtk_module=no) @@ -17,7 +17,7 @@ AM_CONDITIONAL(PK_BUILD_GTK_MODULE, test $build_gtk_module = "yes") dnl --------------------------------------------------------------------------- -@@ -530,7 +526,6 @@ +@@ -569,7 +565,6 @@ contrib/Makefile contrib/gstreamer-plugin/Makefile contrib/gtk-module/Makefile @@ -25,9 +25,9 @@ contrib/yum-packagekit/Makefile contrib/command-not-found/Makefile contrib/cron/Makefile -diff -Nur orig-PackageKit-1.1.12/contrib/gtk-module/gtk2/Makefile.am PackageKit-1.1.12/contrib/gtk-module/gtk2/Makefile.am ---- orig-PackageKit-1.1.12/contrib/gtk-module/gtk2/Makefile.am 2016-01-05 10:48:43.000000000 +0100 -+++ PackageKit-1.1.12/contrib/gtk-module/gtk2/Makefile.am 1970-01-01 01:00:00.000000000 +0100 +diff -Nur PackageKit-1.1.13-orig/contrib/gtk-module/gtk2/Makefile.am PackageKit-1.1.13/contrib/gtk-module/gtk2/Makefile.am +--- PackageKit-1.1.13-orig/contrib/gtk-module/gtk2/Makefile.am 2019-04-08 08:04:23.000000000 -0400 ++++ PackageKit-1.1.13/contrib/gtk-module/gtk2/Makefile.am 1969-12-31 19:00:00.000000000 -0500 @@ -1,10 +0,0 @@ -if PK_BUILD_GTK_MODULE -moduledir = $(LIBDIR)/gtk-2.0/modules @@ -39,10 +39,10 @@ -endif - --include $(top_srcdir)/git.mk -diff -Nur orig-PackageKit-1.1.12/contrib/gtk-module/gtk2/Makefile.in PackageKit-1.1.12/contrib/gtk-module/gtk2/Makefile.in ---- orig-PackageKit-1.1.12/contrib/gtk-module/gtk2/Makefile.in 2018-11-28 09:00:23.000000000 +0100 -+++ PackageKit-1.1.12/contrib/gtk-module/gtk2/Makefile.in 1970-01-01 01:00:00.000000000 +0100 -@@ -1,821 +0,0 @@ +diff -Nur PackageKit-1.1.13-orig/contrib/gtk-module/gtk2/Makefile.in PackageKit-1.1.13/contrib/gtk-module/gtk2/Makefile.in +--- PackageKit-1.1.13-orig/contrib/gtk-module/gtk2/Makefile.in 2020-01-08 09:01:28.000000000 -0500 ++++ PackageKit-1.1.13/contrib/gtk-module/gtk2/Makefile.in 1969-12-31 19:00:00.000000000 -0500 +@@ -1,827 +0,0 @@ -# Makefile.in generated by automake 1.16.1 from Makefile.am. -# @configure_input@ - @@ -270,6 +270,7 @@ -APPSTREAM_LIBS = @APPSTREAM_LIBS@ -APTCC_CFLAGS = @APTCC_CFLAGS@ -APTCC_LIBS = @APTCC_LIBS@ +-APTINST_LIBS = @APTINST_LIBS@ -AR = @AR@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ @@ -307,6 +308,8 @@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EGREP = @EGREP@ +-ELOGIND_CFLAGS = @ELOGIND_CFLAGS@ +-ELOGIND_LIBS = @ELOGIND_LIBS@ -EXEEXT = @EXEEXT@ -FGREP = @FGREP@ -GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ @@ -416,6 +419,8 @@ -PK_PLUGIN_DIR = @PK_PLUGIN_DIR@ -PK_PLUGIN_LIBS = @PK_PLUGIN_LIBS@ -PK_VERSION = @PK_VERSION@ +-PLYMOUTH_0_9_5_CFLAGS = @PLYMOUTH_0_9_5_CFLAGS@ +-PLYMOUTH_0_9_5_LIBS = @PLYMOUTH_0_9_5_LIBS@ -POFILES = @POFILES@ -POLDEK_CFLAGS = @POLDEK_CFLAGS@ -POLDEK_LIBS = @POLDEK_LIBS@ @@ -515,6 +520,7 @@ -srcdir = @srcdir@ -sysconfdir = @sysconfdir@ -systemdsystemunitdir = @systemdsystemunitdir@ +-systemduserunitdir = @systemduserunitdir@ -target_alias = @target_alias@ -top_build_prefix = @top_build_prefix@ -top_builddir = @top_builddir@ @@ -864,9 +870,9 @@ -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: -diff -Nur orig-PackageKit-1.1.12/contrib/gtk-module/gtk2/pk-gtk-module-gtk2.c PackageKit-1.1.12/contrib/gtk-module/gtk2/pk-gtk-module-gtk2.c ---- orig-PackageKit-1.1.12/contrib/gtk-module/gtk2/pk-gtk-module-gtk2.c 2016-01-05 10:48:43.000000000 +0100 -+++ PackageKit-1.1.12/contrib/gtk-module/gtk2/pk-gtk-module-gtk2.c 1970-01-01 01:00:00.000000000 +0100 +diff -Nur PackageKit-1.1.13-orig/contrib/gtk-module/gtk2/pk-gtk-module-gtk2.c PackageKit-1.1.13/contrib/gtk-module/gtk2/pk-gtk-module-gtk2.c +--- PackageKit-1.1.13-orig/contrib/gtk-module/gtk2/pk-gtk-module-gtk2.c 2018-09-21 06:54:30.000000000 -0400 ++++ PackageKit-1.1.13/contrib/gtk-module/gtk2/pk-gtk-module-gtk2.c 1969-12-31 19:00:00.000000000 -0500 @@ -1,38 +0,0 @@ -/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- - * @@ -906,9 +912,9 @@ -{ - return NULL; -} -diff -Nur orig-PackageKit-1.1.12/contrib/gtk-module/Makefile.am PackageKit-1.1.12/contrib/gtk-module/Makefile.am ---- orig-PackageKit-1.1.12/contrib/gtk-module/Makefile.am 2016-01-05 10:48:43.000000000 +0100 -+++ PackageKit-1.1.12/contrib/gtk-module/Makefile.am 2019-08-13 02:38:03.250607974 +0200 +diff -Nur PackageKit-1.1.13-orig/contrib/gtk-module/Makefile.am PackageKit-1.1.13/contrib/gtk-module/Makefile.am +--- PackageKit-1.1.13-orig/contrib/gtk-module/Makefile.am 2019-04-08 08:04:23.000000000 -0400 ++++ PackageKit-1.1.13/contrib/gtk-module/Makefile.am 2020-01-12 14:49:33.786196319 -0500 @@ -1,5 +1,3 @@ -SUBDIRS = gtk2 - ++++++ PackageKit-zypp-ignore-already-installed-packages.patch ++++++ >From d9233011cbc7b69f5318ae2c2e03712e11e3dea0 Mon Sep 17 00:00:00 2001 From: Jonathan Kang <jonathank...@gnome.org> Date: Wed, 11 Mar 2020 09:37:19 +0800 Subject: [PATCH] zypp: Ignore already installed package when installing Previously, when users are installing multiple packages at the same time using "pkcon install", if one/some of those packages is/are already installed, the whole installing process terminates, withouting installing those uninstalled packages. Fix that by ignoring those already installed pacakge and proceeding to install those which are not yet installed. --- backends/zypp/pk-backend-zypp.cpp | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/backends/zypp/pk-backend-zypp.cpp b/backends/zypp/pk-backend-zypp.cpp index 9aa24741c..62b78ec0c 100644 --- a/backends/zypp/pk-backend-zypp.cpp +++ b/backends/zypp/pk-backend-zypp.cpp @@ -2785,12 +2785,7 @@ backend_install_packages_thread (PkBackendJob *job, GVariant *params, gpointer u if (relations[i] == EQUAL_VERSION && !pk_bitfield_contain (transaction_flags, PK_TRANSACTION_FLAG_ENUM_ALLOW_REINSTALL)) { - g_autofree gchar *printable_tmp = pk_package_id_to_printable (package_ids[i]); - pk_backend_job_error_code (job, - PK_ERROR_ENUM_PACKAGE_ALREADY_INSTALLED, - "%s is already installed", - printable_tmp); - return; + continue; } if (relations[i] == OLDER_VERSION && -- 2.24.0 ++++++ PackageKit-zypp-update-packages-in-all-openSUSE.patch ++++++ >From 91c8ffd7cdfb80f48c255e097675db34cc671dc9 Mon Sep 17 00:00:00 2001 From: Jonathan Kang <jonathank...@gnome.org> Date: Wed, 20 Nov 2019 15:13:04 +0800 Subject: [PATCH] zypp: Merge updating function into update-packages No matter whether you are using Tumbleweed or Leap, update-packages is the place where all the action happens. --- backends/zypp/pk-backend-zypp.cpp | 40 ++++++++++++++++++++++++------- 1 file changed, 31 insertions(+), 9 deletions(-) diff --git a/backends/zypp/pk-backend-zypp.cpp b/backends/zypp/pk-backend-zypp.cpp index 861c93ab0..2e582a0e6 100644 --- a/backends/zypp/pk-backend-zypp.cpp +++ b/backends/zypp/pk-backend-zypp.cpp @@ -3414,6 +3414,36 @@ pk_backend_get_packages (PkBackend *backend, PkBackendJob *job, PkBitfield filte pk_backend_job_thread_create (job, backend_get_packages_thread, NULL, NULL); } +static void +upgrade_system (PkBackendJob *job, + ZYpp::Ptr zypp, + PkBitfield transaction_flags) +{ + set<PoolItem> candidates; + + /* refresh the repos before checking for updates. */ + if (!zypp_refresh_cache (job, zypp, FALSE)) { + return; + } + zypp_build_pool (zypp, TRUE); + zypp_get_updates (job, zypp, candidates); + if (candidates.empty ()) { + pk_backend_job_error_code (job, PK_ERROR_ENUM_NO_DISTRO_UPGRADE_DATA, + "No Distribution Upgrade Available."); + + return; + } + + zypp->resolver ()->dupSetAllowVendorChange (ZConfig::instance ().solver_dupAllowVendorChange ()); + zypp->resolver ()->doUpgrade (); + + PoolStatusSaver saver; + + zypp_perform_execution (job, zypp, UPGRADE_SYSTEM, FALSE, transaction_flags); + + zypp->resolver ()->setUpgradeMode (FALSE); +} + static void backend_update_packages_thread (PkBackendJob *job, GVariant *params, gpointer user_data) { @@ -3432,9 +3462,7 @@ backend_update_packages_thread (PkBackendJob *job, GVariant *params, gpointer us } if (is_tumbleweed ()) { - zypp_backend_finished_error (job, - PK_ERROR_ENUM_NOT_SUPPORTED, - "This product requires to be updated by calling 'pkcon upgrade-system'"); + upgrade_system (job, zypp, transaction_flags); return; } @@ -3480,12 +3508,6 @@ backend_update_packages_thread (PkBackendJob *job, GVariant *params, gpointer us } zypp_perform_execution (job, zypp, UPDATE, FALSE, transaction_flags); - - /* Don't reset upgrade mode if we're simulating the changes. Only reset - * it after the real actions has been done. */ - if (!pk_bitfield_contain (transaction_flags, PK_TRANSACTION_FLAG_ENUM_SIMULATE)) { - zypp->resolver()->setUpgradeMode(FALSE); - } } /** -- 2.24.0