diff --git a/.gitignore b/.gitignore index 960b099..d015bcf 100644 --- a/.gitignore +++ b/.gitignore @@ -46,3 +46,4 @@ /gnome-software-3.17.3.tar.xz /gnome-software-3.17.90.tar.xz /gnome-software-3.17.91.tar.xz +/gnome-software-3.17.92.tar.xz diff --git a/0001-fwupd-Fix-getting-updates-by-parsing-the-fwupd-metad.patch b/0001-fwupd-Fix-getting-updates-by-parsing-the-fwupd-metad.patch deleted file mode 100644 index d86d9be..0000000 --- a/0001-fwupd-Fix-getting-updates-by-parsing-the-fwupd-metad.patch +++ /dev/null @@ -1,281 +0,0 @@ ---- src/plugins/gs-plugin-fwupd.c.old 2015-09-10 13:18:17.667744888 +0100 -+++ src/plugins/gs-plugin-fwupd.c 2015-09-10 13:22:33.579846272 +0100 -@@ -223,6 +223,72 @@ gs_plugin_fwupd_get_file_checksum (const - } - - /** -+ * gs_plugin_fwupd_set_app_from_kv: -+ */ -+static void -+gs_plugin_fwupd_set_app_from_kv (GsApp *app, const gchar *key, GVariant *val) -+{ -+ g_debug ("key %s", key); -+ -+ if (g_strcmp0 (key, "Guid") == 0) { -+ gs_app_set_id (app, g_variant_get_string (val, NULL)); -+ return; -+ } -+ if (g_strcmp0 (key, "Version") == 0) { -+ gs_app_set_version (app, g_variant_get_string (val, NULL)); -+ return; -+ } -+ if (g_strcmp0 (key, "Vendor") == 0) { -+ gs_app_set_origin (app, g_variant_get_string (val, NULL)); -+ return; -+ } -+ if (g_strcmp0 (key, "Name") == 0) { -+ gs_app_add_source (app, g_variant_get_string (val, NULL)); -+ gs_app_set_name (app, GS_APP_QUALITY_NORMAL, -+ g_variant_get_string (val, NULL)); -+ return; -+ } -+ if (g_strcmp0 (key, "Summary") == 0) { -+ gs_app_set_summary (app, GS_APP_QUALITY_NORMAL, -+ g_variant_get_string (val, NULL)); -+ return; -+ } -+ if (g_strcmp0 (key, "Description") == 0) { -+ _cleanup_free_ gchar *tmp = NULL; -+ tmp = as_markup_convert (g_variant_get_string (val, NULL), -+ AS_MARKUP_CONVERT_FORMAT_SIMPLE, NULL); -+ if (tmp != NULL) -+ gs_app_set_description (app, GS_APP_QUALITY_HIGHEST, tmp); -+ return; -+ } -+ if (g_strcmp0 (key, "UrlHomepage") == 0) { -+ gs_app_set_url (app, AS_URL_KIND_HOMEPAGE, -+ g_variant_get_string (val, NULL)); -+ return; -+ } -+ if (g_strcmp0 (key, "License") == 0) { -+ gs_app_set_licence (app, g_variant_get_string (val, NULL)); -+ return; -+ } -+ if (g_strcmp0 (key, "Size") == 0) { -+ gs_app_set_size (app, g_variant_get_uint64 (val)); -+ return; -+ } -+ if (g_strcmp0 (key, "UpdateVersion") == 0) { -+ gs_app_set_update_version (app, g_variant_get_string (val, NULL)); -+ return; -+ } -+ if (g_strcmp0 (key, "UpdateDescription") == 0) { -+ _cleanup_free_ gchar *tmp = NULL; -+ tmp = as_markup_convert (g_variant_get_string (val, NULL), -+ AS_MARKUP_CONVERT_FORMAT_SIMPLE, NULL); -+ if (tmp != NULL) -+ gs_app_set_update_details (app, tmp); -+ return; -+ } -+} -+ -+/** - * gs_plugin_add_update_app: - */ - static gboolean -@@ -238,40 +304,21 @@ gs_plugin_add_update_app (GsPlugin *plug - _cleanup_error_free_ GError *error_local = NULL; - _cleanup_free_ gchar *basename = NULL; - _cleanup_free_ gchar *checksum = NULL; -- _cleanup_free_ gchar *display_name = NULL; - _cleanup_free_ gchar *filename_cache = NULL; -- _cleanup_free_ gchar *guid = NULL; -- _cleanup_free_ gchar *update_desc = NULL; - _cleanup_free_ gchar *update_hash = NULL; - _cleanup_free_ gchar *update_uri = NULL; -- _cleanup_free_ gchar *update_version = NULL; -- _cleanup_free_ gchar *vendor = NULL; -- _cleanup_free_ gchar *version = NULL; - _cleanup_object_unref_ AsIcon *icon = NULL; - _cleanup_object_unref_ GsApp *app = NULL; - -+ app = gs_app_new (NULL); - while (g_variant_iter_next (iter_device, "{&sv}", &key, &variant)) { -- if (g_strcmp0 (key, "Guid") == 0) { -- guid = g_variant_dup_string (variant, NULL); -- } else if (g_strcmp0 (key, "Version") == 0) { -- version = g_variant_dup_string (variant, NULL); -- } else if (g_strcmp0 (key, "UpdateVersion") == 0) { -- update_version = g_variant_dup_string (variant, NULL); -- } else if (g_strcmp0 (key, "UpdateHash") == 0) { -+ gs_plugin_fwupd_set_app_from_kv (app, key, variant); -+ if (g_strcmp0 (key, "UpdateHash") == 0) - update_hash = g_variant_dup_string (variant, NULL); -- } else if (g_strcmp0 (key, "UpdateUri") == 0) { -+ else if (g_strcmp0 (key, "UpdateUri") == 0) - update_uri = g_variant_dup_string (variant, NULL); -- } else if (g_strcmp0 (key, "UpdateDescription") == 0) { -- update_desc = g_variant_dup_string (variant, NULL); -- } else if (g_strcmp0 (key, "Vendor") == 0) { -- vendor = g_variant_dup_string (variant, NULL); -- } else if (g_strcmp0 (key, "DisplayName") == 0) { -- display_name = g_variant_dup_string (variant, NULL); -- } else if (g_strcmp0 (key, "Flags") == 0) { -+ else if (g_strcmp0 (key, "Flags") == 0) - flags = g_variant_get_uint64 (variant); -- } else { -- g_debug ("%s has unused key %s", id, key); -- } - g_variant_unref (variant); - } - -@@ -281,19 +328,31 @@ gs_plugin_add_update_app (GsPlugin *plug - GS_PLUGIN_ERROR, - GS_PLUGIN_ERROR_FAILED, - "%s [%s] cannot be updated offline", -- display_name, guid); -+ gs_app_get_name (app), gs_app_get_id (app)); - return FALSE; - } - - /* some missing */ -- if (guid == NULL || version == NULL || update_version == NULL) -+ if (gs_app_get_id (app) == NULL) { -+ g_warning ("fwupd: No id! for %s!", update_hash); -+ return TRUE; -+ } -+ if (gs_app_get_version (app) == NULL) { -+ g_warning ("fwupd: No version! for %s!", gs_app_get_id (app)); - return TRUE; -+ } -+ if (gs_app_get_update_version (app) == NULL) { -+ g_warning ("fwupd: No update-version! for %s!", gs_app_get_id (app)); -+ return TRUE; -+ } - if (update_hash == NULL) { - g_set_error (error, - GS_PLUGIN_ERROR, - GS_PLUGIN_ERROR_FAILED, - "%s [%s] (%s) has no checksum, ignoring as unsafe", -- display_name, guid, update_version); -+ gs_app_get_name (app), -+ gs_app_get_id (app), -+ gs_app_get_update_version (app)); - return FALSE; - } - if (update_uri == NULL) { -@@ -301,7 +360,7 @@ gs_plugin_add_update_app (GsPlugin *plug - GS_PLUGIN_ERROR, - GS_PLUGIN_ERROR_FAILED, - "no location available for %s [%s]", -- display_name, guid); -+ gs_app_get_name (app), gs_app_get_id (app)); - return FALSE; - } - -@@ -334,43 +393,21 @@ gs_plugin_add_update_app (GsPlugin *plug - return FALSE; - } - -- /* actually addd the application */ -- app = gs_app_new (guid); -+ /* actually add the application */ - gs_app_set_management_plugin (app, "fwupd"); - gs_app_set_state (app, AS_APP_STATE_UPDATABLE); - gs_app_set_id_kind (app, AS_ID_KIND_FIRMWARE); -- gs_app_set_version (app, version); -- gs_app_set_name (app, GS_APP_QUALITY_NORMAL, display_name); -- gs_app_set_update_version (app, update_version); - gs_app_add_source_id (app, filename_cache); - gs_app_add_category (app, "System"); - gs_app_set_kind (app, GS_APP_KIND_SYSTEM); -- gs_app_set_origin (app, vendor); - gs_app_set_metadata (app, "fwupd::DeviceID", id); - gs_app_set_metadata (app, "DataDir::desktop-icon", "application-x-firmware"); -- if (update_desc != NULL) { -- _cleanup_free_ gchar *md = NULL; --#if AS_CHECK_VERSION(0,5,0) -- md = as_markup_convert (update_desc, -- AS_MARKUP_CONVERT_FORMAT_MARKDOWN, -- NULL); --#else -- md = as_markup_convert (update_desc, -1, -- AS_MARKUP_CONVERT_FORMAT_MARKDOWN, -- NULL); --#endif -- gs_app_set_update_details (app, md); -- } - gs_plugin_add_app (list, app); - - /* create icon */ - icon = as_icon_new (); - as_icon_set_kind (icon, AS_ICON_KIND_STOCK); --#if AS_CHECK_VERSION(0,5,0) - as_icon_set_name (icon, "application-x-firmware"); --#else -- as_icon_set_name (icon, "application-x-firmware", -1); --#endif - gs_app_set_icon (app, icon); - - return TRUE; -@@ -434,19 +471,7 @@ gs_plugin_add_updates_historical (GsPlug - gs_app_set_kind (app, GS_APP_KIND_PACKAGE); - g_variant_get (val, "(a{sv})", &iter); - while (g_variant_iter_next (iter, "{&sv}", &key, &variant)) { -- g_debug ("key %s", key); -- if (g_strcmp0 (key, "Guid") == 0) { -- gs_app_set_id (app, g_variant_get_string (variant, NULL)); -- continue; -- } -- if (g_strcmp0 (key, "VersionNew") == 0) { -- gs_app_set_update_version (app, g_variant_get_string (variant, NULL)); -- continue; -- } -- if (g_strcmp0 (key, "Name") == 0) { -- gs_app_add_source (app, g_variant_get_string (variant, NULL)); -- continue; -- } -+ gs_plugin_fwupd_set_app_from_kv (app, key, variant); - g_variant_unref (variant); - } - gs_plugin_add_app (list, app); -@@ -1066,48 +1091,14 @@ gs_plugin_filename_to_app (GsPlugin *plu - val = g_dbus_message_get_body (message); - g_variant_get (val, "(a{sv})", &iter); - while (g_variant_iter_next (iter, "{&sv}", &key, &variant)) { -- if (g_strcmp0 (key, "Version") == 0) { -- gs_app_set_version (app, g_variant_get_string (variant, NULL)); -- } else if (g_strcmp0 (key, "Vendor") == 0) { -- gs_app_set_origin (app, g_variant_get_string (variant, NULL)); -- } else if (g_strcmp0 (key, "Guid") == 0) { -- gs_app_set_id (app, g_variant_get_string (variant, NULL)); -- } else if (g_strcmp0 (key, "Name") == 0) { -- gs_app_set_name (app, GS_APP_QUALITY_NORMAL, -- g_variant_get_string (variant, NULL)); -- } else if (g_strcmp0 (key, "Summary") == 0) { -- gs_app_set_summary (app, GS_APP_QUALITY_NORMAL, -- g_variant_get_string (variant, NULL)); -- } else if (g_strcmp0 (key, "Description") == 0) { -- _cleanup_free_ gchar *tmp = NULL; --#if AS_CHECK_VERSION(0,5,0) -- tmp = as_markup_convert (g_variant_get_string (variant, NULL), -- AS_MARKUP_CONVERT_FORMAT_SIMPLE, NULL); --#else -- tmp = as_markup_convert (g_variant_get_string (variant, NULL), -1, -- AS_MARKUP_CONVERT_FORMAT_SIMPLE, NULL); --#endif -- if (tmp != NULL) -- gs_app_set_description (app, GS_APP_QUALITY_HIGHEST, tmp); -- } else if (g_strcmp0 (key, "UrlHomepage") == 0) { -- gs_app_set_url (app, AS_URL_KIND_HOMEPAGE, -- g_variant_get_string (variant, NULL)); -- } else if (g_strcmp0 (key, "License") == 0) { -- gs_app_set_licence (app, g_variant_get_string (variant, NULL)); -- } else if (g_strcmp0 (key, "Size") == 0) { -- gs_app_set_size (app, g_variant_get_uint64 (variant)); -- } -+ gs_plugin_fwupd_set_app_from_kv (app, key, variant); - g_variant_unref (variant); - } - - /* create icon */ - icon = as_icon_new (); - as_icon_set_kind (icon, AS_ICON_KIND_STOCK); --#if AS_CHECK_VERSION(0,5,0) - as_icon_set_name (icon, "application-x-firmware"); --#else -- as_icon_set_name (icon, "application-x-firmware", -1); --#endif - gs_app_set_icon (app, icon); - - gs_plugin_add_app (list, app); diff --git a/gnome-software.spec b/gnome-software.spec index 221736c..491f81a 100644 --- a/gnome-software.spec +++ b/gnome-software.spec @@ -1,4 +1,4 @@ -%global glib2_version 2.44.0 +%global glib2_version 2.45.8 %global gtk3_version 3.17.7 %global packagekit_version 1.0.0 %global appstream_glib_version 0.5.0 @@ -6,8 +6,8 @@ Summary: A software center for GNOME Name: gnome-software -Version: 3.17.91 -Release: 2%{?dist} +Version: 3.17.92 +Release: 1%{?dist} License: GPLv2+ Group: Applications/System URL: https://wiki.gnome.org/Apps/Software @@ -18,9 +18,6 @@ Patch0: gnome-software-system-apps.patch # Downstream patch to adapt to gnome-terminal desktop file rename Patch1: gnome-software-adapt-to-gnome-terminal-rename.patch -# Upstream patch -Patch2: 0001-fwupd-Fix-getting-updates-by-parsing-the-fwupd-metad.patch - Requires: appstream-data %if 0%{?fedora} Requires: epiphany-runtime @@ -60,7 +57,6 @@ and update software in the GNOME desktop. %setup -q %patch0 -p1 -b .system-apps %patch1 -p1 -b .gnome-terminal -%patch2 -p0 -b .fix-fwupd %build %configure --disable-static --disable-silent-rules @@ -117,6 +113,9 @@ glib-compile-schemas %{_datadir}/glib-2.0/schemas &> /dev/null || : %{_datadir}/gnome-software/modulesets.d/*.xml %changelog +* Tue Sep 15 2015 Richard Hughes - 3.17.92-1 +- Update to 3.17.92 + * Thu Sep 10 2015 Richard Hughes - 3.17.91-2 - Fix firmware updates diff --git a/sources b/sources index 6af6b46..6f7721e 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -4034c7b47551125003b78b90dd82d187 gnome-software-3.17.91.tar.xz +b0e42146017a89d4a483711600470532 gnome-software-3.17.92.tar.xz