Gnome Applications Folders

From Gentoo Wiki
Jump to: navigation, search

GNOME Configure your applications folders Applications folders are the GNOME the containers for applications.

Introduction

By default in Gentoo there is no application folder and all applications are either showing in a single container without further organization than being presented in alphabetic order, either they are elected as favorites and are showing in the dash (left-side bar).

This is unsatisfactory for most people since as the number of applications is growing it becomes always harder and tedious to find out the application you want to lauch. Hence, the solution is to organize the applications by subsets similar to the submenus in previous major version of Gnome or the Applications menu you can get using shell extensions.

Our goal is to present you how you can customize your desktop and organize your applications without using the shell extensions and menus.

Gsettings and desktop schemas

Your desktop is controlled by a set of XML files and schemas. You can use the dconf application to configure partly your applications, however for full customization the command line gsettings command is recommended.

First of all, to add containers for applications, which are actually called folders, you will need to edit the key org.gnome.desktop.app-folders. You can access this key and update the value through dconf by following the specified schema, org.gnome.desktop.app-folders namely. The value is a list of strings between square brackets and separated by a comma. Here is how to add the folders Office, SysAdmin and Internet after checking the list is actually empty.

user $gsettings get org.gnome.desktop.app-folders folder-children

It should return and empty square brackets list. If not, you may wish to add the content of this list to your new list in the following commands instead of replacing it.

To add the folders, proceed as follow:

user $gsettings set org.gnome.desktop.app-folders folder-children "['Office', 'SysAdmin', 'Internet']"

This will create the three new applications folders empty and without a name to display. They will show as empty tiles when pressing the super key and clicking on the Applications tile in the dash (left side bar).

Now, you need to give the folders a name to display on the desktop. There is two ways to do it: you can set the name to the actual name you want to display or you can set the name to a file which contains the name and translations in supported languages you want to assign to the folder.

The first alternative is straight forward, for example, for the SysAdmin folder you can proceed as follow:

user $gsettings set org.gnome.desktop.app-folders.folder:/org/gnome/desktop/app-folders/folders/SysAdmin/ name "System tools"

However, if you have to support a system with multiple languages you may prefer to do it as follow:

user $gsettings set org.gnome.desktop.app-folders.folder:/org/gnome/desktop/app-folders/folders/SysAdmin/ name "System-Tools.directory"

Then,

user $gsettings set org.gnome.desktop.app-folders.folder:/org/gnome/desktop/app-folders/folders/SysAdmin/ translate true

The value in the first command (System-Tools.directory) must be an existing file which can be found either in the /usr/share/desktop-directories directory, either in $HOME/.local/share/desktop-directories directory with the following format:

FILE /usr/share/desktop-directories/System-Tools.directorySample file content
[Desktop Entry]
Name=System Tools
Name[fr]=Outils système
Comment=System configuration and monitoring
Comment[fr]=Configuration et surveillance système
Icon=applications-system
Type=Directory

The format is the Free desktop XDG format as documented here.

The second command informs Gnome 3 the value is not a fixed string value and it is rather than a file with translations.

Adding content to applications folders

To add content to your newly created folders you have two options:

  1. Select by categories which applications you want to add
  2. Select individually each application you want to add

By categories

To select by categories you simply change the value of the categories key to a list of applications. The categories' names are those specified in the stanza Categories in the XDG desktop definition files. You can look at these as well as the list of available applications in directories: /usr/share/applications and $HOME/.local/share/applications.

Then, suppose we want to add all the applications in the identified category Office and those in the category Publishing in the Office folder you proceed as follow:

user $gsettings set org.gnome.desktop.app-folders.folder:/org/gnome/desktop/app-folders/folders/Office/ categories "['Office', 'Publishing']"

Individually

To select by the application name you use the XDG desktop definition file name. For example, suppose we want to add the applications gnumeric, evolution and gnome-contacts to our folder Office we issue the following command given the files: gnumeric.desktop, evolution.desktop and gnome-contacts.desktop exists in one of the valid directories:

user $gsettings set org.gnome.desktop.app-folders.folder:/org/gnome/desktop/app-folders/folders/Office/ apps "['gnumeric.desktop', 'evolution.desktop', 'gnome-contacts.desktop']"

Exclusions

What if you want almost all applications in one or more categories except few of them? You can simply specify an exclusion list using the key excluded-apps. For example, suppose we want to exclude Acrobat Reader from the Office folder:

user $gsettings set org.gnome.desktop.app-folders.folder:/org/gnome/desktop/app-folders/folders/Office/ excluded-apps "['AdobeReader.desktop']"

Inclusions

Using both the individual and by categories selection, you can add individually applications to a set of categories in a folder.

Tile icon

The tile icon will update itself using a smaller version of the icons for the applications in the given folder. There is nothing you need to do for that to happen. It may take a while however before the tile get updated.