Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package gnome-software for openSUSE:Factory checked in at 2026-04-10 17:45:40 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/gnome-software (Old) and /work/SRC/openSUSE:Factory/.gnome-software.new.21863 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gnome-software" Fri Apr 10 17:45:40 2026 rev:138 rq:1345364 version:50.0 Changes: -------- --- /work/SRC/openSUSE:Factory/gnome-software/gnome-software.changes 2026-01-13 21:12:57.842411463 +0100 +++ /work/SRC/openSUSE:Factory/.gnome-software.new.21863/gnome-software.changes 2026-04-10 17:46:13.433021050 +0200 @@ -1,0 +2,52 @@ +Tue Mar 31 06:23:43 UTC 2026 - Jonathan Kang <[email protected]> + +- Add gnome-software-online-update.patch: Use online update instead + of offline update in SLE 16 (jsc#PED-15005). +- Add gnome-software-disable-download-updates.patch: Disable + download-updates by default to avoid online-updatable updates + being installed automatically (jsc#PED-15005). +- Drop gnome-software-launch-gpk-update-viewer-for-updates.patch + and gnome-software-disable-offline-update.patch: not needed + any more due to above added patches. + +------------------------------------------------------------------- +Mon Mar 23 08:43:14 UTC 2026 - Dominique Leuenberger <[email protected]> + +- Migrate to xz compression and manual service run + +------------------------------------------------------------------- +Fri Mar 13 08:24:21 UTC 2026 - Bjørn Lie <[email protected]> + +- Update to version 50.0: + + Updated translations. + +------------------------------------------------------------------- +Sat Feb 28 09:12:33 UTC 2026 - Dominique Leuenberger <[email protected]> + +- Update to version 50.rc: + + Remember window size between app restarts + + Updates page could be sometimes hidden after resume from + suspend + + Allow remove also Flatpak remotes from system installation + + Correct check for add-ons when app's ID changed + + Improve socket permissions checks for Flatpak apps + + Updated translations. + +------------------------------------------------------------------- +Fri Feb 13 08:06:17 UTC 2026 - Dominique Leuenberger <[email protected]> + +- Update to version 50.beta: + + Show install and uninstall progress of an add-on + + Use lower thread priority when running in background + + Fix possible crash on session permission change + + Fix possible crash after XbSilo rebuild +- Changes from version 50.alpha: + + Improve notifying the user about newly installed trivial + flatpak app updates + + Improve display of keyboard shortcuts + + Split rpm-ostree changelogs by app + + Display error toasts in the repositories dialog when something + goes wrong + + Updated translations + +------------------------------------------------------------------- Old: ---- gnome-software-49.3.obscpio gnome-software-disable-offline-update.patch gnome-software-launch-gpk-update-viewer-for-updates.patch New: ---- _scmsync.obsinfo build.specials.obscpio gnome-software-50.0.tar.xz gnome-software-disable-download-updates.patch gnome-software-online-update.patch ----------(Old B)---------- Old:- Drop gnome-software-launch-gpk-update-viewer-for-updates.patch and gnome-software-disable-offline-update.patch: not needed any more due to above added patches. Old: being installed automatically (jsc#PED-15005). - Drop gnome-software-launch-gpk-update-viewer-for-updates.patch and gnome-software-disable-offline-update.patch: not needed ----------(Old E)---------- ----------(New B)---------- New: of offline update in SLE 16 (jsc#PED-15005). - Add gnome-software-disable-download-updates.patch: Disable download-updates by default to avoid online-updatable updates New: - Add gnome-software-online-update.patch: Use online update instead of offline update in SLE 16 (jsc#PED-15005). ----------(New E)---------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ gnome-software.spec ++++++ --- /var/tmp/diff_new_pack.lHHaTx/_old 2026-04-10 17:46:14.349058741 +0200 +++ /var/tmp/diff_new_pack.lHHaTx/_new 2026-04-10 17:46:14.349058741 +0200 @@ -20,19 +20,18 @@ %bcond_with profiling Name: gnome-software -Version: 49.3 +Version: 50.0 Release: 0 Summary: GNOME Software Store License: GPL-2.0-or-later Group: System/GUI/GNOME URL: https://wiki.gnome.org/Apps/Software -Source0: %{name}-%{version}.tar.zst -%if 0%{?sle_version} -# PATCH-FIX-OPENSUSE gnome-software-launch-gpk-update-viewer-for-updates.patch bsc#1077332 boo#1090042 [email protected] -- Don't launch gnome-software when clicking the updates notification. Launch gpk-update-viewer instead. -Patch0: gnome-software-launch-gpk-update-viewer-for-updates.patch -# PATCH-FIX-OPENSUSE gnome-software-disable-offline-update.patch bsc#944832 [email protected] -- Disable offline update in SLE and openSUSE Leap -Patch1: gnome-software-disable-offline-update.patch -%endif +Source0: %{name}-%{version}.tar.xz +## NOTE: SLE-only patches (starting on 1000). +# PATCH-FEATURE-SLE gnome-software-online-update.patch jsc#PED-15005 [email protected] -- Use online update in SLE 16 +Patch1000: gnome-software-online-update.patch +# PATCH-FEATURE-SLE gnome-software-disable-download-updates.patch jsc#PED-15005 [email protected] -- Disable download-updates by default to avoid online-updatable updates being installed automatically. +Patch1001: gnome-software-disable-download-updates.patch BuildRequires: gtk-doc BuildRequires: itstool BuildRequires: meson >= 0.58.0 @@ -47,10 +46,10 @@ BuildRequires: pkgconfig(gsettings-desktop-schemas) >= 3.11.5 BuildRequires: pkgconfig(gsettings-desktop-schemas) >= 3.18.0 BuildRequires: pkgconfig(gspell-1) -BuildRequires: pkgconfig(gtk4) +BuildRequires: pkgconfig(gtk4) >= 4.17.5 BuildRequires: pkgconfig(gudev-1.0) BuildRequires: pkgconfig(json-glib-1.0) >= 1.2.0 -BuildRequires: pkgconfig(libadwaita-1) +BuildRequires: pkgconfig(libadwaita-1) >= 1.8.alpha BuildRequires: pkgconfig(libsecret-1) BuildRequires: pkgconfig(libsoup-3.0) BuildRequires: pkgconfig(malcontent-0) >= 0.5.0 @@ -98,7 +97,12 @@ %lang_package %prep -%autosetup -p1 +%autosetup -N + +%autopatch -p1 -M 999 +%if !0%{?is_opensuse} && 0%{?suse_version} > 1600 +%autopatch -p1 -m 1000 +%endif %build %meson \ @@ -136,6 +140,7 @@ %{_datadir}/metainfo/org.gnome.Software.metainfo.xml %{_datadir}/applications/gnome-software-local-file-flatpak.desktop %{_datadir}/applications/gnome-software-local-file-fwupd.desktop +%{_datadir}/applications/gnome-software-local-file-metainfo.desktop %{_datadir}/applications/gnome-software-local-file-packagekit.desktop %{_datadir}/applications/org.gnome.Software.desktop %{_datadir}/bash-completion/completions/gnome-software @@ -149,7 +154,6 @@ %{_datadir}/icons/hicolor/*/*/*.svg %dir %{_libdir}/gnome-software %{_libexecdir}/gnome-software-cmd -%{_libexecdir}/gnome-software-restarter %{_mandir}/man1/%{name}.1%{?ext_man} %{_userunitdir}/gnome-software.service ++++++ _scmsync.obsinfo ++++++ mtime: 1775522477 commit: f737791c02bb666ebd5dd8d2616cf35f538bc274ef794944f16b6124ae548d37 url: https://src.opensuse.org/GNOME/gnome-software revision: f737791c02bb666ebd5dd8d2616cf35f538bc274ef794944f16b6124ae548d37 projectscmsync: https://src.opensuse.org/GNOME/_ObsPrj ++++++ _service ++++++ --- /var/tmp/diff_new_pack.lHHaTx/_old 2026-04-10 17:46:14.405061045 +0200 +++ /var/tmp/diff_new_pack.lHHaTx/_new 2026-04-10 17:46:14.409061209 +0200 @@ -3,18 +3,17 @@ <service name="obs_scm" mode="manual"> <param name="scm">git</param> <param name="url">https://gitlab.gnome.org/GNOME/gnome-software.git</param> - <param name="revision">49.3</param> + <param name="revision">50.0</param> <param name="versionformat">@PARENT_TAG@+@TAG_OFFSET@</param> <param name="versionrewrite-pattern">(.*)\+0</param> <param name="versionrewrite-replacement">\1</param> <param name="changesgenerate">disable</param> </service> - <service name="tar" mode="buildtime"/> - <service name="recompress" mode="buildtime"> + <service name="tar" mode="manual"/> + <service name="recompress" mode="manual"> <param name="file">*.tar</param> - <param name="compression">zst</param> + <param name="compression">xz</param> </service> - <service name="set_version" mode="manual" /> + <service name="set_version" mode="manual"/> </services> - ++++++ build.specials.obscpio ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/.gitignore new/.gitignore --- old/.gitignore 1970-01-01 01:00:00.000000000 +0100 +++ new/.gitignore 2026-04-07 09:21:16.000000000 +0200 @@ -0,0 +1,5 @@ +*.obscpio +*.osc +_build.* +.pbuild +osc-collab.* ++++++ gnome-software-disable-download-updates.patch ++++++ >From 2c94d989f44dc8df09fd9a60c3538770ea3d0deb Mon Sep 17 00:00:00 2001 From: Jonathan Kang <[email protected]> Date: Mon, 22 Dec 2025 13:42:38 +0800 Subject: [PATCH] Disable download-updates by default Otherwise all online-updatable updates will be installed automatically. --- data/org.gnome.software.gschema.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/data/org.gnome.software.gschema.xml b/data/org.gnome.software.gschema.xml index 2bc33c72f..b276a1df1 100644 --- a/data/org.gnome.software.gschema.xml +++ b/data/org.gnome.software.gschema.xml @@ -11,7 +11,7 @@ <description>If disabled, GNOME Software will hide the updates panel, not perform any automatic updates actions or prompt for upgrades.</description> </key> <key name="download-updates" type="b"> - <default>true</default> + <default>false</default> <summary>Automatically download and install updates</summary> <description>If enabled, GNOME Software automatically downloads software updates in the background, also installing ones that do not require a reboot.</description> </key> -- 2.52.0 ++++++ gnome-software-online-update.patch ++++++ >From 1d7b6c89ace0fd80d1cf8be9669d83ac3d02d53b Mon Sep 17 00:00:00 2001 From: Jonathan Kang <[email protected]> Date: Tue, 11 Nov 2025 11:02:41 +0800 Subject: [PATCH] Bring back online update support --- plugins/packagekit/gs-plugin-packagekit.c | 125 ++++++++++------------ plugins/packagekit/packagekit-common.c | 2 +- 2 files changed, 60 insertions(+), 67 deletions(-) diff --git a/plugins/packagekit/gs-plugin-packagekit.c b/plugins/packagekit/gs-plugin-packagekit.c index df2221378..24c01c07c 100644 --- a/plugins/packagekit/gs-plugin-packagekit.c +++ b/plugins/packagekit/gs-plugin-packagekit.c @@ -156,6 +156,12 @@ gs_plugin_packagekit_init (GsPluginPackagekit *self) { GsPlugin *plugin = GS_PLUGIN (self); + if (g_file_test ("/usr/sbin/transactional-update", G_FILE_TEST_EXISTS)) { + gs_plugin_set_enabled (plugin, FALSE); + g_debug ("Disabling itself as the system is in immutable mode."); + return; + } + /* refine */ self->control_refine = pk_control_new (); g_signal_connect (self->control_refine, "updates-changed", @@ -378,6 +384,35 @@ app_list_get_package_ids (GsAppList *apps, return g_steal_pointer (&list_package_ids); } +static GPtrArray * +app_list_get_real_package_ids (GsPluginPackagekit *self, + GsAppList *apps) +{ + g_autoptr(GPtrArray) package_ids = g_ptr_array_new_with_free_func (NULL); + + for (guint i = 0; i < gs_app_list_length (apps); i++) { + GsApp *app = gs_app_list_index (apps, i); + GsAppList *related = gs_app_get_related (app); + + /* System Updates proxy app. */ + if (gs_app_has_quirk (app, GS_APP_QUIRK_IS_PROXY)) { + for (guint j = 0; j < gs_app_list_length (related); j++) { + GsApp *app_tmp = gs_app_list_index (related, j); + + if (gs_app_get_state (app_tmp) == GS_APP_STATE_UPDATABLE_LIVE && + gs_app_has_management_plugin (app_tmp, GS_PLUGIN (self))) + g_ptr_array_add (package_ids, gs_app_get_source_id_default (app_tmp)); + } + } else { + if (gs_app_get_state (app) == GS_APP_STATE_UPDATABLE_LIVE && + gs_app_has_management_plugin (app, GS_PLUGIN (self))) + g_ptr_array_add (package_ids, gs_app_get_source_id_default (app)); + } + } + + return g_steal_pointer (&package_ids); +} + static GsApp * gs_plugin_packagekit_dup_app_origin_repo (GsPluginPackagekit *self, GsApp *app, @@ -1261,7 +1296,7 @@ gs_plugin_packagekit_set_update_app_state (GsApp *app, pk_package_get_info (package) == PK_INFO_ENUM_INSTALLING) { gs_app_set_state (app, GS_APP_STATE_AVAILABLE); } else { - gs_app_set_state (app, GS_APP_STATE_UPDATABLE); + gs_app_set_state (app, GS_APP_STATE_UPDATABLE_LIVE); } #else if (pk_package_get_info (package) == PK_INFO_ENUM_REMOVING || @@ -1270,7 +1305,7 @@ gs_plugin_packagekit_set_update_app_state (GsApp *app, } else if (pk_package_get_info (package) == PK_INFO_ENUM_INSTALLING) { gs_app_set_state (app, GS_APP_STATE_AVAILABLE); } else { - gs_app_set_state (app, GS_APP_STATE_UPDATABLE); + gs_app_set_state (app, GS_APP_STATE_UPDATABLE_LIVE); } #endif } @@ -5130,66 +5165,26 @@ update_apps_download_cb (GObject *source_object, } if (!(data->flags & GS_PLUGIN_UPDATE_APPS_FLAGS_NO_APPLY)) { - gboolean trigger_update = FALSE; - - /* Are any of these apps from PackageKit, and suitable for offline - * updates? If any of them can be processed offline, trigger an offline - * update. If all of them are updatable online, don’t. */ - for (guint i = 0; i < gs_app_list_length (data->apps); i++) { - GsApp *app = gs_app_list_index (data->apps, i); - GsAppList *related = gs_app_get_related (app); - - /* try to trigger this app */ - if (!gs_app_has_quirk (app, GS_APP_QUIRK_IS_PROXY) && - gs_app_get_state (app) == GS_APP_STATE_UPDATABLE && - gs_app_has_management_plugin (app, GS_PLUGIN (self))) { - trigger_update = TRUE; - break; - } - - /* try to trigger each related app */ - for (guint j = 0; j < gs_app_list_length (related); j++) { - GsApp *app_tmp = gs_app_list_index (related, j); - - if (gs_app_get_state (app_tmp) == GS_APP_STATE_UPDATABLE && - gs_app_has_management_plugin (app_tmp, GS_PLUGIN (self))) { - trigger_update = TRUE; - break; - } - } - } + g_autoptr(GPtrArray) package_ids = g_ptr_array_new_with_free_func (NULL); + g_autoptr(GsPackagekitHelper) helper = NULL; + g_autoptr(PkTask) task_update = NULL; - if (trigger_update && !self->is_triggered) { - GDBusConnection *connection; + helper = gs_packagekit_helper_new (GS_PLUGIN (source_object)); + task_update = gs_packagekit_task_new (GS_PLUGIN (source_object)); + gs_packagekit_task_take_helper (GS_PACKAGEKIT_TASK (task_update), helper); - /* trigger offline update if it’s not already been triggered */ + package_ids = app_list_get_real_package_ids (self, data->apps); + if (package_ids->len > 0) { + /* NULL-terminate the array */ + g_ptr_array_add (package_ids, NULL); - /* Assume we can use the singleton system bus connection - * due to prior PackageKit calls having created it. This - * avoids an async callback. */ - connection = g_bus_get_sync (G_BUS_TYPE_SYSTEM, - cancellable, - &local_error); - if (connection == NULL) { - g_task_return_error (task, g_steal_pointer (&local_error)); - return; - } + pk_task_update_packages_async (task_update, + (gchar **) package_ids->pdata, + cancellable, + NULL, NULL, + update_apps_trigger_cb, + g_steal_pointer (&task)); - /* FIXME: This can be simplified down to a call to - * pk_offline_trigger_with_flags_async() when it exists. - * See https://github.com/PackageKit/PackageKit/issues/605 */ - g_dbus_connection_call (connection, - "org.freedesktop.PackageKit", - "/org/freedesktop/PackageKit", - "org.freedesktop.PackageKit.Offline", - "Trigger", - g_variant_new ("(s)", pk_offline_action_to_string (PK_OFFLINE_ACTION_REBOOT)), - NULL, - interactive ? G_DBUS_CALL_FLAGS_ALLOW_INTERACTIVE_AUTHORIZATION : G_DBUS_CALL_FLAGS_NONE, - -1, - cancellable, - update_apps_trigger_cb, - g_steal_pointer (&task)); return; } } @@ -5202,21 +5197,19 @@ update_apps_trigger_cb (GObject *source_object, GAsyncResult *result, gpointer user_data) { - GDBusConnection *connection = G_DBUS_CONNECTION (source_object); g_autoptr(GTask) task = g_steal_pointer (&user_data); - GsPluginPackagekit *self = g_task_get_source_object (task); - GCancellable *cancellable = g_task_get_cancellable (task); + g_autoptr(PkResults) results = NULL; g_autoptr(GError) local_error = NULL; + GsPluginUpdateAppsData *data = g_task_get_task_data (task); - if (!g_dbus_connection_call_finish (connection, result, &local_error)) { - gs_plugin_packagekit_error_convert (&local_error, cancellable); + results = pk_task_generic_finish (PK_TASK (source_object), result, &local_error); + + if (local_error != NULL || !gs_plugin_packagekit_results_valid (results, g_task_get_cancellable (task), &local_error)) { + gs_plugin_packagekit_error_convert (&local_error, g_task_get_cancellable (task)); g_task_return_error (task, g_steal_pointer (&local_error)); return; } - /* don't rely on the file monitor */ - gs_plugin_packagekit_refresh_is_triggered (self, cancellable); - g_task_return_boolean (task, TRUE); } diff --git a/plugins/packagekit/packagekit-common.c b/plugins/packagekit/packagekit-common.c index 443023ad7..5443cf6ed 100644 --- a/plugins/packagekit/packagekit-common.c +++ b/plugins/packagekit/packagekit-common.c @@ -386,7 +386,7 @@ gs_plugin_packagekit_resolve_packages_app (GsPlugin *plugin, } else if (number_installed + number_available > sources->len) { /* we have more packages returned than source packages */ gs_app_set_state (app, GS_APP_STATE_UNKNOWN); - gs_app_set_state (app, GS_APP_STATE_UPDATABLE); + gs_app_set_state (app, GS_APP_STATE_UPDATABLE_LIVE); } else if (number_installed + number_available < sources->len) { g_autofree gchar *tmp = NULL; /* we have less packages returned than source packages */ -- 2.53.0 ++++++ gnome-software.obsinfo ++++++ --- /var/tmp/diff_new_pack.lHHaTx/_old 2026-04-10 17:46:14.541066641 +0200 +++ /var/tmp/diff_new_pack.lHHaTx/_new 2026-04-10 17:46:14.553067135 +0200 @@ -1,5 +1,5 @@ name: gnome-software -version: 49.3 -mtime: 1768220227 -commit: cf3a3bd2bc79a0b3cc3737591d8c562d73ed95d8 +version: 50.0 +mtime: 1773387069 +commit: 1e9ad4b1ee7a9c4be3bb6bab844b4bbe6f06955a
