Este conteúdo não está disponível no idioma selecionado.
Chapter 12. Integrating Applications
When integrating an application with the GNOME Desktop, the system administrator usually performs tasks related to customizing the Applications menu structure, and MIME types, such as:
- Add or modify a menu item for the application, or customize the Applications menu structure by creating or modifying submenus. See Section 12.1, “Customizing Menus” for more information on menu customization.
- Customize the default favorite applications visible on the GNOME Shell dash in the
Activities Overview. See Section 12.2, “Customizing Default Favorite Applications” for more information on how to do that. - Add or modify a MIME type for the application, and associate the application with a specific MIME type. See Section 12.3, “Configuring File Associations” for more information on configuring MIME types.
12.1. Customizing Menus Copiar o linkLink copiado para a área de transferência!
Copiar o linkLink copiado para a área de transferência!
The GNOME menu system is based on the freedesktop.org Desktop Menu Specification and consists of three major sets of configuration and data files:
- Desktop Entry Files (
.desktop) - The
.desktopfiles provide data about each menu item such as its name, command to run, and its icon. The.desktopentry files also specify the location of the menu item in the menu hierarchy, and keywords used for application search in theActivities Overview.The system.desktopfiles are located in the/usr/share/applications/directory. User-specific.desktopfiles are located in the~/.local/share/applications/directory.The following is a sample.desktopfile named~/.local/share/applications/myapplication1.desktop:[Desktop Entry] Type=Application Name=My Application 1 Icon=myapplication1 Exec=myapplication1 Categories=Network;WebBrowser; MimeType=application/x-newtype
[Desktop Entry] Type=Application Name=My Application 1 Icon=myapplication1 Exec=myapplication1 Categories=Network;WebBrowser; MimeType=application/x-newtypeCopy to Clipboard Copied! Toggle word wrap Toggle overflow The file above specifies the application's name (My Application 1), the application's icon (myapplication1), and the command to run the application (myapplication1). It also places the application in a specified category (Network;WebBrowser;), and associates the application with theapplication/x-newtypeMIME type. - Menu Definition Files (
.menu) - The
.menufiles are XML configuration files that specify the order, hierarchy, and merging of both menus and menu items.The machine-wide.menufiles are located in the/etc/xdg/menus/directory. User-specific.menufiles are located in the~/.config/menus/directory and can be used to override the values specified in the machine-wide.menufiles.In particular, the/etc/xdg/menus/applications.menufile contains the definition of the Applications menu layout. - Directory Entry Files (
.directory) - The
.directoryfiles provide data about each menu such as its name, and are located in the/usr/share/desktop-directories/.
Getting More Information
For more information describing the Desktop Entry Files, see the Desktop Entry Specification located at the freedesktop.org website:
For detailed information describing the implementation of the GNOME menus system, see the Desktop Menu Specification located at the freedesktop.org website:
12.1.1. Removing a Menu Item for Individual Users Copiar o linkLink copiado para a área de transferência!
Copiar o linkLink copiado para a área de transferência!
The Applications menu customization for a given user is by default stored in the
~/.config/menus/gnome-applications.menu definition file. The location of that file can be overridden by setting the $XDG_DATA_HOME environment variable.
To override the Applications menu defaults, you first need to create a
gnome-applications.menu file. Note that removing an item from the Applications menu and its submenus also removes it from the Applications view in the Activities Overview, thus preventing the user from searching for that item from within the Activities Overview.
Procedure 12.1. Example: Remove the Calculator menu item from the Accessories submenu
- Consult the contents of the
/usr/share/applications/directory and determine a.desktopfile that corresponds to the menu item you want to remove:grep -r "Name=Calculator" /usr/share/applications/
$ grep -r "Name=Calculator" /usr/share/applications/ /usr/share/applications/gcalctool.desktop:Name=CalculatorCopy to Clipboard Copied! Toggle word wrap Toggle overflow As shown above, the Calculator menu item corresponds to the/usr/share/applications/gcalctool.desktopfile. - Create a
~/.config/menus/gnome-applications.menufile:<!DOCTYPE Menu PUBLIC "-//freedesktop//DTD Menu 1.0//EN" "http://www.freedesktop.org/standards/menu-spec/1.0/menu.dtd"> <Menu> <Name>Applications</Name> <MergeFile type="parent">/etc/xdg/menus/gnome-applications.menu</MergeFile> <!-- Removes the Calculator from the Accessories submenu --> <Menu> <Name>Accessories</Name> <Exclude> <Filename>gcalctool.desktop</Filename> </Exclude> </Menu> <!-- END of Calculator removal content --> </Menu><!DOCTYPE Menu PUBLIC "-//freedesktop//DTD Menu 1.0//EN" "http://www.freedesktop.org/standards/menu-spec/1.0/menu.dtd"> <Menu> <Name>Applications</Name> <MergeFile type="parent">/etc/xdg/menus/gnome-applications.menu</MergeFile> <!-- Removes the Calculator from the Accessories submenu --> <Menu> <Name>Accessories</Name> <Exclude> <Filename>gcalctool.desktop</Filename> </Exclude> </Menu> <!-- END of Calculator removal content --> </Menu>Copy to Clipboard Copied! Toggle word wrap Toggle overflow As shown above, the file contains a<Menu>section that specifies the name of the submenu (Accessories), the name of the.desktopfile (gcalctool.desktop), and includes the<Exclude>element.
12.1.2. Removing a Menu Item for All Users Copiar o linkLink copiado para a área de transferência!
Copiar o linkLink copiado para a área de transferência!
The Applications menu customization for all users is by default stored in the
/etc/xdg/menus/applications.menu definition file. The location of that file can be overridden by setting the $XDG_CONFIG_DIRS environment variable.
To override the Applications menu defaults, you need to edit that
.menu file. Note that removing an item from the Applications menu and its submenus also removes it from the Applications view in the Activities Overview, thus preventing the user from searching for that item from within the Activities Overview.
Procedure 12.2. Example: Remove the Calculator menu item from the Accessories submenu
- Consult the contents of the
/usr/share/applications/directory and determine a.desktopfile that corresponds to the menu item you want to remove:grep -r "Name=Calculator" /usr/share/applications/
$ grep -r "Name=Calculator" /usr/share/applications/ /usr/share/applications/gcalctool.desktop:Name=CalculatorCopy to Clipboard Copied! Toggle word wrap Toggle overflow As shown above, the Calculator menu item corresponds to the/usr/share/applications/gcalctool.desktopfile. - Edit the
/etc/xdg/menus/applications.menufile and add a new<Menu>section before the final</Menu>tag at the end of that.menufile using the<Exclude>element as shown below:<!-- Removes the Calculator from the Accessories submenu --> <Menu> <Name>Accessories</Name> <Exclude> <Filename>gcalctool.desktop</Filename> </Exclude> </Menu> <!-- END of Calculator removal content --> </Menu> <!-- End Applications --><!-- Removes the Calculator from the Accessories submenu --> <Menu> <Name>Accessories</Name> <Exclude> <Filename>gcalctool.desktop</Filename> </Exclude> </Menu> <!-- END of Calculator removal content --> </Menu> <!-- End Applications -->Copy to Clipboard Copied! Toggle word wrap Toggle overflow
12.1.3. Removing a Submenu for Individual Users Copiar o linkLink copiado para a área de transferência!
Copiar o linkLink copiado para a área de transferência!
The Applications menu customization for a given user is by default stored in the
~/.config/menus/gnome-applications.menu definition file. The location of that file can be overridden by setting the $XDG_DATA_HOME environment variable.
To override the Applications menu defaults, you first need to create a
gnome-applications.menu file. Note that removing a submenu from the Applications menu also removes all menu items contained within that submenu from the Applications view in the Activities Overview, thus preventing the user from searching for those items from within the Activities Overview.
Example 12.1. Remove the System Tools submenu from the Applications menu
Create a
~/.config/menus/gnome-applications.menu file:
<!DOCTYPE Menu PUBLIC "-//freedesktop//DTD Menu 1.0//EN"
"http://www.freedesktop.org/standards/menu-spec/1.0/menu.dtd">
<Menu>
<Name>Applications</Name>
<MergeFile type="parent">/etc/xdg/menus/gnome-applications.menu</MergeFile>
<!-- Removes the System Tools submenu from the Applications menu-->
<Menu>
<Name>System Tools</Name>
<Deleted/>
</Menu>
<!-- END of System Tools removal content -->
</Menu>
<!DOCTYPE Menu PUBLIC "-//freedesktop//DTD Menu 1.0//EN"
"http://www.freedesktop.org/standards/menu-spec/1.0/menu.dtd">
<Menu>
<Name>Applications</Name>
<MergeFile type="parent">/etc/xdg/menus/gnome-applications.menu</MergeFile>
<!-- Removes the System Tools submenu from the Applications menu-->
<Menu>
<Name>System Tools</Name>
<Deleted/>
</Menu>
<!-- END of System Tools removal content -->
</Menu>
As shown above, the file contains a
<Menu> section that specifies the name of the submenu (System Tools), and includes the <Deleted/> tag.
12.1.4. Removing a Submenu for All Users Copiar o linkLink copiado para a área de transferência!
Copiar o linkLink copiado para a área de transferência!
The Applications menu customization for all users is by default stored in the
/etc/xdg/menus/applications.menu definition file. The location of that file can be overridden by setting the $XDG_CONFIG_DIRS environment variable.
To override the Applications menu defaults, you need to edit that
.menu file. Note that removing a submenu from the Applications menu also removes all menu items contained within that submenu from the Applications view in the Activities Overview, thus preventing the user from searching for those items from within the Activities Overview.
Example 12.2. Remove the System Tools submenu from the Applications menu
Edit a
/etc/xdg/menus/applications.menu file and add a new <Menu> section before the final </Menu> tag at the end of that .menu file using the <Deleted/> element as shown below:
<!-- Removes the System Tools submenu from the Applications menu-->
<Menu>
<Name>System Tools</Name>
<Deleted/>
</Menu>
<!-- END of System Tools removal content -->
</Menu>
<!-- Removes the System Tools submenu from the Applications menu-->
<Menu>
<Name>System Tools</Name>
<Deleted/>
</Menu>
<!-- END of System Tools removal content -->
</Menu>