import gnome-software-3.36.1-10.el8
This commit is contained in:
parent
1655575095
commit
3960e288db
27
SOURCES/be-able-to-disable-odrs.patch
Normal file
27
SOURCES/be-able-to-disable-odrs.patch
Normal file
@ -0,0 +1,27 @@
|
||||
From b50003ed83cab2c6cf6654e5972d6ee3e2303eb6 Mon Sep 17 00:00:00 2001
|
||||
From: Milan Crha <mcrha@redhat.com>
|
||||
Date: Tue, 16 Feb 2021 16:09:08 +0100
|
||||
Subject: [PATCH] odrs: Cannot be disabled by filling empty 'review-server'
|
||||
setting
|
||||
|
||||
Closes https://gitlab.gnome.org/GNOME/gnome-software/-/issues/1143
|
||||
---
|
||||
plugins/odrs/gs-plugin-odrs.c | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/plugins/odrs/gs-plugin-odrs.c b/plugins/odrs/gs-plugin-odrs.c
|
||||
index f0c0c3b91..2c9bd878d 100644
|
||||
--- a/plugins/odrs/gs-plugin-odrs.c
|
||||
+++ b/plugins/odrs/gs-plugin-odrs.c
|
||||
@@ -175,6 +175,8 @@ gs_plugin_initialize (GsPlugin *plugin)
|
||||
|
||||
/* set name of MetaInfo file */
|
||||
gs_plugin_set_appstream_id (plugin, "org.gnome.Software.Plugin.Odrs");
|
||||
+
|
||||
+ gs_plugin_set_enabled (plugin, priv->review_server && *priv->review_server);
|
||||
}
|
||||
|
||||
static GArray *
|
||||
--
|
||||
GitLab
|
||||
|
57
SOURCES/crash-when-run-as-root.patch
Normal file
57
SOURCES/crash-when-run-as-root.patch
Normal file
@ -0,0 +1,57 @@
|
||||
From 98dbef8b5a547d3d920d377022e20d2e63519b2f Mon Sep 17 00:00:00 2001
|
||||
From: Milan Crha <mcrha@redhat.com>
|
||||
Date: Tue, 16 Feb 2021 12:58:19 +0100
|
||||
Subject: [PATCH 1/2] GsApplication: Crash when run as root
|
||||
|
||||
The `search_provider` is not initialized in this case, leading
|
||||
to NULL dereference. Skip the call in such cases, because the search
|
||||
provider is not that important.
|
||||
|
||||
Closes https://gitlab.gnome.org/GNOME/gnome-software/-/issues/1142
|
||||
---
|
||||
src/gs-application.c | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/gs-application.c b/src/gs-application.c
|
||||
index 48f0c6aac..fdb5f55c4 100644
|
||||
--- a/src/gs-application.c
|
||||
+++ b/src/gs-application.c
|
||||
@@ -912,7 +912,8 @@ static void
|
||||
gs_application_setup_search_provider (GsApplication *app)
|
||||
{
|
||||
gs_application_initialize_plugins (app);
|
||||
- gs_shell_search_provider_setup (app->search_provider, app->plugin_loader);
|
||||
+ if (app->search_provider)
|
||||
+ gs_shell_search_provider_setup (app->search_provider, app->plugin_loader);
|
||||
}
|
||||
|
||||
static void
|
||||
--
|
||||
GitLab
|
||||
|
||||
|
||||
From 0055bfa8535bb7c5ccd9ace244d71b2885a47daa Mon Sep 17 00:00:00 2001
|
||||
From: Philip Withnall <philip@tecnocode.co.uk>
|
||||
Date: Mon, 22 Feb 2021 11:41:05 +0000
|
||||
Subject: [PATCH 2/2] Apply 1 suggestion(s) to 1 file(s)
|
||||
|
||||
---
|
||||
src/gs-application.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/gs-application.c b/src/gs-application.c
|
||||
index fdb5f55c4..f05f6f718 100644
|
||||
--- a/src/gs-application.c
|
||||
+++ b/src/gs-application.c
|
||||
@@ -49,7 +49,7 @@ struct _GsApplication {
|
||||
#ifdef HAVE_PACKAGEKIT
|
||||
GsDbusHelper *dbus_helper;
|
||||
#endif
|
||||
- GsShellSearchProvider *search_provider;
|
||||
+ GsShellSearchProvider *search_provider; /* (nullable) (owned) */
|
||||
GSettings *settings;
|
||||
GSimpleActionGroup *action_map;
|
||||
guint shell_loaded_handler_id;
|
||||
--
|
||||
GitLab
|
||||
|
36
SOURCES/devel-install-headers.patch
Normal file
36
SOURCES/devel-install-headers.patch
Normal file
@ -0,0 +1,36 @@
|
||||
From 5b0e476a17129be0d8b451467aded9c8ae861218 Mon Sep 17 00:00:00 2001
|
||||
From: Rasmus Thomsen <oss@cogitri.dev>
|
||||
Date: Fri, 17 Apr 2020 18:55:21 +0200
|
||||
Subject: [PATCH] build: install more headers
|
||||
|
||||
These are required for building out of tree plugins
|
||||
---
|
||||
lib/meson.build | 6 ++++++
|
||||
1 file changed, 6 insertions(+)
|
||||
|
||||
diff --git a/lib/meson.build b/lib/meson.build
|
||||
index 1c00d4f3e..6a2e803e5 100644
|
||||
--- a/lib/meson.build
|
||||
+++ b/lib/meson.build
|
||||
@@ -4,12 +4,18 @@ cargs += ['-DLOCALPLUGINDIR=""']
|
||||
install_headers([
|
||||
'gnome-software.h',
|
||||
'gs-app.h',
|
||||
+ 'gs-app-collation.h',
|
||||
'gs-app-list.h',
|
||||
+ 'gs-autocleanups.h',
|
||||
'gs-category.h',
|
||||
+ 'gs-ioprio.h',
|
||||
'gs-metered.h',
|
||||
'gs-os-release.h',
|
||||
'gs-plugin.h',
|
||||
'gs-plugin-event.h',
|
||||
+ 'gs-plugin-job.h',
|
||||
+ 'gs-plugin-loader.h',
|
||||
+ 'gs-plugin-loader-sync.h',
|
||||
'gs-plugin-types.h',
|
||||
'gs-plugin-vfuncs.h',
|
||||
'gs-utils.h'
|
||||
--
|
||||
GitLab
|
||||
|
117
SOURCES/flatpak-same-runtime-origin.patch
Normal file
117
SOURCES/flatpak-same-runtime-origin.patch
Normal file
@ -0,0 +1,117 @@
|
||||
diff -up gnome-software-3.36.1/plugins/flatpak/gs-flatpak.c.10 gnome-software-3.36.1/plugins/flatpak/gs-flatpak.c
|
||||
--- gnome-software-3.36.1/plugins/flatpak/gs-flatpak.c.10 2020-05-22 16:51:19.868380300 +0200
|
||||
+++ gnome-software-3.36.1/plugins/flatpak/gs-flatpak.c 2021-06-21 21:24:00.233689928 +0200
|
||||
@@ -1844,12 +1844,13 @@ gs_flatpak_refine_app_state (GsFlatpak *
|
||||
}
|
||||
|
||||
static GsApp *
|
||||
-gs_flatpak_create_runtime (GsFlatpak *self, GsApp *parent, const gchar *runtime)
|
||||
+gs_flatpak_create_runtime (GsFlatpak *self, GsApp *parent, const gchar *runtime, GCancellable *cancellable)
|
||||
{
|
||||
g_autofree gchar *source = NULL;
|
||||
g_auto(GStrv) split = NULL;
|
||||
g_autoptr(GsApp) app_cache = NULL;
|
||||
g_autoptr(GsApp) app = NULL;
|
||||
+ const gchar *origin;
|
||||
|
||||
/* get the name/arch/branch */
|
||||
split = g_strsplit (runtime, "/", -1);
|
||||
@@ -1864,6 +1865,24 @@ gs_flatpak_create_runtime (GsFlatpak *se
|
||||
gs_app_set_kind (app, AS_APP_KIND_RUNTIME);
|
||||
gs_app_set_branch (app, split[2]);
|
||||
|
||||
+ origin = gs_app_get_origin (parent);
|
||||
+ if (origin != NULL) {
|
||||
+ g_autoptr(FlatpakRemoteRef) xref = NULL;
|
||||
+
|
||||
+ xref = flatpak_installation_fetch_remote_ref_sync (self->installation,
|
||||
+ origin,
|
||||
+ FLATPAK_REF_KIND_RUNTIME,
|
||||
+ gs_app_get_id (app),
|
||||
+ gs_flatpak_app_get_ref_arch (parent),
|
||||
+ gs_app_get_branch (app),
|
||||
+ cancellable,
|
||||
+ NULL);
|
||||
+
|
||||
+ /* Prefer runtime from the same origin as the parent application */
|
||||
+ if (xref)
|
||||
+ gs_app_set_origin (app, origin);
|
||||
+ }
|
||||
+
|
||||
/* search in the cache */
|
||||
app_cache = gs_plugin_cache_lookup (self->plugin, gs_app_get_unique_id (app));
|
||||
if (app_cache != NULL) {
|
||||
@@ -1898,6 +1917,7 @@ gs_flatpak_set_app_metadata (GsFlatpak *
|
||||
GsApp *app,
|
||||
const gchar *data,
|
||||
gsize length,
|
||||
+ GCancellable *cancellable,
|
||||
GError **error)
|
||||
{
|
||||
gboolean secure = TRUE;
|
||||
@@ -1951,7 +1971,7 @@ gs_flatpak_set_app_metadata (GsFlatpak *
|
||||
gs_app_add_kudo (app, GS_APP_KUDO_SANDBOXED_SECURE);
|
||||
|
||||
/* create runtime */
|
||||
- app_runtime = gs_flatpak_create_runtime (self, app, runtime);
|
||||
+ app_runtime = gs_flatpak_create_runtime (self, app, runtime, cancellable);
|
||||
if (app_runtime != NULL) {
|
||||
gs_plugin_refine_item_scope (self, app_runtime);
|
||||
gs_app_set_runtime (app, app_runtime);
|
||||
@@ -2046,7 +2066,7 @@ gs_plugin_refine_item_metadata (GsFlatpa
|
||||
}
|
||||
|
||||
/* parse key file */
|
||||
- if (!gs_flatpak_set_app_metadata (self, app, str, len, error))
|
||||
+ if (!gs_flatpak_set_app_metadata (self, app, str, len, cancellable, error))
|
||||
return FALSE;
|
||||
return TRUE;
|
||||
}
|
||||
@@ -2506,6 +2526,7 @@ gs_flatpak_file_to_app_bundle (GsFlatpak
|
||||
if (!gs_flatpak_set_app_metadata (self, app,
|
||||
g_bytes_get_data (metadata, NULL),
|
||||
g_bytes_get_size (metadata),
|
||||
+ cancellable,
|
||||
error))
|
||||
return NULL;
|
||||
|
||||
diff -up gnome-software-3.36.1/plugins/flatpak/gs-plugin-flatpak.c.10 gnome-software-3.36.1/plugins/flatpak/gs-plugin-flatpak.c
|
||||
--- gnome-software-3.36.1/plugins/flatpak/gs-plugin-flatpak.c.10 2021-06-21 20:38:42.585590510 +0200
|
||||
+++ gnome-software-3.36.1/plugins/flatpak/gs-plugin-flatpak.c 2021-06-21 21:23:00.977665979 +0200
|
||||
@@ -852,6 +852,36 @@ gs_plugin_app_install (GsPlugin *plugin,
|
||||
ref, NULL, error)) {
|
||||
gs_flatpak_error_convert (error);
|
||||
return FALSE;
|
||||
+ } else {
|
||||
+ GsApp *runtime;
|
||||
+
|
||||
+ runtime = gs_app_get_runtime (app);
|
||||
+ if (runtime != NULL && gs_app_get_origin (runtime) != NULL) {
|
||||
+ g_autoptr(FlatpakInstalledRef) runtime_ref = NULL;
|
||||
+
|
||||
+ runtime_ref = flatpak_installation_get_installed_ref (gs_flatpak_get_installation (flatpak),
|
||||
+ gs_flatpak_app_get_ref_kind (runtime),
|
||||
+ gs_flatpak_app_get_ref_name (runtime),
|
||||
+ gs_flatpak_app_get_ref_arch (runtime),
|
||||
+ gs_app_get_branch (runtime),
|
||||
+ cancellable,
|
||||
+ NULL);
|
||||
+ if (runtime_ref == NULL) {
|
||||
+ g_autoptr(GError) error_local = NULL;
|
||||
+
|
||||
+ g_clear_pointer (&ref, g_free);
|
||||
+ ref = gs_flatpak_app_get_ref_display (runtime);
|
||||
+ if (!flatpak_transaction_add_install (transaction, gs_app_get_origin (runtime), ref, NULL, &error_local)) {
|
||||
+ if (g_error_matches (error_local, FLATPAK_ERROR, FLATPAK_ERROR_ALREADY_INSTALLED)) {
|
||||
+ g_clear_error (&error_local);
|
||||
+ } else {
|
||||
+ g_propagate_error (error, g_steal_pointer (&error_local));
|
||||
+ gs_flatpak_error_convert (error);
|
||||
+ return FALSE;
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
}
|
||||
}
|
||||
|
97
SOURCES/gs-updates-page-keep-showing-installing-apps.patch
Normal file
97
SOURCES/gs-updates-page-keep-showing-installing-apps.patch
Normal file
@ -0,0 +1,97 @@
|
||||
diff -up gnome-software-3.36.1/lib/gs-plugin.c.1888404 gnome-software-3.36.1/lib/gs-plugin.c
|
||||
--- gnome-software-3.36.1/lib/gs-plugin.c.1888404 2021-05-24 13:50:34.302612057 +0200
|
||||
+++ gnome-software-3.36.1/lib/gs-plugin.c 2021-05-24 13:50:39.160609728 +0200
|
||||
@@ -1398,6 +1398,44 @@ gs_plugin_cache_lookup (GsPlugin *plugin
|
||||
}
|
||||
|
||||
/**
|
||||
+ * gs_plugin_cache_lookup_by_state:
|
||||
+ * @plugin: a #GsPlugin
|
||||
+ * @list: a #GsAppList to add applications to
|
||||
+ * @state: a #AsAppState
|
||||
+ *
|
||||
+ * Adds each cached #GsApp with state @state into the @list.
|
||||
+ * When the state is %AS_APP_STATE_UNKNOWN, then adds all
|
||||
+ * cached applications.
|
||||
+ *
|
||||
+ * Since: 3.36.1-8
|
||||
+ **/
|
||||
+void
|
||||
+gs_plugin_cache_lookup_by_state (GsPlugin *plugin,
|
||||
+ GsAppList *list,
|
||||
+ AsAppState state)
|
||||
+{
|
||||
+ GsPluginPrivate *priv;
|
||||
+ GHashTableIter iter;
|
||||
+ gpointer value;
|
||||
+ g_autoptr(GMutexLocker) locker = NULL;
|
||||
+
|
||||
+ g_return_if_fail (GS_IS_PLUGIN (plugin));
|
||||
+ g_return_if_fail (GS_IS_APP_LIST (list));
|
||||
+
|
||||
+ priv = gs_plugin_get_instance_private (plugin);
|
||||
+ locker = g_mutex_locker_new (&priv->cache_mutex);
|
||||
+
|
||||
+ g_hash_table_iter_init (&iter, priv->cache);
|
||||
+ while (g_hash_table_iter_next (&iter, NULL, &value)) {
|
||||
+ GsApp *app = value;
|
||||
+
|
||||
+ if (state == AS_APP_STATE_UNKNOWN ||
|
||||
+ state == gs_app_get_state (app))
|
||||
+ gs_app_list_add (list, app);
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+/**
|
||||
* gs_plugin_cache_remove:
|
||||
* @plugin: a #GsPlugin
|
||||
* @key: a key which matches
|
||||
diff -up gnome-software-3.36.1/lib/gs-plugin.h.1888404 gnome-software-3.36.1/lib/gs-plugin.h
|
||||
--- gnome-software-3.36.1/lib/gs-plugin.h.1888404 2021-05-24 13:50:34.302612057 +0200
|
||||
+++ gnome-software-3.36.1/lib/gs-plugin.h 2021-05-24 13:50:39.160609728 +0200
|
||||
@@ -102,6 +102,9 @@ gboolean gs_plugin_check_distro_id (Gs
|
||||
const gchar *distro_id);
|
||||
GsApp *gs_plugin_cache_lookup (GsPlugin *plugin,
|
||||
const gchar *key);
|
||||
+void gs_plugin_cache_lookup_by_state (GsPlugin *plugin,
|
||||
+ GsAppList *list,
|
||||
+ AsAppState state);
|
||||
void gs_plugin_cache_add (GsPlugin *plugin,
|
||||
const gchar *key,
|
||||
GsApp *app);
|
||||
diff -up gnome-software-3.36.1/lib/gs-plugin-loader.c.1888404 gnome-software-3.36.1/lib/gs-plugin-loader.c
|
||||
--- gnome-software-3.36.1/lib/gs-plugin-loader.c.1888404 2021-05-24 13:50:34.302612057 +0200
|
||||
+++ gnome-software-3.36.1/lib/gs-plugin-loader.c 2021-05-24 13:50:39.159609728 +0200
|
||||
@@ -1273,7 +1273,7 @@ static gboolean
|
||||
gs_plugin_loader_app_is_valid_updatable (GsApp *app, gpointer user_data)
|
||||
{
|
||||
return gs_plugin_loader_app_is_valid (app, user_data) &&
|
||||
- gs_app_is_updatable (app);
|
||||
+ (gs_app_is_updatable (app) || gs_app_get_state (app) == AS_APP_STATE_INSTALLING);
|
||||
}
|
||||
|
||||
static gboolean
|
||||
diff -up gnome-software-3.36.1/plugins/flatpak/gs-plugin-flatpak.c.1888404 gnome-software-3.36.1/plugins/flatpak/gs-plugin-flatpak.c
|
||||
--- gnome-software-3.36.1/plugins/flatpak/gs-plugin-flatpak.c.1888404 2021-05-24 13:50:34.310612054 +0200
|
||||
+++ gnome-software-3.36.1/plugins/flatpak/gs-plugin-flatpak.c 2021-05-24 13:50:39.161609727 +0200
|
||||
@@ -218,6 +218,7 @@ gs_plugin_add_updates (GsPlugin *plugin,
|
||||
if (!gs_flatpak_add_updates (flatpak, list, cancellable, error))
|
||||
return FALSE;
|
||||
}
|
||||
+ gs_plugin_cache_lookup_by_state (plugin, list, AS_APP_STATE_INSTALLING);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
diff -up gnome-software-3.36.1/src/gs-updates-page.c.1888404 gnome-software-3.36.1/src/gs-updates-page.c
|
||||
--- gnome-software-3.36.1/src/gs-updates-page.c.1888404 2021-05-24 13:50:39.161609727 +0200
|
||||
+++ gnome-software-3.36.1/src/gs-updates-page.c 2021-05-24 13:51:00.211599638 +0200
|
||||
@@ -139,7 +139,8 @@ gs_updates_page_invalidate (GsUpdatesPag
|
||||
static GsUpdatesSectionKind
|
||||
_get_app_section (GsApp *app)
|
||||
{
|
||||
- if (gs_app_get_state (app) == AS_APP_STATE_UPDATABLE_LIVE) {
|
||||
+ if (gs_app_get_state (app) == AS_APP_STATE_UPDATABLE_LIVE ||
|
||||
+ gs_app_get_state (app) == AS_APP_STATE_INSTALLING) {
|
||||
if (gs_app_get_kind (app) == AS_APP_KIND_FIRMWARE)
|
||||
return GS_UPDATES_SECTION_KIND_ONLINE_FIRMWARE;
|
||||
return GS_UPDATES_SECTION_KIND_ONLINE;
|
@ -14,7 +14,7 @@
|
||||
|
||||
Name: gnome-software
|
||||
Version: 3.36.1
|
||||
Release: 5%{?dist}
|
||||
Release: 10%{?dist}
|
||||
Summary: A software center for GNOME
|
||||
|
||||
License: GPLv2+
|
||||
@ -35,6 +35,12 @@ Patch4: 0001-Improve-the-heuristic-for-detecting-old-style-AppStr.patch
|
||||
# Fix flatpak updates and removals when same ref occurs in multiple remotes
|
||||
Patch5: gnome-software-3.36.1-unrelated-refs.patch
|
||||
|
||||
Patch6: be-able-to-disable-odrs.patch
|
||||
Patch7: crash-when-run-as-root.patch
|
||||
Patch8: gs-updates-page-keep-showing-installing-apps.patch
|
||||
Patch9: flatpak-same-runtime-origin.patch
|
||||
Patch10: devel-install-headers.patch
|
||||
|
||||
BuildRequires: gcc
|
||||
BuildRequires: gettext
|
||||
BuildRequires: libxslt
|
||||
@ -221,6 +227,21 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/*.desktop
|
||||
%{_datadir}/gtk-doc/html/gnome-software
|
||||
|
||||
%changelog
|
||||
* Thu Jul 08 2021 Milan Crha <mcrha@redhat.com> - 3.36.1-10
|
||||
- Resolves: #1978505 (Development package is missing important header files)
|
||||
|
||||
* Mon Jun 21 2021 Milan Crha <mcrha@redhat.com> - 3.36.1-9
|
||||
- Resolves: #1972545 (flatpak: Prefer runtime from the same origin as the application)
|
||||
|
||||
* Mon May 24 2021 Milan Crha <mcrha@redhat.com> - 3.36.1-8
|
||||
- Resolves: #1888404 (Updates page hides ongoing updates on refresh)
|
||||
|
||||
* Mon May 24 2021 Milan Crha <mcrha@redhat.com> - 3.36.1-7
|
||||
- Resolves: #1873297 (Crash when run as root)
|
||||
|
||||
* Mon May 24 2021 Milan Crha <mcrha@redhat.com> - 3.36.1-6
|
||||
- Resolves: #1791478 (Cannot completely disable ODRS (GNOME Ratings))
|
||||
|
||||
* Wed Feb 17 2021 Milan Crha <mcrha@redhat.com> - 3.36.1-5
|
||||
- Fix flatpak updates and removals when same ref occurs in multiple remotes
|
||||
- Resolves: #1888407
|
||||
|
Loading…
Reference in New Issue
Block a user