[HowTo] Install GNOME-PIE for beautifully funky and efficient menus

Difficulty: ★★☆☆☆

Preface

Want to be even lazier with a mouse? Wish to impress your friends with fancy, obtuse things? Do you believe use of your system should be an artform? There’s a software which fulfills all of the above and then some known as GNOME Pie.

Utilizing Fitts’ Law which — in brief — explains scientifically why GUIs with shorter travel distance for cursor devices are preferred, and incorporating multiple functions into the same space, the general idea of this software is to not only enable faster menu navigation for less able persons who cannot use a keyboard as well, but also keep within reach at a defined location a multitude of functions within a defined space to minimize mouse travel.

Features

Hidden for convenience. Expand to read!

Directory bookmarks

Any directory bookmarks it finds will show up here for one-click convenience without the need to invoke your file manager, or to open preferred directories saved as bookmarks with less clicks.

Clipboard

Who needs a separate clipboard manager when GNOME Pie can save your last 24 entries? For people who deal with text a whole bunch this can be used for canned responses on-demand or a repository of the last things you captured from anywhere on your computer and abroad.

Devices

Any attached media and partitions avaiilableto the system will show up here. Similar to bookmarks, you can have any media attached to your machine accessible from here.

Main Menu

Seeks /etc/xdg/menus/applications.menu or link to gnome-appplications.menu.

Every application accessible from menus configurable through alacarte or mozo can be accessed through here. Enabling slice labels can make navigating this menu much easier.

Session control

May not work on all desktops.

Power off, reboot or sign out of current session. If this doesn’t work then a custom menu can be created with these functions as defined by desktop shell or using systemctl.

Window list

…But can your window list do this?! See and access all tasks the pager displays. To change workspace you must use window decoration for that. which shouldn’t be a big deal for many.

Launch appplication

Custom shortcuts, just like you’d have for your desktop.

Open Pie

Pie flavour! Open another of the available groups and custom pies without custom launchers.

Open URI

Open pages in browser and file:/// locations on local filesystem.

Press hotkey

Great for people with poor dexterity, common hotkeys can be assigned here for user convenience.

For the Window pie, examples with window control features are included.

Clock

Certain themes have a clock feature included. The centre of the pie acts as a timepiece for people who would also not want to use their system clock, though no calendar feature exists.

Installation

To use, the base application and an unlisted dependency needs to be installed. While there are other things which could be discussed; such as hot corners, gestures and custom launchers, due to the depth of such topics (and to save me a bunch of effort) this will not be covered with any degree of depth — Later on, methods of invocation will be explained to incorporate into your own solutions.

Optionally, a utility for generating PNG or SVG files should also be acquired for generating images to use with custom themes, which may be desired considering the default themes have little to offer for aesthetic and functionality — Bare minimum for examples, but they are serviceable enough to create spins and scratch-made themes using provided examples.

To install and execute GNOME Pie, the following actions can be performed.

:heavy_dollar_sign: In xdg-terminal or preferred emulator:

sudo pacman -S gnome-pie
cd /etc/xdg/menus
sudo ln -s $PWD/gnome-applications.menu $PWD/applications.menu
gnome-pie &

:open_book: For readability, the cd command was included byt you could use full paths for ln and it would work just as well, so use of $PWD (present working directory) isn’t necessary.

Invocation

GNOME Pie assigns a random identification code for each menu made. To see this code, open its settings (which can be done by invoking gnome-pie once more) and see properties for each pie you wish to bind with a launcher.:keyboard: The ID might be difficult to see depending on theme, but it’s there, and it’s what you need to bind anything which can invoke a task to open any pie.

For example, an instance of main menu might have an ID of 850. (Again, randomly-assigned number so check that pie!) Using this information, the pie can be executed by command as follows.

:gear: In application launcher::

gnome-pie -o 850

This will execute whatever pie (in this case, Main Menu) by opening pie ID 850. Knowing this, the command can be incorporated in a multitude of applications for the purpose of opening this pie.

:keyboard: Super_L and Super_R are not options you can use. But if you are willing to install ksuperkey you can have it (or any modifier key) invoke any menu with either of those keys.

To install,

:heavy_dollar_sign: In xdg-terminal or preferred emulator:

pamac build ksuperkey

Execute ksuperkey --help to learn how this utility is used.

Efficacy

If you wish to check it out, depending on needs it may be barely functional initially. As with all things personal, a lot of labour and effort needs to be exerted by an end-user to create a menu system which could be a suitable replacement or supplement to traditional features, and it may not be ideal to completely convert your workflow so it prioritizes Fitts’ law of GUI interaction. That, and with enough icons GNOME Pie may cause system lag due to the multitude of icons on much older hardware.

Knowing GNOME Pie’s weaknesses — most which is symptomatic of having no context menu support for any pie — accommodations to incorporate this interface feature can help creatively purpose a beautiful menu solution so the application can show its best strengths as a fun, fast and pleasant-to-use navigation cluster for the disabled and artistic among us.

2 Likes