Creación de menús personalizados en la pestaña del menú Aplicaciones en CentOS7 GNOME

Creación de menús personalizados en la pestaña del menú Aplicaciones en CentOS7 GNOME

Creé un archivo .menu en /etc/xdg/menus/applications-merged/, creé un archivo .directory en /usr/share/desktop-directories/y los diversos archivos .desktop que quiero que estén en mi menú personalizado /usr/share/applicationscon una extensión de Categorías personalizada Categories=X-nameofcategorypero todavía no aparece ningún menú en mi menú de aplicaciones.

Me pregunto si me falta algún paso. No estoy usando alacarte porque hay varias aplicaciones que necesito crear y alacarte es muy manual, tiene que agregar rutas de directorio para cada ícono, es ejecutable y no hay que arrastrar/soltar. método tampoco. Supuse que había una forma estándar de hacer esto y seguí los pasos que describe freedesktop, pero todavía estoy perdido. ¡Cualquier ayuda o vision sería apreciada!

Respuesta1

Nadie parece saberlo o no pudo responder, ¡así que arrojaré la solución que encontré!

Hay 3 ubicaciones que deberían preocuparle:

  • /usr/share/desktop-directories
  • /etc/xdg/menus/applications-merged
  • /usr/share/applications

Tenga en cuenta que la última ubicación es específica de todo el sistema; si la desea solo para su usuario, use:~/.local/share/applications

En primer lugar nosotros:

  1. Cree un archivo llamado APPNAME.menu(sustituyalo APPNAMEcomo quiera llamarlo) en la ubicación de la carpeta/etc/xdg/menus/applications-merged
  2. Introduzca estos contenidos:
<!DOCTYPE Menu PUBLIC "-//freedesktop//DTD Menu 1.0//EN"
        "http://www.freedesktop.org/standards/menu-spec/menu-1.0.dtd">
<Menu>
<Name>Applications</Name> <!-- This is necessary for your directory to appear in the applications drop down -->
<Menu> <!--app -->
<Name>app</Name>
<Directory>APPNAME.directory</Directory>
<Include>
<Category>APPNAME</Category>
</Include>
</Menu> <!-- End app -->
</Menu> <!-- End Applications -->
  1. Guarde el archivo y cree otro archivo llamado APPNAME.directoryen la ubicación de la carpeta (debe tener el mismo nombre especificado en el .menuarchivo) /usr/share/desktop-directoriescon este contenido:
[Desktop Entry]
Type=Directory
Name=AppName
Icon=/path/to/icon`

Notael .directorynombre del archivo debe ser exactamente el mismo que el .directoryque ingresó en el .menuarchivo anterior.

  1. .desktopCree un archivo estándar en ~/.local/share/applicationso /usr/share/applicationscon estos contenidos (sustituyendo por su propio programa, por supuesto, y la Categories=líneaDEBE SERel mismo nombre que le diste al .directoryarchivo anteriormente)
#!/usr/bin/env xdg-open
[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Exec=/path/to/executable.sh
Name=ApplicationToRun
Icon=/path/to/icon
Categories=APPNAME
Comment=Comment for users

información relacionada