From bd3f46e2d6eb4d8a6587f5fce43c196d19a5df70 Mon Sep 17 00:00:00 2001 From: Nicola Vitale Date: Sun, 22 Feb 2015 13:03:50 +0000 Subject: [PATCH] (Readdition of x11/gnome-pie which was removed on 372767) Gnome-Pie is a circular application launcher. It is made of several pies, each consisting of multiple slices. The user presses a key stroke which opens the desired pie. By activating one of its slices, applications may be launched, key presses may be simulated or files can be opened. WWW: http://simmesimme.github.io/gnome-pie.html --- MOVED | 1 - x11/Makefile | 1 + x11/gnome-pie/Makefile | 57 +++++++++++++ x11/gnome-pie/distinfo | 2 + .../files/patch-resources__gnome-pie.desktop | 9 ++ x11/gnome-pie/files/patch-src__CMakeLists.txt | 43 ++++++++++ .../patch-src__actions__actionRegistry.vala | 11 +++ .../files/patch-src__gui__indicator.vala | 23 +++++ .../files/patch-src__gui__themeList.vala | 11 +++ .../patch-src__utilities__bindingManager.vala | 19 +++++ .../files/patch-src__utilities__paths.vala | 63 ++++++++++++++ x11/gnome-pie/files/pkg-message.in | 10 +++ x11/gnome-pie/pkg-descr | 6 ++ x11/gnome-pie/pkg-plist | 85 +++++++++++++++++++ 14 files changed, 340 insertions(+), 1 deletion(-) create mode 100644 x11/gnome-pie/Makefile create mode 100644 x11/gnome-pie/distinfo create mode 100644 x11/gnome-pie/files/patch-resources__gnome-pie.desktop create mode 100644 x11/gnome-pie/files/patch-src__CMakeLists.txt create mode 100644 x11/gnome-pie/files/patch-src__actions__actionRegistry.vala create mode 100644 x11/gnome-pie/files/patch-src__gui__indicator.vala create mode 100644 x11/gnome-pie/files/patch-src__gui__themeList.vala create mode 100644 x11/gnome-pie/files/patch-src__utilities__bindingManager.vala create mode 100644 x11/gnome-pie/files/patch-src__utilities__paths.vala create mode 100644 x11/gnome-pie/files/pkg-message.in create mode 100644 x11/gnome-pie/pkg-descr create mode 100644 x11/gnome-pie/pkg-plist diff --git a/MOVED b/MOVED index 4b38338f3c2c..f6b93edf2c45 100644 --- a/MOVED +++ b/MOVED @@ -7191,7 +7191,6 @@ x11/gdesklets-tasklist||2014-11-19|Depends on removed x11-toolkits/py-gnome-extr x11/gnome-applets||2014-11-19|GNOME 2 was removed x11/gnome-panel||2014-11-19|GNOME 2 was removed x11/gnome-panel-reference||2014-11-19|GNOME 2 was removed -x11/gnome-pie||2014-11-19|Is not compatible with updated gnome-menus x11/gnome-screensaver||2014-11-19|Is not compatible with updated gnome-desktop x11/gnome-swallow||2014-11-19|Removed, depends on removed gnome-panel x11/gnome2||2014-11-19|GNOME 2 was removed diff --git a/x11/Makefile b/x11/Makefile index ff35358be582..771dccd3c836 100644 --- a/x11/Makefile +++ b/x11/Makefile @@ -77,6 +77,7 @@ SUBDIR += gnome-desktop SUBDIR += gnome-desktop-reference SUBDIR += gnome-menus + SUBDIR += gnome-pie SUBDIR += gnome-session SUBDIR += gnome-shell SUBDIR += gnome-shell-extensions diff --git a/x11/gnome-pie/Makefile b/x11/gnome-pie/Makefile new file mode 100644 index 000000000000..7d7003411103 --- /dev/null +++ b/x11/gnome-pie/Makefile @@ -0,0 +1,57 @@ +# Created by: Nicola Vitale +# $FreeBSD$ + +PORTNAME= gnome-pie +PORTVERSION= 0.5.7 +PORTREVISION= 0 +CATEGORIES= x11 + +MAINTAINER= nivit@FreeBSD.org +COMMENT= Circular application launcher + +LICENSE= GPLv3 + +BUILD_DEPENDS= valac:${PORTSDIR}/lang/vala +RUN_DEPENDS= gnome-settings-daemon>=2.32.1_4:${PORTSDIR}/sysutils/gnome-settings-daemon +LIB_DEPENDS= libbamf3.so:${PORTSDIR}/sysutils/bamf \ + libgee-0.8.so:${PORTSDIR}/devel/libgee \ + libunique-1.0.so:${PORTSDIR}/x11-toolkits/unique + +DOCS_CMAKE_ON= -DINSTALL_DOCS:BOOL=ON + +GH_ACCOUNT= Simmesimme +GH_COMMIT= 6ee3a64 +GH_PROJECT= Gnome-Pie +GH_TAGNAME= v${PORTVERSION} + +INSTALLS_ICONS= yes + +MANPAGES_CMAKE_OFF= -DNO_INSTALL_MANPAGES:BOOL=ON + +NLS_CMAKE_OFF= -DINSTALL_NLS:BOOL=OFF +NLS_CMAKE_ON= -DINSTALL_NLS:BOOL=ON +NLS_USES= gettext + +OPTIONS_DEFAULT= MANPAGES +OPTIONS_DEFINE= DOCS MANPAGES NLS +OPTIONS_SUB= yes + +PLIST_SUB= DESKTOPDIR=${DESKTOPDIR} + +REINPLACE_ARGS= -e 's,%%DATADIR%%,${DATADIR},1' \ + -e 's,%%DESKTOPDIR%%,${DESKTOPDIR},1' \ + -e 's,%%PREFIX%%,${PREFIX},1' -i.bak \ + -e '/has_resize_grip/d' -i '' + +USES= cmake pkgconfig +USE_GITHUB= yes +USE_GNOME= cairo gconf2 gnomemenus3 gtk30 librsvg2 libwnck3 +USE_XORG= xtst + +post-patch: + ${REINPLACE_CMD} ${WRKSRC}/src/actions/actionRegistry.vala \ + ${WRKSRC}/src/gui/indicator.vala \ + ${WRKSRC}/src/utilities/paths.vala \ + ${WRKSRC}/resources/ui/*.ui + +.include diff --git a/x11/gnome-pie/distinfo b/x11/gnome-pie/distinfo new file mode 100644 index 000000000000..08a9da5b1696 --- /dev/null +++ b/x11/gnome-pie/distinfo @@ -0,0 +1,2 @@ +SHA256 (gnome-pie-0.5.7.tar.gz) = 95a178c959ce8c53764f1feacb045b264ca2a9d7aff5016559fb0975909ab0b4 +SIZE (gnome-pie-0.5.7.tar.gz) = 224405 diff --git a/x11/gnome-pie/files/patch-resources__gnome-pie.desktop b/x11/gnome-pie/files/patch-resources__gnome-pie.desktop new file mode 100644 index 000000000000..09394a3fa129 --- /dev/null +++ b/x11/gnome-pie/files/patch-resources__gnome-pie.desktop @@ -0,0 +1,9 @@ +--- resources/gnome-pie.desktop.orig 2015-01-23 11:49:05 UTC ++++ resources/gnome-pie.desktop +@@ -4,5 +4,5 @@ Name=Gnome-Pie + Comment=Cakes don't lie. + Exec=gnome-pie + Icon=gnome-pie +-Categories=GNOME;Utility; ++Categories=GTK;GNOME;Utility; + Keywords=Utility;Menu; diff --git a/x11/gnome-pie/files/patch-src__CMakeLists.txt b/x11/gnome-pie/files/patch-src__CMakeLists.txt new file mode 100644 index 000000000000..abdeb06fd5a5 --- /dev/null +++ b/x11/gnome-pie/files/patch-src__CMakeLists.txt @@ -0,0 +1,43 @@ +--- src/CMakeLists.txt.orig 2015-01-23 11:49:05 UTC ++++ src/CMakeLists.txt +@@ -39,6 +39,7 @@ install( + ${CMAKE_INSTALL_PREFIX}/bin + ) + ++if (INSTALL_DOCS) + # install credits + install( + FILES +@@ -46,7 +47,9 @@ install( + DESTINATION + ${CMAKE_INSTALL_PREFIX}/share/doc/gnome-pie + ) ++endif() + ++if (INSTALL_NLS) + # install locales + install( + DIRECTORY +@@ -57,6 +60,7 @@ install( + PATTERN *.pot EXCLUDE + PATTERN *.sh EXCLUDE + ) ++endif() + + # install themes + install( +@@ -91,11 +95,12 @@ install( + ${CMAKE_INSTALL_PREFIX}/share/applications + ) + ++if (NOT NO_INSTALL_MANPAGES) + # install manpage + install( + FILES + ${CMAKE_SOURCE_DIR}/resources/gnome-pie.1 + DESTINATION +- ${CMAKE_INSTALL_PREFIX}/share/man/man1 ++ ${CMAKE_INSTALL_PREFIX}/man/man1 + ) +- ++endif() diff --git a/x11/gnome-pie/files/patch-src__actions__actionRegistry.vala b/x11/gnome-pie/files/patch-src__actions__actionRegistry.vala new file mode 100644 index 000000000000..1485eafb5edf --- /dev/null +++ b/x11/gnome-pie/files/patch-src__actions__actionRegistry.vala @@ -0,0 +1,11 @@ +--- src/actions/actionRegistry.vala.orig 2015-01-23 11:49:05 UTC ++++ src/actions/actionRegistry.vala +@@ -108,7 +108,7 @@ public class ActionRegistry : GLib.Objec + case "application": + var file_name = uri.split("//")[1]; + +- var desktop_file = GLib.File.new_for_path("/usr/share/applications/" + file_name); ++ var desktop_file = GLib.File.new_for_path("%%DATADIR%%/applications/" + file_name); + if (desktop_file.query_exists()) + return new_for_desktop_file(desktop_file.get_path()); + diff --git a/x11/gnome-pie/files/patch-src__gui__indicator.vala b/x11/gnome-pie/files/patch-src__gui__indicator.vala new file mode 100644 index 000000000000..887d6710c99b --- /dev/null +++ b/x11/gnome-pie/files/patch-src__gui__indicator.vala @@ -0,0 +1,23 @@ +--- src/gui/indicator.vala.orig 2015-01-23 11:49:05 UTC ++++ src/gui/indicator.vala +@@ -79,7 +79,7 @@ public class Indicator : GLib.Object { + string path = ""; + + try { +- path = GLib.Path.get_dirname(GLib.FileUtils.read_link("/proc/self/exe"))+"/resources"; ++ path = "%%DATADIR%%/resources"; + } catch (GLib.FileError e) { + warning("Failed to get path of executable!"); + } +@@ -90,10 +90,7 @@ public class Indicator : GLib.Object { + #else + this.indicator = new Gtk.StatusIcon(); + try { +- var file = GLib.File.new_for_path(GLib.Path.build_filename( +- GLib.Path.get_dirname(GLib.FileUtils.read_link("/proc/self/exe"))+"/resources", +- icon + ".svg" +- )); ++ var file = GLib.File.new_for_path(GLib.Path.build_filename("%%DATADIR%%/resources", icon + ".svg")); + + if (!file.query_exists()) + this.indicator.set_from_icon_name(icon); diff --git a/x11/gnome-pie/files/patch-src__gui__themeList.vala b/x11/gnome-pie/files/patch-src__gui__themeList.vala new file mode 100644 index 000000000000..2d83d49ceafb --- /dev/null +++ b/x11/gnome-pie/files/patch-src__gui__themeList.vala @@ -0,0 +1,11 @@ +--- src/gui/themeList.vala.orig 2015-01-23 11:49:05 UTC ++++ src/gui/themeList.vala +@@ -81,7 +81,7 @@ class ThemeList : Gtk.TreeView { + + this.on_select_new(); + +- Config.global.theme.load(); ++ //Config.global.theme.load(); + Config.global.theme.load_images(); + return false; + }); diff --git a/x11/gnome-pie/files/patch-src__utilities__bindingManager.vala b/x11/gnome-pie/files/patch-src__utilities__bindingManager.vala new file mode 100644 index 000000000000..8c37885e90f5 --- /dev/null +++ b/x11/gnome-pie/files/patch-src__utilities__bindingManager.vala @@ -0,0 +1,19 @@ +--- src/utilities/bindingManager.vala.orig 2015-01-23 11:49:05 UTC ++++ src/utilities/bindingManager.vala +@@ -228,12 +228,12 @@ public class BindingManager : GLib.Objec + + private Gdk.FilterReturn event_filter(Gdk.XEvent gdk_xevent, Gdk.Event gdk_event) { + +- #if VALA_0_16 || VALA_0_17 +- X.Event* xevent = (X.Event*) gdk_xevent; +- #else ++ //#if VALA_0_16 || VALA_0_17 ++ // X.Event* xevent = (X.Event*) gdk_xevent; ++ //#else + void* pointer = &gdk_xevent; + X.Event* xevent = (X.Event*) pointer; +- #endif ++ //#endif + + if(xevent->type == X.EventType.KeyPress) { + foreach(var binding in bindings) { diff --git a/x11/gnome-pie/files/patch-src__utilities__paths.vala b/x11/gnome-pie/files/patch-src__utilities__paths.vala new file mode 100644 index 000000000000..c287e7cb1e2e --- /dev/null +++ b/x11/gnome-pie/files/patch-src__utilities__paths.vala @@ -0,0 +1,63 @@ +--- src/utilities/paths.vala.orig 2015-02-10 20:42:17 UTC ++++ src/utilities/paths.vala +@@ -71,21 +71,21 @@ public class Paths : GLib.Object { + /// usually /usr/share/gnome-pie/themes. + ///////////////////////////////////////////////////////////////////// + +- public static string global_themes { get; private set; default=""; } ++ public static string global_themes { get; private set; default="%%DATADIR%%/themes"; } + + ///////////////////////////////////////////////////////////////////// + /// The directory containing locale files + /// usually /usr/share/locale. + ///////////////////////////////////////////////////////////////////// + +- public static string locales { get; private set; default=""; } ++ public static string locales { get; private set; default="%%PREFIX%%/share/locale"; } + + ///////////////////////////////////////////////////////////////////// + /// The directory containing UI declaration files + /// usually /usr/share/gnome-pie/ui/. + ///////////////////////////////////////////////////////////////////// + +- public static string ui_files { get; private set; default=""; } ++ public static string ui_files { get; private set; default="%%DATADIR%%/ui"; } + + ///////////////////////////////////////////////////////////////////// + /// The autostart file of gnome-pie_config +@@ -115,7 +115,7 @@ public class Paths : GLib.Object { + + // get path of executable + try { +- executable = GLib.File.new_for_path(GLib.FileUtils.read_link("/proc/self/exe")).get_path(); ++ executable = GLib.File.new_for_path("%%PREFIX%%/bin/gnome-pie").get_path(); + } catch (GLib.FileError e) { + warning("Failed to get path of executable!"); + } +@@ -128,12 +128,12 @@ public class Paths : GLib.Object { + Gtk.IconTheme.get_default().append_search_path(path); + } + +- Gtk.IconTheme.get_default().append_search_path("/usr/share/pixmaps/"); ++ Gtk.IconTheme.get_default().append_search_path("%%LOCALBASE%%/share/pixmaps/"); + + // get global paths + var default_dir = GLib.File.new_for_path("/usr/share/gnome-pie/"); + if(!default_dir.query_exists()) { +- default_dir = GLib.File.new_for_path("/usr/local/share/gnome-pie/"); ++ default_dir = GLib.File.new_for_path("%%DATADIR%%/"); + + if(!default_dir.query_exists()) { + default_dir = GLib.File.new_for_path(GLib.Path.get_dirname( +@@ -149,9 +149,9 @@ public class Paths : GLib.Object { + if(locale_dir.query_exists()) { + locale_dir = GLib.File.new_for_path("/usr/share/locale"); + } else { +- locale_dir = GLib.File.new_for_path("/usr/local/share/locale/de/LC_MESSAGES/gnomepie.mo"); ++ locale_dir = GLib.File.new_for_path("%%LOCALBASE%%/share/locale/de/LC_MESSAGES/gnomepie.mo"); + if(locale_dir.query_exists()) { +- locale_dir = GLib.File.new_for_path("/usr/local/share/locale"); ++ locale_dir = GLib.File.new_for_path("%%LOCALBASE%%/share/locale"); + } else { + locale_dir = GLib.File.new_for_path(GLib.Path.get_dirname( + executable)).get_child("resources/locale/de/LC_MESSAGES/gnomepie.mo"); diff --git a/x11/gnome-pie/files/pkg-message.in b/x11/gnome-pie/files/pkg-message.in new file mode 100644 index 000000000000..1fdd40519836 --- /dev/null +++ b/x11/gnome-pie/files/pkg-message.in @@ -0,0 +1,10 @@ +*************************************************************** + +If you do not see any pie, create keyboard shortcuts manually +binding commands such as: + + gnome-pie -o ID + +(Open Preferences to take the value of the pie ID) + +*************************************************************** diff --git a/x11/gnome-pie/pkg-descr b/x11/gnome-pie/pkg-descr new file mode 100644 index 000000000000..d463c9bf98df --- /dev/null +++ b/x11/gnome-pie/pkg-descr @@ -0,0 +1,6 @@ +Gnome-Pie is a circular application launcher. It is made of several pies, +each consisting of multiple slices. The user presses a key stroke which +opens the desired pie. By activating one of its slices, applications may +be launched, key presses may be simulated or files can be opened. + +WWW: http://simmesimme.github.io/gnome-pie.html diff --git a/x11/gnome-pie/pkg-plist b/x11/gnome-pie/pkg-plist new file mode 100644 index 000000000000..9f722bfa969e --- /dev/null +++ b/x11/gnome-pie/pkg-plist @@ -0,0 +1,85 @@ +bin/gnome-pie +%%MANPAGES%%man/man1/gnome-pie.1.gz +%%DESKTOPDIR%%/gnome-pie.desktop +%%PORTDOCS%%%%DOCSDIR%%/README.md +%%DATADIR%%/themes/adwaita/arrow.svg +%%DATADIR%%/themes/adwaita/caption_mask.svg +%%DATADIR%%/themes/adwaita/icon_active.svg +%%DATADIR%%/themes/adwaita/icon_inactive.svg +%%DATADIR%%/themes/adwaita/preview.png +%%DATADIR%%/themes/adwaita/ring.svg +%%DATADIR%%/themes/adwaita/theme.xml +%%DATADIR%%/themes/bright/arrow.svg +%%DATADIR%%/themes/bright/caption.svg +%%DATADIR%%/themes/bright/caption_mask.svg +%%DATADIR%%/themes/bright/gloss.svg +%%DATADIR%%/themes/bright/icon_active.svg +%%DATADIR%%/themes/bright/icon_inactive.svg +%%DATADIR%%/themes/bright/preview.png +%%DATADIR%%/themes/bright/ring.svg +%%DATADIR%%/themes/bright/theme.xml +%%DATADIR%%/themes/elementary/icon_bg.svg +%%DATADIR%%/themes/elementary/preview.png +%%DATADIR%%/themes/elementary/ring.svg +%%DATADIR%%/themes/elementary/slice_caption.svg +%%DATADIR%%/themes/elementary/theme.xml +%%DATADIR%%/themes/funky/bg.svg +%%DATADIR%%/themes/funky/blue.svg +%%DATADIR%%/themes/funky/caption.svg +%%DATADIR%%/themes/funky/icon_bg.svg +%%DATADIR%%/themes/funky/icon_fg.svg +%%DATADIR%%/themes/funky/preview.png +%%DATADIR%%/themes/funky/red.svg +%%DATADIR%%/themes/funky/slice_caption.svg +%%DATADIR%%/themes/funky/star.svg +%%DATADIR%%/themes/funky/theme.xml +%%DATADIR%%/themes/gloss/arrow.svg +%%DATADIR%%/themes/gloss/glow_bg.svg +%%DATADIR%%/themes/gloss/icon_bg.svg +%%DATADIR%%/themes/gloss/icon_fg.svg +%%DATADIR%%/themes/gloss/icon_fg_active.svg +%%DATADIR%%/themes/gloss/icon_mask.svg +%%DATADIR%%/themes/gloss/preview.png +%%DATADIR%%/themes/gloss/slice_caption.svg +%%DATADIR%%/themes/gloss/theme.xml +%%DATADIR%%/themes/minimalistic_text/bg.svg +%%DATADIR%%/themes/minimalistic_text/fg.svg +%%DATADIR%%/themes/minimalistic_text/preview.png +%%DATADIR%%/themes/minimalistic_text/theme.xml +%%DATADIR%%/themes/o-pie/arrow.svg +%%DATADIR%%/themes/o-pie/caption1.svg +%%DATADIR%%/themes/o-pie/caption2.svg +%%DATADIR%%/themes/o-pie/preview.png +%%DATADIR%%/themes/o-pie/ring.svg +%%DATADIR%%/themes/o-pie/theme.xml +%%DATADIR%%/themes/slim/bg.svg +%%DATADIR%%/themes/slim/dot.svg +%%DATADIR%%/themes/slim/preview.png +%%DATADIR%%/themes/slim/slice_caption.svg +%%DATADIR%%/themes/slim/theme.xml +%%DATADIR%%/themes/unity/arrow.svg +%%DATADIR%%/themes/unity/caption.svg +%%DATADIR%%/themes/unity/caption_mask.svg +%%DATADIR%%/themes/unity/gloss.svg +%%DATADIR%%/themes/unity/icon_active.svg +%%DATADIR%%/themes/unity/icon_inactive.svg +%%DATADIR%%/themes/unity/preview.png +%%DATADIR%%/themes/unity/ring.svg +%%DATADIR%%/themes/unity/theme.xml +%%DATADIR%%/ui/icon_select.ui +%%DATADIR%%/ui/preferences.ui +%%DATADIR%%/ui/rename_pie.ui +%%DATADIR%%/ui/settings.ui +%%DATADIR%%/ui/slice_select.ui +%%DATADIR%%/ui/trigger_select.ui +share/icons/hicolor/scalable/apps/gnome-pie-symbolic.svg +share/icons/hicolor/scalable/apps/gnome-pie.svg +%%NLS%%share/locale/bg/LC_MESSAGES/gnomepie.mo +%%NLS%%share/locale/de/LC_MESSAGES/gnomepie.mo +%%NLS%%share/locale/es/LC_MESSAGES/gnomepie.mo +%%NLS%%share/locale/fr/LC_MESSAGES/gnomepie.mo +%%NLS%%share/locale/it/LC_MESSAGES/gnomepie.mo +%%NLS%%share/locale/ko/LC_MESSAGES/gnomepie.mo +%%NLS%%share/locale/pt_BR/LC_MESSAGES/gnomepie.mo +%%NLS%%share/locale/ru/LC_MESSAGES/gnomepie.mo +%%NLS%%share/locale/zh_CN/LC_MESSAGES/gnomepie.mo