Update to 43.1

This commit is contained in:
Milan Crha 2022-10-24 07:53:55 +02:00
parent 1cc4989f98
commit aca6555662
4 changed files with 6 additions and 151 deletions

View File

@ -1,108 +0,0 @@
From e706a530aeeba360fd60fa7ccde63a147f1e14d4 Mon Sep 17 00:00:00 2001
Date: Wed, 7 Sep 2022 16:18:50 +0200
Subject: [PATCH 1/2] gs-details-page: Filter out alternatives without origin
When an alternative app has no origin set, it cannot be installed or
even shown in the GUI, thus filter such alternatives out.
Helps https://gitlab.gnome.org/GNOME/gnome-software/-/issues/1895
---
src/gs-details-page.c | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/src/gs-details-page.c b/src/gs-details-page.c
index cfe3cc797..d35ee0a98 100644
--- a/src/gs-details-page.c
+++ b/src/gs-details-page.c
@@ -1637,6 +1637,16 @@ _set_app (GsDetailsPage *self, GsApp *app)
self, 0);
}
+static gboolean
+gs_details_page_filter_origin (GsApp *app,
+ gpointer user_data)
+{
+ /* Keep only local apps or those, which have an origin set */
+ return gs_app_get_state (app) == GS_APP_STATE_AVAILABLE_LOCAL ||
+ gs_app_get_local_file (app) != NULL ||
+ gs_app_get_origin (app) != NULL;
+}
+
/* show the UI and do operations that should not block page load */
static void
gs_details_page_load_stage2 (GsDetailsPage *self,
@@ -1676,6 +1686,7 @@ gs_details_page_load_stage2 (GsDetailsPage *self,
query = gs_app_query_new ("alternate-of", self->app,
"refine-flags", GS_DETAILS_PAGE_REFINE_FLAGS,
"dedupe-flags", GS_APP_LIST_FILTER_FLAG_NONE,
+ "filter-func", gs_details_page_filter_origin,
"sort-func", gs_utils_app_sort_priority,
NULL);
plugin_job2 = gs_plugin_job_list_apps_new (query, GS_PLUGIN_LIST_APPS_FLAGS_INTERACTIVE);
--
GitLab
From 7962414c7ef62494512a93df5855249debc39415 Mon Sep 17 00:00:00 2001
Date: Wed, 7 Sep 2022 16:58:34 +0200
Subject: [PATCH 2/2] gs-details-page: Include local file as an alternative
when not installed
It's not enough to add the local file to the GsAppList, because it can
contain an app with the same ID, thus the local file app won't be added
to the list.
Closes https://gitlab.gnome.org/GNOME/gnome-software/-/issues/1895
---
src/gs-details-page.c | 14 ++++++++++++--
1 file changed, 12 insertions(+), 2 deletions(-)
diff --git a/src/gs-details-page.c b/src/gs-details-page.c
index d35ee0a98..50b80e159 100644
--- a/src/gs-details-page.c
+++ b/src/gs-details-page.c
@@ -645,6 +645,7 @@ gs_details_page_get_alternates_cb (GObject *source_object,
GtkWidget *select_row = NULL;
GtkWidget *origin_row_by_packaging_format = NULL;
gint origin_row_by_packaging_format_index = 0;
+ guint n_rows = 0;
self->origin_by_packaging_format = FALSE;
gs_widget_remove_all (self->origin_popover_list_box, (GsRemoveFunc) gtk_list_box_remove);
@@ -699,7 +700,15 @@ gs_details_page_get_alternates_cb (GObject *source_object,
/* add the local file to the list so that we can carry it over when
* switching between alternates */
if (self->app_local_file != NULL) {
- gs_app_list_add (list, self->app_local_file);
+ if (gs_app_get_state (self->app_local_file) != GS_APP_STATE_INSTALLED) {
+ GtkWidget *row = gs_origin_popover_row_new (self->app_local_file);
+ gtk_widget_show (row);
+ gtk_list_box_append (GTK_LIST_BOX (self->origin_popover_list_box), row);
+ first_row = row;
+ select_row = row;
+ n_rows++;
+ }
+
/* Do not allow change of the app by the packaging format when it's a local file */
origin_by_packaging_format = FALSE;
}
@@ -716,6 +725,7 @@ gs_details_page_get_alternates_cb (GObject *source_object,
GsApp *app = gs_app_list_index (list, i);
GtkWidget *row = gs_origin_popover_row_new (app);
gtk_widget_show (row);
+ n_rows++;
if (first_row == NULL)
first_row = row;
if (app == self->app || (
@@ -766,7 +776,7 @@ gs_details_page_get_alternates_cb (GObject *source_object,
}
/* Do not show the "selected" check when there's only one app in the list */
- if (select_row && gs_app_list_length (list) > 1)
+ if (select_row && n_rows > 1)
gs_origin_popover_row_set_selected (GS_ORIGIN_POPOVER_ROW (select_row), TRUE);
else if (select_row)
gtk_list_box_row_set_activatable (GTK_LIST_BOX_ROW (select_row), FALSE);
--
GitLab

View File

@ -1,38 +0,0 @@
From 823f49dc59eb1a6a00c80084a8ac37782df124fa Mon Sep 17 00:00:00 2001
Date: Mon, 26 Sep 2022 15:11:25 +0200
Subject: [PATCH] rpm-ostree: Mark apps as downloaded
There was a typo in the changes of the gs_app_set_size_download() API,
the `0` meant the app is downloaded, not that the size is unknown.
With this fixed, the Updates page offers to `Restart & Update`, instead
of `Download`, which does nothing, because the rpm-stree plugin
does not implement corresponding GsPlugin function.
---
plugins/rpm-ostree/gs-plugin-rpm-ostree.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/plugins/rpm-ostree/gs-plugin-rpm-ostree.c b/plugins/rpm-ostree/gs-plugin-rpm-ostree.c
index 6984ff95b..1b4f758da 100644
--- a/plugins/rpm-ostree/gs-plugin-rpm-ostree.c
+++ b/plugins/rpm-ostree/gs-plugin-rpm-ostree.c
@@ -749,7 +749,7 @@ app_from_modified_pkg_variant (GsPlugin *plugin, GVariant *variant)
gs_app_set_management_plugin (app, plugin);
gs_app_add_quirk (app, GS_APP_QUIRK_NEEDS_REBOOT);
app_set_rpm_ostree_packaging_format (app);
- gs_app_set_size_download (app, GS_SIZE_TYPE_UNKNOWN, 0);
+ gs_app_set_size_download (app, GS_SIZE_TYPE_VALID, 0);
gs_app_set_kind (app, AS_COMPONENT_KIND_GENERIC);
gs_app_set_bundle_kind (app, AS_BUNDLE_KIND_PACKAGE);
gs_app_set_scope (app, AS_COMPONENT_SCOPE_SYSTEM);
@@ -788,7 +788,7 @@ app_from_single_pkg_variant (GsPlugin *plugin, GVariant *variant, gboolean addit
gs_app_set_management_plugin (app, plugin);
gs_app_add_quirk (app, GS_APP_QUIRK_NEEDS_REBOOT);
app_set_rpm_ostree_packaging_format (app);
- gs_app_set_size_download (app, GS_SIZE_TYPE_UNKNOWN, 0);
+ gs_app_set_size_download (app, GS_SIZE_TYPE_VALID, 0);
gs_app_set_kind (app, AS_COMPONENT_KIND_GENERIC);
gs_app_set_bundle_kind (app, AS_BUNDLE_KIND_PACKAGE);
gs_app_set_scope (app, AS_COMPONENT_SCOPE_SYSTEM);
--
GitLab

View File

@ -17,8 +17,8 @@
%global __provides_exclude_from ^%{_libdir}/%{name}/plugins-%{gs_plugin_version}/.*\\.so.*$
Name: gnome-software
Version: 43.0
Release: 3%{?dist}
Version: 43.1
Release: 1%{?dist}
Summary: A software center for GNOME
License: GPLv2+
@ -26,8 +26,6 @@ URL: https://wiki.gnome.org/Apps/Software
Source0: https://download.gnome.org/sources/gnome-software/43/%{name}-%{tarball_version}.tar.xz
Patch01: 0001-crash-with-broken-theme.patch
Patch02: 0002-install-rpm-file.patch
Patch03: 0003-rpm-ostree-download-size.patch
BuildRequires: docbook-style-xsl
BuildRequires: desktop-file-utils
@ -213,6 +211,9 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/*.desktop
%{_datadir}/gtk-doc/html/gnome-software/
%changelog
* Mon Oct 24 2022 Milan Crha <mcrha@redhat.com> - 43.1-1
- Update to 43.1
* Wed Oct 05 2022 Milan Crha <mcrha@redhat.com> - 43.0-3
- Resolves: #2132292 (rpm-ostree plugin refuses to update)

View File

@ -1 +1 @@
SHA512 (gnome-software-43.0.tar.xz) = bcf64e4d3d847c660fd1c1a2356235569560bc315fb6b0d2e459dfb1bbee7bf97d9a14f7c8ef1129e01241385cd1540d1499f9cc9ad99a996965feb48e698d6a
SHA512 (gnome-software-43.1.tar.xz) = 5494622e1c52bcf660df8ab83cd73720ccab3c767f8870b6a23bd83c396972c508beb365e6df143055e3a7d9e77b42f01ea73a49d8dcdcf97aaeada0fe9f03e5