[oe] [PATCH 04/13] menulibre: initial add 2.1.3

Andreas Müller schnitzeltony at googlemail.com
Mon Oct 31 22:10:40 UTC 2016


it was added in meta-xfce for two reasons:

* xfce4-whiskermenu-plugin suggests menulibre as menu editor
* meta-xfce requires meta-python already and menulibre requires some recipes
  within meta-python

Signed-off-by: Andreas Müller <schnitzeltony at googlemail.com>
---
 ...launcher-Exit-early-if-no-row-is-selected.patch | 37 ++++++++++++++++++++
 ...0002-setup.py-avoid-usr-share-share-paths.patch | 40 ++++++++++++++++++++++
 ...ulibreXdg.py-fix-loading-of-desktop-files.patch | 36 +++++++++++++++++++
 .../recipes-apps/menulibre/menulibre_2.1.3.bb      | 36 +++++++++++++++++++
 4 files changed, 149 insertions(+)
 create mode 100644 meta-xfce/recipes-apps/menulibre/files/0001-add_launcher-Exit-early-if-no-row-is-selected.patch
 create mode 100644 meta-xfce/recipes-apps/menulibre/files/0002-setup.py-avoid-usr-share-share-paths.patch
 create mode 100644 meta-xfce/recipes-apps/menulibre/files/0003-MenulibreXdg.py-fix-loading-of-desktop-files.patch
 create mode 100644 meta-xfce/recipes-apps/menulibre/menulibre_2.1.3.bb

diff --git a/meta-xfce/recipes-apps/menulibre/files/0001-add_launcher-Exit-early-if-no-row-is-selected.patch b/meta-xfce/recipes-apps/menulibre/files/0001-add_launcher-Exit-early-if-no-row-is-selected.patch
new file mode 100644
index 0000000..fb2dfc9
--- /dev/null
+++ b/meta-xfce/recipes-apps/menulibre/files/0001-add_launcher-Exit-early-if-no-row-is-selected.patch
@@ -0,0 +1,37 @@
+From 1060e7ac8a63b93d56006718f0e9b1d9382b2226 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony at googlemail.com>
+Date: Mon, 31 Oct 2016 08:33:16 +0100
+Subject: [PATCH] add_launcher: Exit early if no row is selected
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Stolen from [1]
+
+[1] http://pkgs.fedoraproject.org/cgit/rpms/menulibre.git/tree/menulibre-add-launcher-none-check.patch
+
+Upstream-Status: Pending
+
+Signed-off-by: Andreas Müller <schnitzeltony at googlemail.com>
+---
+ menulibre/MenulibreApplication.py | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/menulibre/MenulibreApplication.py b/menulibre/MenulibreApplication.py
+index e234800..ac73b03 100644
+--- a/menulibre/MenulibreApplication.py
++++ b/menulibre/MenulibreApplication.py
+@@ -1418,6 +1418,10 @@ class MenulibreWindow(Gtk.ApplicationWindow):
+         model, parent_data = self.treeview.get_parent_row_data()
+         model, row_data = self.treeview.get_selected_row_data()
+ 
++        # Exit early if no row is selected
++        if not row_data:
++            return
++
+         # Currently selected item is a directory, take its categories.
+         if row_data[2] == MenuItemTypes.DIRECTORY:
+             self.treeview.add_child(new_row_data)
+-- 
+2.5.5
+
diff --git a/meta-xfce/recipes-apps/menulibre/files/0002-setup.py-avoid-usr-share-share-paths.patch b/meta-xfce/recipes-apps/menulibre/files/0002-setup.py-avoid-usr-share-share-paths.patch
new file mode 100644
index 0000000..b63d4dc
--- /dev/null
+++ b/meta-xfce/recipes-apps/menulibre/files/0002-setup.py-avoid-usr-share-share-paths.patch
@@ -0,0 +1,40 @@
+From 99788b4557543c490493ce1b827538c49142c25d Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony at googlemail.com>
+Date: Mon, 31 Oct 2016 09:08:51 +0100
+Subject: [PATCH] setup.py: avoid /usr/share/share paths
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Upstream-Status: Inappropriate [configuration]
+
+Signed-off-by: Andreas Müller <schnitzeltony at googlemail.com>
+---
+ setup.py | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/setup.py b/setup.py
+index 5fc237d..c4fbf7c 100644
+--- a/setup.py
++++ b/setup.py
+@@ -143,7 +143,7 @@ class InstallAndUpdateDataDirectory(DistUtilsExtra.auto.install_auto):
+ 
+         if self.root:
+             target_data = os.path.relpath(self.install_data, self.root) + os.sep
+-            target_pkgdata = os.path.join(target_data, 'share', 'menulibre', '')
++            target_pkgdata = os.path.join(target_data, 'menulibre', '')
+             target_scripts = os.path.join(self.install_scripts, '')
+ 
+             data_dir = os.path.join(self.prefix, 'share', 'menulibre', '')
+@@ -152,7 +152,7 @@ class InstallAndUpdateDataDirectory(DistUtilsExtra.auto.install_auto):
+             # --user install
+             self.root = ''
+             target_data = os.path.relpath(self.install_data) + os.sep
+-            target_pkgdata = os.path.join(target_data, 'share', 'menulibre', '')
++            target_pkgdata = os.path.join(target_data, 'menulibre', '')
+             target_scripts = os.path.join(self.install_scripts, '')
+ 
+             # Use absolute paths
+-- 
+2.5.5
+
diff --git a/meta-xfce/recipes-apps/menulibre/files/0003-MenulibreXdg.py-fix-loading-of-desktop-files.patch b/meta-xfce/recipes-apps/menulibre/files/0003-MenulibreXdg.py-fix-loading-of-desktop-files.patch
new file mode 100644
index 0000000..1e92088
--- /dev/null
+++ b/meta-xfce/recipes-apps/menulibre/files/0003-MenulibreXdg.py-fix-loading-of-desktop-files.patch
@@ -0,0 +1,36 @@
+From 90098d835b62b38ac396d55b80a684770dbaacde Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony at googlemail.com>
+Date: Mon, 31 Oct 2016 15:50:52 +0100
+Subject: [PATCH] MenulibreXdg.py: fix loading of desktop files
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+fixes:
+| UnicodeDecodeError: 'ascii' codec can't decode byet 0xd9 in position 235: ordinal not in range(128)
+
+and information display not properly filled.
+
+Upstream-Status: Pending
+
+Signed-off-by: Andreas Müller <schnitzeltony at googlemail.com>
+---
+ menulibre/MenulibreXdg.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/menulibre/MenulibreXdg.py b/menulibre/MenulibreXdg.py
+index e04c5e6..14b2593 100644
+--- a/menulibre/MenulibreXdg.py
++++ b/menulibre/MenulibreXdg.py
+@@ -74,7 +74,7 @@ class MenulibreDesktopEntry:
+ 
+     def load_properties(self, filename):
+         """Load the properties."""
+-        input_file = open(filename)
++        input_file = open(filename, 'rt', encoding='utf-8')
+         self.load_properties_from_text(input_file.read())
+         input_file.close()
+ 
+-- 
+2.5.5
+
diff --git a/meta-xfce/recipes-apps/menulibre/menulibre_2.1.3.bb b/meta-xfce/recipes-apps/menulibre/menulibre_2.1.3.bb
new file mode 100644
index 0000000..e945f01
--- /dev/null
+++ b/meta-xfce/recipes-apps/menulibre/menulibre_2.1.3.bb
@@ -0,0 +1,36 @@
+DESCRIPTION = "An advanced menu editor"
+HOMEPAGE = "https://launchpad.net/menulibre"
+SECTION = "x11/graphics"
+LICENSE = "GPLv3"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
+
+DEPENDS = "python3-distutils-extra-native"
+
+inherit distutils3 gtk-icon-cache
+
+SRC_URI = " \
+    https://launchpad.net/menulibre/2.1/${PV}/+download/${PN}-${PV}.tar.gz \
+    file://0001-add_launcher-Exit-early-if-no-row-is-selected.patch \
+    file://0002-setup.py-avoid-usr-share-share-paths.patch \
+    file://0003-MenulibreXdg.py-fix-loading-of-desktop-files.patch \
+"
+SRC_URI[md5sum] = "19d9d3337322eb5513454bb8cdfb739b"
+SRC_URI[sha256sum] = "bdd69740119902f1b1f8c7831155f4428403792a0a6c4287bcbb395c4e71fb31"
+
+do_install_append() {
+    sed -i 's:${D}::g' ${D}${datadir}/applications/menulibre.desktop
+}
+
+FILES_${PN} += " \
+    ${datadir}/applications \
+    ${datadir}/menulibre \
+    ${datadir}/icons \
+"
+
+RDEPENDS_${PN} += " \
+    gtk+3 \
+    python3-pygobject \
+    gnome-menus3 \
+    python3-unixadmin \
+    python3-psutil \
+"
-- 
2.5.5




More information about the Openembedded-devel mailing list