La documentación integrada de GNOME cubre solo las cosas que cualquiera puede adivinar fácilmente. Tengo una aplicación para la que solo puedo iniciar desde la línea de comandos. No es que me importe usar una terminal pero...
De todos modos, ¿cómo agrego el comando (y preferiblemente un buen logotipo) a GNOME WM?
Respuesta aceptada:
En GNOME y otros entornos de escritorio compatibles con freedesktop.org, como KDE y Unity, las aplicaciones se agregan a los menús del escritorio o al shell del escritorio a través de entradas de escritorio. , definido en archivos de texto con .desktop
extensión (denominados archivos de escritorio ). Los entornos de escritorio construyen menús para un usuario a partir de la información combinada extraída de las entradas de escritorio disponibles.
Los archivos de escritorio se pueden crear en cualquiera de dos lugares:
/usr/share/applications/
para entradas de escritorio disponibles para cada usuario en el sistema~/.local/share/applications/
para entradas de escritorio disponibles para un solo usuario
Es posible que deba reiniciar GNOME para que funcionen las nuevas aplicaciones agregadas.
Por convención, los archivos de escritorio no deben incluir espacios ni caracteres internacionales en su nombre.
Cada archivo de escritorio se divide en grupos , cada uno comenzando con el encabezado del grupo entre corchetes ([]
). Cada sección contiene un número de clave , valor pares, separados por un signo igual (=
).
A continuación se muestra una muestra del archivo de escritorio:
[Desktop Entry]
Type=Application
Encoding=UTF-8
Name=Application Name
Comment=Application description
Icon=/path/to/icon.xpm
Exec=/path/to/application/executable
Terminal=false
Categories=Tags;Describing;Application
Explicación
[Desktop Entry]
laDesktop Entry
el encabezado del grupo identifica el archivo como una entrada de escritorioType
el tipo de entrada, los valores válidos sonApplication
,Link
yDirectory
Encoding
la codificación de caracteres del archivo de escritorioName
el nombre de la aplicación visible en menús o lanzadoresComment
una descripción de la aplicación utilizada en la información sobre herramientasIcon
el icono que se muestra para la aplicación en los menús o lanzadoresExec
el comando que se utiliza para iniciar la aplicación desde un shell.Terminal
si la aplicación debe ejecutarse en una terminal, los valores válidos sontrue
ofalse
Categories
punto y coma (;
) lista separada de categorías de menú en las que se debe mostrar la entrada
Argumentos de línea de comando en Exec
clave se puede representar con las siguientes variables:
%f
un solo nombre de archivo.%F
varios nombres de archivo.%u
una sola URL.%U
varias URL.%d
un solo directorio. Usado junto con%f
para localizar un archivo.%D
múltiples directorios. Usado junto con%F
para localizar archivos.%n
un único nombre de archivo sin ruta.%N
varios nombres de archivo sin rutas.%k
un URI o nombre de archivo local de la ubicación del archivo de escritorio.%v
el nombre de la entrada del dispositivo.
Tenga en cuenta que ~
o variables ambientales como $HOME
no se expanden dentro de los archivos de escritorio, por lo que los ejecutables a los que se hace referencia deben estar en el $PATH
o referenciado a través de su ruta absoluta.
Una Especificación de entrada de escritorio completa está disponible en el Centro de desarrollo de GNOME.
Scripts de lanzamiento
Si la aplicación que se va a iniciar requiere que se realicen ciertos pasos antes de ser invocada, puede crear un script de shell que inicie la aplicación y apuntar la entrada del escritorio al script de shell. Supongamos que una aplicación requiere ejecutarse desde un determinado directorio de trabajo actual. Cree un script de inicio en una ubicación adecuada (~/bin/
por ejemplo). El script podría parecerse a lo siguiente:
#!/bin/bash
pushd "/path/to/application/directory"
./application "[email protected]"
popd
Establezca el bit ejecutable para el script:
$ chmod +x ~/bin/launch-application
Luego apunta el Exec
ingrese la entrada del escritorio para el script de inicio:
Exec=/home/user/bin/launch-application