[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#773064: marked as done (unblock: gnome-menus/3.13.3-5)



Your message dated Sun, 14 Dec 2014 16:13:48 +0000
with message-id <1418573628.30230.3.camel@adam-barratt.org.uk>
and subject line Re: Bug#773064: unblock: gnome-menus/3.13.3-5
has caused the Debian Bug report #773064,
regarding unblock: gnome-menus/3.13.3-5
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
773064: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=773064
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock

Hi,

please unblock gnome-menus for the following changes.

gnome-menus (3.13.3-4) unstable; urgency=medium

  * menus.blacklist:
    + Add everything from xscreensaver-data. Closes: #771710.
  * 30_xdg_syntax.patch: patch from upstream git. Support multiple 
    desktops in XDG_CURRENT_DESKTOP. Closes: #773013.

The first change is about blacklist lots of useless entries. The second
makes the menu have the correct contents with gnome-classic.

unblock gnome-menus/3.13.3-4

Thanks,
-- 
 .''`.      Josselin Mouette
: :' :
`. `'
  `-
Index: debian/changelog
===================================================================
--- debian/changelog	(révision 43961)
+++ debian/changelog	(copie de travail)
@@ -1,3 +1,12 @@
+gnome-menus (3.13.3-4) unstable; urgency=medium
+
+  * menus.blacklist:
+    + Add everything from xscreensaver-data. Closes: #771710.
+  * 30_xdg_syntax.patch: patch from upstream git. Support multiple 
+    desktops in XDG_CURRENT_DESKTOP. Closes: #773013.
+
+ -- Josselin Mouette <joss@debian.org>  Sat, 13 Dec 2014 21:48:50 +0100
+
 gnome-menus (3.13.3-3) unstable; urgency=medium
 
   * menus.blacklist:
Index: debian/patches/series
===================================================================
--- debian/patches/series	(révision 43961)
+++ debian/patches/series	(copie de travail)
@@ -6,3 +6,4 @@
 09_games-menu.patch
 11_science-menu.patch
 12_alacarte.patch
+30_xdg_syntax.patch
Index: debian/patches/30_xdg_syntax.patch
===================================================================
--- debian/patches/30_xdg_syntax.patch	(révision 0)
+++ debian/patches/30_xdg_syntax.patch	(révision 44046)
@@ -0,0 +1,168 @@
+From b4546ab43c2c7ef6fb6cb7e5db83dc3975b56e8e Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Alberts=20Muktup=C4=81vels?= <alberts.muktupavels@gmail.com>
+Date: Mon, 27 Oct 2014 18:41:34 +0200
+Subject: desktop-entries: support multiple desktops in XDG_CURRENT_DESKTOP
+
+This is based on glib commit:
+5a5e16e93c4f11e635918ecdb41681f63fd05a39
+
+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;
+ }
+ 
+-- 
+cgit v0.10.1
+
Index: debian/menus.blacklist
===================================================================
--- debian/menus.blacklist	(révision 43961)
+++ debian/menus.blacklist	(copie de travail)
@@ -196,6 +196,23 @@
 # xscreensaver
 xscreensaver.desktop
 xscreensaver-properties.desktop
+screensavers/tessellimage.desktop
+screensavers/distort.desktop
+screensavers/fuzzyflakes.desktop
+screensavers/xlyap.desktop
+screensavers/ripples.desktop
+screensavers/abstractile.desktop
+screensavers/slidescreen.desktop
+screensavers/shadebobs.desktop
+screensavers/fiberlamp.desktop
+screensavers/metaballs.desktop
+screensavers/hexadrop.desktop
+screensavers/cwaves.desktop
+screensavers/galaxy.desktop
+screensavers/deco.desktop
+screensavers/swirl.desktop
+screensavers/penrose.desktop
+screensavers/m6502.desktop
 
 # IDLE - we don't need one entry for each Python version
 idle-python2.5.desktop

--- End Message ---
--- Begin Message ---
On Sun, 2014-12-14 at 13:44 +0100, Josselin Mouette wrote:
> Control: retitle -1 unblock: gnome-menus/3.13.3-5
> 
> Le dimanche 14 décembre 2014 à 13:13 +0100, Josselin Mouette a écrit :
> > Please wait for a newer upload, there’s a typo in the upstream patch.
> 
> There you go.
> 
> gnome-menus (3.13.3-5) unstable; urgency=medium
> 
>   * 30_xdg_syntax.patch: fix typo in the patch as provided by upstream. 
>     Thanks Jerad Simpson.
> 
> Attaching the newer version of the patch.

Unblocked, thanks.

Regards,

Adam

--- End Message ---

Reply to: