Compare commits
No commits in common. "0374bb0cbb7e912343ab75cbfd7f8c737f28ffbd" and "33da1fce42f7dc24a9e7e0903023b7fd4f9fe111" have entirely different histories.
0374bb0cbb
...
33da1fce42
271
0001-Revert-packagekit-Avoid-600000-allocations-when-comp.patch
Normal file
271
0001-Revert-packagekit-Avoid-600000-allocations-when-comp.patch
Normal file
@ -0,0 +1,271 @@
|
|||||||
|
From b3a50ee2d6b93980d1808599ba003e9afc4feae5 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Kalev Lember <klember@redhat.com>
|
||||||
|
Date: Mon, 14 Sep 2020 12:07:30 +0200
|
||||||
|
Subject: [PATCH] Revert "packagekit: Avoid 600000 allocations when comparing
|
||||||
|
package IDs"
|
||||||
|
|
||||||
|
This broke packagekit updates.
|
||||||
|
|
||||||
|
https://gitlab.gnome.org/GNOME/gnome-software/-/issues/1061
|
||||||
|
https://bodhi.fedoraproject.org/updates/FEDORA-2020-7f57486c95#comment-1621958
|
||||||
|
|
||||||
|
This reverts commit 955570e4a5d737a9a4f85860fd7e483158e130c4.
|
||||||
|
---
|
||||||
|
.../packagekit/gs-plugin-packagekit-refine.c | 12 +-
|
||||||
|
.../gs-plugin-packagekit-url-to-app.c | 6 +-
|
||||||
|
plugins/packagekit/packagekit-common.c | 149 ++++++------------
|
||||||
|
plugins/packagekit/packagekit-common.h | 3 +-
|
||||||
|
4 files changed, 54 insertions(+), 116 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/plugins/packagekit/gs-plugin-packagekit-refine.c b/plugins/packagekit/gs-plugin-packagekit-refine.c
|
||||||
|
index 68f7eb6..97c70dd 100644
|
||||||
|
--- a/plugins/packagekit/gs-plugin-packagekit-refine.c
|
||||||
|
+++ b/plugins/packagekit/gs-plugin-packagekit-refine.c
|
||||||
|
@@ -345,7 +345,6 @@ gs_plugin_packagekit_refine_details2 (GsPlugin *plugin,
|
||||||
|
g_autoptr(GPtrArray) array = NULL;
|
||||||
|
g_autoptr(GPtrArray) package_ids = NULL;
|
||||||
|
g_autoptr(PkResults) results = NULL;
|
||||||
|
- g_autoptr(GHashTable) details_collection = NULL;
|
||||||
|
|
||||||
|
package_ids = g_ptr_array_new_with_free_func (g_free);
|
||||||
|
for (i = 0; i < gs_app_list_length (list); i++) {
|
||||||
|
@@ -375,17 +374,11 @@ gs_plugin_packagekit_refine_details2 (GsPlugin *plugin,
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
- /* get the results and copy them into a hash table for fast lookups:
|
||||||
|
- * there are typically 400 to 700 elements in @array, and 100 to 200
|
||||||
|
- * elements in @list, each with 1 or 2 source IDs to look up (but
|
||||||
|
- * sometimes 200) */
|
||||||
|
- array = pk_results_get_details_array (results);
|
||||||
|
- details_collection = gs_plugin_packagekit_details_array_to_hash (array);
|
||||||
|
-
|
||||||
|
/* set the update details for the update */
|
||||||
|
+ array = pk_results_get_details_array (results);
|
||||||
|
for (i = 0; i < gs_app_list_length (list); i++) {
|
||||||
|
app = gs_app_list_index (list, i);
|
||||||
|
- gs_plugin_packagekit_refine_details_app (plugin, details_collection, app);
|
||||||
|
+ gs_plugin_packagekit_refine_details_app (plugin, array, app);
|
||||||
|
}
|
||||||
|
|
||||||
|
return TRUE;
|
||||||
|
diff --git a/plugins/packagekit/gs-plugin-packagekit-url-to-app.c b/plugins/packagekit/gs-plugin-packagekit-url-to-app.c
|
||||||
|
index 0418920..7f566c7 100644
|
||||||
|
--- a/plugins/packagekit/gs-plugin-packagekit-url-to-app.c
|
||||||
|
+++ b/plugins/packagekit/gs-plugin-packagekit-url-to-app.c
|
||||||
|
@@ -106,15 +106,11 @@ gs_plugin_url_to_app (GsPlugin *plugin,
|
||||||
|
details = pk_results_get_details_array (results);
|
||||||
|
|
||||||
|
if (packages->len >= 1) {
|
||||||
|
- g_autoptr(GHashTable) details_collection = NULL;
|
||||||
|
-
|
||||||
|
if (gs_app_get_local_file (app) != NULL)
|
||||||
|
return TRUE;
|
||||||
|
|
||||||
|
- details_collection = gs_plugin_packagekit_details_array_to_hash (details);
|
||||||
|
-
|
||||||
|
gs_plugin_packagekit_resolve_packages_app (plugin, packages, app);
|
||||||
|
- gs_plugin_packagekit_refine_details_app (plugin, details_collection, app);
|
||||||
|
+ gs_plugin_packagekit_refine_details_app (plugin, details, app);
|
||||||
|
|
||||||
|
gs_app_list_add (list, app);
|
||||||
|
} else {
|
||||||
|
diff --git a/plugins/packagekit/packagekit-common.c b/plugins/packagekit/packagekit-common.c
|
||||||
|
index ed77b34..6914dde 100644
|
||||||
|
--- a/plugins/packagekit/packagekit-common.c
|
||||||
|
+++ b/plugins/packagekit/packagekit-common.c
|
||||||
|
@@ -388,127 +388,78 @@ gs_plugin_packagekit_set_metadata_from_package (GsPlugin *plugin,
|
||||||
|
pk_package_get_summary (package));
|
||||||
|
}
|
||||||
|
|
||||||
|
-/* Hash functions which compare PkPackageIds on NAME, VERSION and ARCH, but not DATA.
|
||||||
|
- * This is because some backends do not append the origin.
|
||||||
|
+/*
|
||||||
|
+ * gs_pk_compare_ids:
|
||||||
|
*
|
||||||
|
- * Borrowing some implementation details from pk-package-id.c, a package
|
||||||
|
- * ID is a semicolon-separated list of NAME;[VERSION];[ARCH];[DATA],
|
||||||
|
- * so a comparison which ignores DATA is just a strncmp() up to and
|
||||||
|
- * including the final semicolon.
|
||||||
|
- *
|
||||||
|
- * Doing it this way means zero allocations, which allows the hash and
|
||||||
|
- * equality functions to be fast. This is important when dealing with
|
||||||
|
- * large refine() package lists.
|
||||||
|
- *
|
||||||
|
- * The hash and equality functions assume that the IDs they are passed are
|
||||||
|
- * valid. */
|
||||||
|
-static guint
|
||||||
|
-package_id_hash (gconstpointer key)
|
||||||
|
-{
|
||||||
|
- const gchar *package_id = key;
|
||||||
|
- gchar *no_data;
|
||||||
|
- gsize i, last_semicolon = 0;
|
||||||
|
-
|
||||||
|
- /* find the last semicolon, which starts the DATA section */
|
||||||
|
- for (i = 0; package_id[i] != '\0'; i++) {
|
||||||
|
- if (package_id[i] == ';')
|
||||||
|
- last_semicolon = i;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- /* exit early if the DATA section was empty */
|
||||||
|
- if (last_semicolon + 1 == i)
|
||||||
|
- return g_str_hash (package_id);
|
||||||
|
-
|
||||||
|
- /* extract up to (and including) the last semicolon into a local string */
|
||||||
|
- no_data = g_alloca (last_semicolon + 2);
|
||||||
|
- memcpy (no_data, package_id, last_semicolon + 1);
|
||||||
|
- no_data[last_semicolon + 1] = '\0';
|
||||||
|
-
|
||||||
|
- return g_str_hash (no_data);
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
+ * Do not compare the repo. Some backends do not append the origin.
|
||||||
|
+ */
|
||||||
|
static gboolean
|
||||||
|
-package_id_equal (gconstpointer a,
|
||||||
|
- gconstpointer b)
|
||||||
|
+gs_pk_compare_ids (const gchar *package_id1, const gchar *package_id2)
|
||||||
|
{
|
||||||
|
- const gchar *package_id_a = a;
|
||||||
|
- const gchar *package_id_b = b;
|
||||||
|
- gsize i, n_semicolons = 0;
|
||||||
|
-
|
||||||
|
- /* compare up to and including the last semicolon */
|
||||||
|
- for (i = 0; package_id_a[i] != '\0' && package_id_b[i] != '\0'; i++) {
|
||||||
|
- if (package_id_a[i] != package_id_b[i])
|
||||||
|
- return FALSE;
|
||||||
|
- if (package_id_a[i] == ';')
|
||||||
|
- n_semicolons++;
|
||||||
|
- if (n_semicolons == 4)
|
||||||
|
- return TRUE;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- return package_id_a[i] == package_id_b[i];
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
-GHashTable *
|
||||||
|
-gs_plugin_packagekit_details_array_to_hash (GPtrArray *array)
|
||||||
|
-{
|
||||||
|
- g_autoptr(GHashTable) details_collection = NULL;
|
||||||
|
-
|
||||||
|
- details_collection = g_hash_table_new_full (package_id_hash, package_id_equal,
|
||||||
|
- NULL, NULL);
|
||||||
|
-
|
||||||
|
- for (gsize i = 0; i < array->len; i++) {
|
||||||
|
- PkDetails *details = g_ptr_array_index (array, i);
|
||||||
|
- g_hash_table_insert (details_collection,
|
||||||
|
- pk_details_get_package_id (details),
|
||||||
|
- details);
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- return g_steal_pointer (&details_collection);
|
||||||
|
+ gboolean ret;
|
||||||
|
+ g_auto(GStrv) split1 = NULL;
|
||||||
|
+ g_auto(GStrv) split2 = NULL;
|
||||||
|
+
|
||||||
|
+ split1 = pk_package_id_split (package_id1);
|
||||||
|
+ if (split1 == NULL)
|
||||||
|
+ return FALSE;
|
||||||
|
+ split2 = pk_package_id_split (package_id2);
|
||||||
|
+ if (split2 == NULL)
|
||||||
|
+ return FALSE;
|
||||||
|
+ ret = (g_strcmp0 (split1[PK_PACKAGE_ID_NAME],
|
||||||
|
+ split2[PK_PACKAGE_ID_NAME]) == 0 &&
|
||||||
|
+ g_strcmp0 (split1[PK_PACKAGE_ID_VERSION],
|
||||||
|
+ split2[PK_PACKAGE_ID_VERSION]) == 0 &&
|
||||||
|
+ g_strcmp0 (split1[PK_PACKAGE_ID_ARCH],
|
||||||
|
+ split2[PK_PACKAGE_ID_ARCH]) == 0);
|
||||||
|
+ return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
gs_plugin_packagekit_refine_details_app (GsPlugin *plugin,
|
||||||
|
- GHashTable *details_collection,
|
||||||
|
+ GPtrArray *array,
|
||||||
|
GsApp *app)
|
||||||
|
{
|
||||||
|
GPtrArray *source_ids;
|
||||||
|
PkDetails *details;
|
||||||
|
const gchar *package_id;
|
||||||
|
+ guint i;
|
||||||
|
guint j;
|
||||||
|
guint64 size = 0;
|
||||||
|
|
||||||
|
- /* @source_ids can have as many as 200 elements (google-noto); typically
|
||||||
|
- * it has 1 or 2
|
||||||
|
- *
|
||||||
|
- * @details_collection is typically a large list of apps in the
|
||||||
|
- * repository, on the order of 400 or 700 apps */
|
||||||
|
source_ids = gs_app_get_source_ids (app);
|
||||||
|
for (j = 0; j < source_ids->len; j++) {
|
||||||
|
package_id = g_ptr_array_index (source_ids, j);
|
||||||
|
- details = g_hash_table_lookup (details_collection, package_id);
|
||||||
|
- if (details == NULL)
|
||||||
|
- continue;
|
||||||
|
-
|
||||||
|
- if (gs_app_get_license (app) == NULL) {
|
||||||
|
- g_autofree gchar *license_spdx = NULL;
|
||||||
|
- license_spdx = as_utils_license_to_spdx (pk_details_get_license (details));
|
||||||
|
- if (license_spdx != NULL) {
|
||||||
|
- gs_app_set_license (app,
|
||||||
|
- GS_APP_QUALITY_LOWEST,
|
||||||
|
- license_spdx);
|
||||||
|
+ for (i = 0; i < array->len; i++) {
|
||||||
|
+ /* right package? */
|
||||||
|
+ details = g_ptr_array_index (array, i);
|
||||||
|
+ if (!gs_pk_compare_ids (package_id,
|
||||||
|
+ pk_details_get_package_id (details))) {
|
||||||
|
+ continue;
|
||||||
|
}
|
||||||
|
+ if (gs_app_get_license (app) == NULL) {
|
||||||
|
+ g_autofree gchar *license_spdx = NULL;
|
||||||
|
+ license_spdx = as_utils_license_to_spdx (pk_details_get_license (details));
|
||||||
|
+ if (license_spdx != NULL) {
|
||||||
|
+ gs_app_set_license (app,
|
||||||
|
+ GS_APP_QUALITY_LOWEST,
|
||||||
|
+ license_spdx);
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+ if (gs_app_get_url (app, AS_URL_KIND_HOMEPAGE) == NULL) {
|
||||||
|
+ gs_app_set_url (app,
|
||||||
|
+ AS_URL_KIND_HOMEPAGE,
|
||||||
|
+ pk_details_get_url (details));
|
||||||
|
+ }
|
||||||
|
+ if (gs_app_get_description (app) == NULL) {
|
||||||
|
+ gs_app_set_description (app,
|
||||||
|
+ GS_APP_QUALITY_LOWEST,
|
||||||
|
+ pk_details_get_description (details));
|
||||||
|
+ }
|
||||||
|
+ size += pk_details_get_size (details);
|
||||||
|
+ break;
|
||||||
|
+
|
||||||
|
}
|
||||||
|
- if (gs_app_get_url (app, AS_URL_KIND_HOMEPAGE) == NULL) {
|
||||||
|
- gs_app_set_url (app,
|
||||||
|
- AS_URL_KIND_HOMEPAGE,
|
||||||
|
- pk_details_get_url (details));
|
||||||
|
- }
|
||||||
|
- if (gs_app_get_description (app) == NULL) {
|
||||||
|
- gs_app_set_description (app,
|
||||||
|
- GS_APP_QUALITY_LOWEST,
|
||||||
|
- pk_details_get_description (details));
|
||||||
|
- }
|
||||||
|
- size += pk_details_get_size (details);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* the size is the size of all sources */
|
||||||
|
diff --git a/plugins/packagekit/packagekit-common.h b/plugins/packagekit/packagekit-common.h
|
||||||
|
index 9f52368..0742ea3 100644
|
||||||
|
--- a/plugins/packagekit/packagekit-common.h
|
||||||
|
+++ b/plugins/packagekit/packagekit-common.h
|
||||||
|
@@ -30,9 +30,8 @@ void gs_plugin_packagekit_resolve_packages_app (GsPlugin *plugin,
|
||||||
|
void gs_plugin_packagekit_set_metadata_from_package (GsPlugin *plugin,
|
||||||
|
GsApp *app,
|
||||||
|
PkPackage *package);
|
||||||
|
-GHashTable * gs_plugin_packagekit_details_array_to_hash (GPtrArray *array);
|
||||||
|
void gs_plugin_packagekit_refine_details_app (GsPlugin *plugin,
|
||||||
|
- GHashTable *details_collection,
|
||||||
|
+ GPtrArray *array,
|
||||||
|
GsApp *app);
|
||||||
|
void gs_plugin_packagekit_set_packaging_format (GsPlugin *plugin,
|
||||||
|
GsApp *app);
|
||||||
BIN
gnome-software-3.38.2.tar.xz
Normal file
BIN
gnome-software-3.38.2.tar.xz
Normal file
Binary file not shown.
Binary file not shown.
@ -1,61 +1,29 @@
|
|||||||
%global appstream_version 0.14.0
|
|
||||||
%global flatpak_version 1.5.1
|
|
||||||
%global fwupd_version 1.3.3
|
|
||||||
%global glib2_version 2.61.1
|
|
||||||
%global gtk4_version 4.9.2
|
|
||||||
%global json_glib_version 1.2.0
|
|
||||||
%global libadwaita_version 1.3
|
|
||||||
%global libxmlb_version 0.1.7
|
|
||||||
%global packagekit_version 1.1.1
|
|
||||||
|
|
||||||
%define gs_plugin_version 20
|
|
||||||
|
|
||||||
%global __provides_exclude_from ^%{_libdir}/%{name}/plugins-%{gs_plugin_version}/.*\\.so.*$
|
|
||||||
|
|
||||||
Name: gnome-software
|
Name: gnome-software
|
||||||
Version: 44.5
|
Version: 3.38.2
|
||||||
Release: 1
|
Release: 2
|
||||||
Summary: GNOME software Store
|
Summary: GNOME software Store
|
||||||
License: GPLv2+
|
License: GPLv2+
|
||||||
URL: https://wiki.gnome.org/Apps/Software
|
URL: https://wiki.gnome.org/Apps/Software
|
||||||
Source0: https://download.gnome.org/sources/gnome-software/44/%{name}-%{version}.tar.xz
|
Source0: https://download.gnome.org/sources/gnome-software/3.38/gnome-software-%{version}.tar.xz
|
||||||
|
Patch0001: 0001-Revert-packagekit-Avoid-600000-allocations-when-comp.patch
|
||||||
|
|
||||||
BuildRequires: gettext libxslt docbook-style-xsl desktop-file-utils gtk-doc
|
BuildRequires: gettext libxslt docbook-style-xsl desktop-file-utils
|
||||||
BuildRequires: gnome-desktop3-devel gspell-devel polkit-devel ostree-devel rpm-ostree-devel
|
BuildRequires: fwupd-devel >= 1.0.3 glib2-devel >= 2.61.1 gnome-desktop3-devel
|
||||||
BuildRequires: gsettings-desktop-schemas-devel gnome-online-accounts-devel
|
BuildRequires: gsettings-desktop-schemas-devel >= 3.12.0 gnome-online-accounts-devel
|
||||||
BuildRequires: libappstream-glib-devel >= 0.7.14-3 libdnf-devel libsoup-devel
|
BuildRequires: gspell-devel gtk3-devel >= 3.22.4 gtk-doc json-glib-devel >= 1.2.0
|
||||||
|
BuildRequires: libappstream-glib-devel >= 0.7.14-3 libdnf-devel libsoup-devel meson
|
||||||
|
BuildRequires: PackageKit-glib-devel >= 1.1.1 polkit-devel libxmlb-devel >= 0.1.7
|
||||||
|
BuildRequires: flatpak-devel >= 1.5.1 ostree-devel rpm-ostree-devel
|
||||||
BuildRequires: libgudev1-devel valgrind-devel rpm-devel sysprof-devel
|
BuildRequires: libgudev1-devel valgrind-devel rpm-devel sysprof-devel
|
||||||
BuildRequires: gcc gcc-c++ meson appstream-devel >= %{appstream_version}
|
BuildRequires: gcc gcc-c++
|
||||||
BuildRequires: pkgconfig(gtk4) >= %{gtk4_version}
|
|
||||||
BuildRequires: fwupd-devel >= %{fwupd_version}
|
|
||||||
BuildRequires: glib2-devel >= %{glib2_version}
|
|
||||||
BuildRequires: json-glib-devel >= %{json_glib_version}
|
|
||||||
BuildRequires: pkgconfig(libadwaita-1) >= %{libadwaita_version}
|
|
||||||
BuildRequires: libxmlb-devel >= %{libxmlb_version}
|
|
||||||
BuildRequires: PackageKit-glib-devel >= %{packagekit_version}
|
|
||||||
BuildRequires: flatpak-devel >= %{flatpak_version}
|
|
||||||
BuildRequires: chrpath
|
|
||||||
BuildRequires: sysprof-devel
|
|
||||||
BuildRequires: pkgconfig(malcontent-0)
|
|
||||||
|
|
||||||
Requires: epiphany-runtime
|
Requires: epiphany-runtime
|
||||||
Requires: flatpak%{?_isa} >= %{flatpak_version}
|
Requires: flatpak >= 1.5.1 flatpak-libs >= 1.5.1 fwupd >= 1.0.3 glib2 >= 2.61.0
|
||||||
Requires: flatpak-libs >= %{flatpak_version}
|
Requires: gnome-desktop3 >= 3.18.0 gnome-menus gsettings-desktop-schemas >= 3.12.0
|
||||||
Requires: fwupd%{?_isa} >= %{fwupd_version}
|
Requires: gtk3 >= 3.22.4 json-glib >= 1.2.0 iso-codes libappstream-glib >= 0.7.14-3
|
||||||
Requires: glib2%{?_isa} >= %{glib2_version}
|
Requires: librsvg2 libsoup >= 2.52.0 PackageKit >= 1.1.1 snapd-login-service
|
||||||
Requires: json-glib%{?_isa} >= %{json_glib_version}
|
|
||||||
Requires: libxmlb%{?_isa} >= %{libxmlb_version}
|
|
||||||
Requires: PackageKit%{?_isa} >= %{packagekit_version}
|
|
||||||
Requires: gnome-desktop3 >= 3.18.0 gnome-menus gsettings-desktop-schemas
|
|
||||||
Requires: gtk3 >= 3.22.4 iso-codes libappstream-glib >= 0.7.14-3
|
|
||||||
Requires: librsvg2 snapd-login-service
|
|
||||||
Requires: rpm-ostree%{?_isa}
|
|
||||||
Provides: gnome-software-rpm-ostree = %{version}-%{release}
|
|
||||||
Provides: gnome-software-snap = %{version}-%{release}
|
Provides: gnome-software-snap = %{version}-%{release}
|
||||||
Provides: gnome-software-editor = %{version}-%{release}
|
|
||||||
Obsoletes: gnome-software-snap < %{version}-%{release}
|
Obsoletes: gnome-software-snap < %{version}-%{release}
|
||||||
Obsoletes: gnome-software-editor < 3.35.1
|
|
||||||
Supplements: (gnome-software%{?_isa} and rpm-ostree%{?_isa})
|
|
||||||
|
|
||||||
%description
|
%description
|
||||||
AppStore like management of Application fir your GNOME Desktop.
|
AppStore like management of Application fir your GNOME Desktop.
|
||||||
@ -66,104 +34,76 @@ Requires: gnome-software = %{version}-%{release}
|
|||||||
%description devel
|
%description devel
|
||||||
This subpackage contains the header files for developing GNOME software store plugins.
|
This subpackage contains the header files for developing GNOME software store plugins.
|
||||||
|
|
||||||
%package_help
|
%package help
|
||||||
|
Summary: Help documentation for the GNOME software store.
|
||||||
|
%description help
|
||||||
|
Help documentation for the GNOME software store.
|
||||||
|
|
||||||
|
%package editor
|
||||||
|
Summary: Editor for designing banners for GNOME Software
|
||||||
|
Requires: gnome-software = %{version}-%{release}
|
||||||
|
|
||||||
|
%description editor
|
||||||
|
Editor is used to design banners for GNOME Software.
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%autosetup -n gnome-software-%{version} -p1
|
%autosetup -n gnome-software-%{version} -p1
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%meson \
|
%meson -Dsnap=false -Dgudev=true -Dpackagekit=true -Dexternal_appstream=false -Drpm_ostree=false \
|
||||||
-Dsnap=false \
|
-Dtests=false -Dmalcontent=false
|
||||||
-Dgudev=true \
|
|
||||||
-Dpackagekit=true \
|
|
||||||
-Dpackagekit_autoremove=true \
|
|
||||||
-Dexternal_appstream=false \
|
|
||||||
-Drpm_ostree=true \
|
|
||||||
-Dsoup2=true \
|
|
||||||
-Dtests=false \
|
|
||||||
-Dmalcontent=true \
|
|
||||||
-Dwebapps=false \
|
|
||||||
-Dhardcoded_foss_webapps=false \
|
|
||||||
-Dhardcoded_proprietary_webapps=false
|
|
||||||
%meson_build
|
%meson_build
|
||||||
|
|
||||||
%install
|
%install
|
||||||
%meson_install
|
%meson_install
|
||||||
|
|
||||||
rm %{buildroot}%{_libdir}/gnome-software/plugins-%{gs_plugin_version}/libgs_plugin_dpkg.so
|
|
||||||
|
|
||||||
desktop-file-edit %{buildroot}%{_datadir}/applications/org.gnome.Software.desktop \
|
desktop-file-edit %{buildroot}%{_datadir}/applications/org.gnome.Software.desktop \
|
||||||
--set-key=X-AppInstall-Package --set-value=%{name}
|
--set-key=X-AppInstall-Package --set-value=gnome-software
|
||||||
install -d %{buildroot}%{_datadir}/gnome-software/backgrounds
|
install -d %{buildroot}%{_datadir}/gnome-software/backgrounds
|
||||||
|
|
||||||
%delete_la_and_a
|
%delete_la_and_a
|
||||||
|
|
||||||
%find_lang %name --with-gnome
|
%find_lang %name --with-gnome
|
||||||
|
|
||||||
chrpath -d %{buildroot}%{_libdir}/%{name}/plugins-%{gs_plugin_version}/libgs_plugin_rpm-ostree.so
|
|
||||||
chrpath -d %{buildroot}%{_libexecdir}/gnome-software-cmd
|
|
||||||
chrpath -d %{buildroot}%{_bindir}/%{name}
|
|
||||||
|
|
||||||
mkdir -p %{buildroot}/etc/ld.so.conf.d
|
|
||||||
echo "%{_libdir}/%{name}" > %{buildroot}/etc/ld.so.conf.d/%{name}-%{_arch}.conf
|
|
||||||
#echo "%{_libdir}/rpm-ostree" > %{buildroot}/etc/ld.so.conf.d/%{name}-%{_arch}.conf
|
|
||||||
|
|
||||||
%check
|
%check
|
||||||
desktop-file-validate %{buildroot}%{_datadir}/applications/*.desktop
|
desktop-file-validate %{buildroot}%{_datadir}/applications/*.desktop
|
||||||
|
|
||||||
%post
|
|
||||||
/sbin/ldconfig
|
|
||||||
|
|
||||||
%postun
|
|
||||||
/sbin/ldconfig
|
|
||||||
|
|
||||||
%files -f gnome-software.lang
|
%files -f gnome-software.lang
|
||||||
%license COPYING
|
%doc AUTHORS README.md COPYING
|
||||||
%{_bindir}/gnome-software
|
%{_bindir}/gnome-software
|
||||||
%{_datadir}/applications/*.desktop
|
%{_datadir}/applications/gnome-software-local-file.desktop
|
||||||
%{_datadir}/icons/hicolor/*/*/*.svg
|
%{_datadir}/applications/org.gnome.Software.desktop
|
||||||
|
%dir %{_datadir}/gnome-software
|
||||||
|
%{_datadir}/icons/hicolor/*
|
||||||
%{_datadir}/gnome-software/backgrounds/
|
%{_datadir}/gnome-software/backgrounds/
|
||||||
|
%{_datadir}/gnome-software/{*.png,featured-*.svg,featured-*.jpg}
|
||||||
%{_datadir}/metainfo/*.xml
|
%{_datadir}/metainfo/*.xml
|
||||||
%{_libdir}/gnome-software/plugins-%{gs_plugin_version}/*.so
|
%dir %{_libdir}/gs-plugins-13
|
||||||
%{_libdir}/gnome-software/libgnomesoftware.so.%{gs_plugin_version}
|
%{_libdir}/gs-plugins-13/*.so
|
||||||
%{_sysconfdir}/xdg/autostart/org.gnome.Software.desktop
|
%{_sysconfdir}/xdg/autostart/gnome-software-service.desktop
|
||||||
%{_datadir}//swcatalog/xml/org.gnome.Software.Curated.xml
|
%{_datadir}/app-info/xmls/org.gnome.Software.Featured.xml
|
||||||
%{_datadir}/swcatalog/xml/org.gnome.Software.Featured.xml
|
|
||||||
%{_datadir}/dbus-1/services/org.freedesktop.PackageKit.service
|
%{_datadir}/dbus-1/services/org.freedesktop.PackageKit.service
|
||||||
%{_datadir}/dbus-1/services/org.gnome.Software.service
|
%{_datadir}/dbus-1/services/org.gnome.Software.service
|
||||||
%{_datadir}/gnome-shell/search-providers/org.gnome.Software-search-provider.ini
|
%{_datadir}/gnome-shell/search-providers/org.gnome.Software-search-provider.ini
|
||||||
%{_datadir}/glib-2.0/schemas/org.gnome.software.gschema.xml
|
%{_datadir}/glib-2.0/schemas/org.gnome.software.gschema.xml
|
||||||
%{_libexecdir}/{gnome-software-cmd,gnome-software-restarter}
|
%{_libexecdir}/{gnome-software-cmd,gnome-software-restarter}
|
||||||
%config(noreplace) /etc/ld.so.conf.d/*
|
#%{_libdir}/gs-plugins-12/libgs_plugin_snap.so
|
||||||
|
#%{_datadir}/metainfo/org.gnome.Software.Plugin.Snap.metainfo.xml
|
||||||
|
|
||||||
%files devel
|
%files devel
|
||||||
%{_libdir}/gnome-software/libgnomesoftware.so
|
|
||||||
%{_libdir}/pkgconfig/gnome-software.pc
|
%{_libdir}/pkgconfig/gnome-software.pc
|
||||||
|
%dir %{_includedir}/gnome-software
|
||||||
%{_includedir}/gnome-software/*.h
|
%{_includedir}/gnome-software/*.h
|
||||||
%dir %{_datadir}/doc/gnome-software
|
|
||||||
%{_datadir}/gtk-doc/html/gnome-software
|
%{_datadir}/gtk-doc/html/gnome-software
|
||||||
|
|
||||||
%files help
|
%files help
|
||||||
%doc AUTHORS README.md
|
#%{_mandir}/man1/gnome-software-editor.1*
|
||||||
%{_datadir}/doc/
|
%{_mandir}/man1/gnome-software.1.gz
|
||||||
%{_mandir}/man1/gnome-software.1.*
|
|
||||||
|
%files editor
|
||||||
|
#%{_bindir}/gnome-software-editor
|
||||||
|
#%{_datadir}/applications/org.gnome.Software.Editor.desktop
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
* Mon Nov 27 2023 lwg <liweiganga@uniontech.com> - 44.5-1
|
|
||||||
- update to version 44.5
|
|
||||||
|
|
||||||
* Thu Mar 2 2023 zhuang li <zhuang.li@turbolinux.com.cn> - 43.2-2
|
|
||||||
- Modified profile comments 43.2-2
|
|
||||||
|
|
||||||
* Mon Jan 02 2023 lin zhang <lin.zhang@turbolinux.com.cn> - 43.2-1
|
|
||||||
- Update to 43.2
|
|
||||||
|
|
||||||
* Wed Aug 24 2022 caodongxia <caodongxia@h-partners.com> -42.2-2
|
|
||||||
- Remove rpath
|
|
||||||
|
|
||||||
* Tue Jun 28 2022 weijin deng <weijin.deng@turbolinux.com.cn> - 42.2-1
|
|
||||||
- Update to 42.2
|
|
||||||
|
|
||||||
* Tue Mar 8 2022 weijin deng <weijin.deng@turbolinux.com.cn> - 3.38.2-2
|
* Tue Mar 8 2022 weijin deng <weijin.deng@turbolinux.com.cn> - 3.38.2-2
|
||||||
- Remove requires "appstream-data" whose repository isn't completely open and free
|
- Remove requires "appstream-data" whose repository isn't completely open and free
|
||||||
|
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
version_control: gitlab.gnome
|
version_control: gitlab.gnome
|
||||||
src_repo: gnome-software
|
src_repo: gnome-software
|
||||||
tag_prefix: "^"
|
tag_prefix: "^"
|
||||||
separator: "."
|
seperator: "."
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user