diff --git a/14.patch b/14.patch new file mode 100644 index 0000000..c08718a --- /dev/null +++ b/14.patch @@ -0,0 +1,56 @@ +From f18150d68204f2a23f4874e45363df1112fd1620 Mon Sep 17 00:00:00 2001 +From: Kalev Lember +Date: Fri, 24 Jan 2020 08:11:24 +0100 +Subject: [PATCH] layout: Update eog desktop filename + +Fixes: https://gitlab.gnome.org/GNOME/gnome-menus/issues/14 +--- + layout/gnome-applications.menu | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/layout/gnome-applications.menu b/layout/gnome-applications.menu +index f8d3d48..03855c5 100644 +--- a/layout/gnome-applications.menu ++++ b/layout/gnome-applications.menu +@@ -33,12 +33,12 @@ + +- eog.desktop + gucharmap.desktop + org.gnome.Calculator.desktop + org.gnome.DejaDup.desktop + org.gnome.Dictionary.desktop + org.gnome.DiskUtility.desktop ++ org.gnome.eog.desktop + org.gnome.Evince.desktop + org.gnome.FileRoller.desktop + org.gnome.font-viewer.desktop +@@ -108,7 +108,7 @@ + + + Graphics +- eog.desktop ++ org.gnome.eog.desktop + org.gnome.Evince.desktop + simple-scan.desktop + +@@ -206,7 +206,6 @@ + X-GNOME-Utilities.directory + + X-GNOME-Utilities +- eog.desktop + gnome-abrt.desktop + gnome-system-log.desktop + gnome-system-monitor.desktop +@@ -217,6 +216,7 @@ + org.gnome.DejaDup.desktop + org.gnome.Dictionary.desktop + org.gnome.DiskUtility.desktop ++ org.gnome.eog.desktop + org.gnome.Evince.desktop + org.gnome.FileRoller.desktop + org.gnome.fonts.desktop +-- +2.24.1 + diff --git a/fix-multiple-desktops-in-xdg-current-desktop.patch b/fix-multiple-desktops-in-xdg-current-desktop.patch deleted file mode 100644 index 1c98497..0000000 --- a/fix-multiple-desktops-in-xdg-current-desktop.patch +++ /dev/null @@ -1,200 +0,0 @@ -From b4546ab43c2c7ef6fb6cb7e5db83dc3975b56e8e Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Alberts=20Muktup=C4=81vels?= -Date: Mon, 27 Oct 2014 18:41:34 +0200 -Subject: [PATCH 1/2] desktop-entries: support multiple desktops in - XDG_CURRENT_DESKTOP - -This is based on glib commit: -5a5e16e93c4f11e635918ecdb41681f63fd05a39 ---- - libmenu/desktop-entries.c | 110 ++++++++++++++++++++++------------------------ - 1 file changed, 52 insertions(+), 58 deletions(-) - -diff --git a/libmenu/desktop-entries.c b/libmenu/desktop-entries.c -index 326f311..bd4f886 100644 ---- a/libmenu/desktop-entries.c -+++ b/libmenu/desktop-entries.c -@@ -85,32 +85,27 @@ unix_basename_from_path (const char *path) - return path; - } - --static const char * --get_current_desktop (void) -+static const gchar * const * -+get_current_desktops (void) - { -- static char *current_desktop = NULL; -+ static gchar **result; - -- /* Support XDG_CURRENT_DESKTOP environment variable; this can be used -- * to abuse gnome-menus in non-GNOME desktops. */ -- if (!current_desktop) -+ if (g_once_init_enter (&result)) - { -- const char *desktop; -+ const gchar *desktops; -+ gchar **tmp; - -- desktop = g_getenv ("XDG_CURRENT_DESKTOP"); -+ desktops = g_getenv ("XDG_CURRENT_DESKTOP"); - -- /* Note: if XDG_CURRENT_DESKTOP is set but empty, do as if it -- * was not set */ -- if (!desktop || desktop[0] == '\0') -- current_desktop = g_strdup ("GNOME"); -- else -- current_desktop = g_strdup (desktop); -- } -+ if (desktops) -+ desktops = ""; - -- /* Using "*" means skipping desktop-related checks */ -- if (g_strcmp0 (current_desktop, "*") == 0) -- return NULL; -+ tmp = g_strsplit (desktops, ":", 0); -+ -+ g_once_init_leave (&result, tmp); -+ } - -- return current_desktop; -+ return (const gchar **) result; - } - - static GIcon * -@@ -151,52 +146,58 @@ key_file_get_icon (GKeyFile *key_file) - static gboolean - key_file_get_show_in (GKeyFile *key_file) - { -- const gchar *current_desktop; -- gchar **strv; -+ const gchar * const *current_desktops; -+ gchar **only_show_in; -+ gchar **not_show_in; - gboolean show_in = TRUE; -- int i; -- -- current_desktop = get_current_desktop (); -- if (!current_desktop) -- return TRUE; -- -- strv = g_key_file_get_string_list (key_file, -- DESKTOP_ENTRY_GROUP, -- "OnlyShowIn", -- NULL, -- NULL); -- if (strv) -+ gint i; -+ -+ current_desktops = get_current_desktops (); -+ only_show_in = g_key_file_get_string_list (key_file, -+ DESKTOP_ENTRY_GROUP, -+ "OnlyShowIn", -+ NULL, -+ NULL); -+ not_show_in = g_key_file_get_string_list (key_file, -+ DESKTOP_ENTRY_GROUP, -+ "NotShowIn", -+ NULL, -+ NULL); -+ -+ for (i = 0; current_desktops[i]; i++) - { -- show_in = FALSE; -- for (i = 0; strv[i]; i++) -+ gint j; -+ -+ if (only_show_in) - { -- if (!strcmp (strv[i], current_desktop)) -+ show_in = FALSE; -+ for (j = 0; only_show_in[j]; j++) - { -- show_in = TRUE; -- break; -+ if (g_str_equal (only_show_in[j], current_desktops[i])) -+ { -+ show_in = TRUE; -+ goto out; -+ } - } - } -- } -- else -- { -- strv = g_key_file_get_string_list (key_file, -- DESKTOP_ENTRY_GROUP, -- "NotShowIn", -- NULL, -- NULL); -- if (strv) -+ -+ if (not_show_in) - { - show_in = TRUE; -- for (i = 0; strv[i]; i++) -+ for (j = 0; not_show_in[j]; j++) - { -- if (!strcmp (strv[i], current_desktop)) -+ if (g_str_equal (not_show_in[j], current_desktops[i])) - { - show_in = FALSE; -+ goto out; - } - } - } - } -- g_strfreev (strv); -+ -+out: -+ g_strfreev (only_show_in); -+ g_strfreev (not_show_in); - - return show_in; - } -@@ -579,14 +580,7 @@ gboolean - desktop_entry_get_show_in (DesktopEntry *entry) - { - if (entry->type == DESKTOP_ENTRY_DESKTOP) -- { -- const char *current_desktop = get_current_desktop (); -- -- if (current_desktop == NULL) -- return TRUE; -- else -- return g_desktop_app_info_get_show_in (((DesktopEntryDesktop*)entry)->appinfo, current_desktop); -- } -+ return g_desktop_app_info_get_show_in (((DesktopEntryDesktop*)entry)->appinfo, NULL); - return ((DesktopEntryDirectory*)entry)->showin; - } - --- -2.4.3 - - -From 4befe76fbdb76aa6a986297ef71d1601b2ced42e Mon Sep 17 00:00:00 2001 -From: Josselin Mouette -Date: Sun, 14 Dec 2014 20:36:36 +0100 -Subject: [PATCH 2/2] desktop-entries: fix trivial bug in handling of multiple - desktops in XDG_CURRENT_DESKTOP. - -https://bugzilla.gnome.org/show_bug.cgi?id=741505 ---- - libmenu/desktop-entries.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/libmenu/desktop-entries.c b/libmenu/desktop-entries.c -index bd4f886..a463d79 100644 ---- a/libmenu/desktop-entries.c -+++ b/libmenu/desktop-entries.c -@@ -97,7 +97,7 @@ get_current_desktops (void) - - desktops = g_getenv ("XDG_CURRENT_DESKTOP"); - -- if (desktops) -+ if (!desktops) - desktops = ""; - - tmp = g_strsplit (desktops, ":", 0); --- -2.4.3 - diff --git a/gnome-menus-3.13.3.tar.xz b/gnome-menus-3.13.3.tar.xz deleted file mode 100644 index 97883bd..0000000 Binary files a/gnome-menus-3.13.3.tar.xz and /dev/null differ diff --git a/gnome-menus-3.36.0.tar.xz b/gnome-menus-3.36.0.tar.xz new file mode 100644 index 0000000..e3fb6e6 Binary files /dev/null and b/gnome-menus-3.36.0.tar.xz differ diff --git a/gnome-menus.spec b/gnome-menus.spec index 970aa39..e857614 100644 --- a/gnome-menus.spec +++ b/gnome-menus.spec @@ -1,13 +1,13 @@ Name: gnome-menus -Version: 3.13.3 -Release: 13 +Version: 3.36.0 +Release: 1 Summary: GNOME implementation of the freedesktop menu specification License: LGPLv2+ URL: http://www.gnome.org/ -Source0: http://download.gnome.org/sources/gnome-menus/3.13/gnome-menus-%{version}.tar.xz +Source0: http://download.gnome.org/sources/gnome-menus/3.36/gnome-menus-%{version}.tar.xz -Patch0000: fix-multiple-desktops-in-xdg-current-desktop.patch +Patch0000: 14.patch BuildRequires: gawk gettext glib2-devel pkgconfig python3-devel intltool gobject-introspection-devel @@ -28,19 +28,19 @@ This package includes development libraries for writing applications using GNOME %build %configure --disable-static --enable-introspection --enable-debug=no -make +%make_build %install %make_install %delete_la -%find_lang gnome-menus-3.0 +%find_lang gnome-menus %post -p /sbin/ldconfig %postun -p /sbin/ldconfig -%files -f gnome-menus-3.0.lang +%files -f gnome-menus.lang %doc AUTHORS NEWS COPYING.LIB %{_sysconfdir}/xdg/menus/gnome-applications.menu %{_libdir}/lib*.so.* @@ -54,6 +54,11 @@ make %{_datadir}/gir-1.0/GMenu-3.0.gir %changelog +* Mon May 31 2021 weijin deng - 3.36.0-1 +- Upgrade to 3.36.0 +- Update Version, Release, Source0, stage 'build' and 'files' +- Delete old patch that existed in new version, add new patch + * Mon Oct 26 2020 huanghaitao - 3.13.3-13 - Switch python3