Nombres de aplicaciones desde la perspectiva de Ubuntu

Nombres de aplicaciones desde la perspectiva de Ubuntu

Me preguntaba cómo Ubuntu puede averiguar el nombre correcto de una aplicación. Por ejemplo, cuando selecciona Open with -> Other applicationen el menú contextual, se le presenta esta lista.

lista de aplicaciones

¿Cómo le enseña un desarrollador a Ubuntu el nombre de su aplicación y cómo puede otro desarrollador recuperar el nombre de una aplicación del sistema? No necesito código real, sino que solo me interesa el lado conceptual de las cosas.

Respuesta1

Esto se especifica en la solicitudarchivo de entrada de escritorio. Los archivos de entrada del escritorio son lanzadores de la aplicación (el mismo formato de archivo que los lanzadores que puede crear en su escritorio) que también contienen varios metadatos. Cuando se instala una aplicación, estos archivos de entrada del escritorio se colocan en /usr/share/applications y creo que su contenido también se almacena en caché para mejorar la velocidad.

El dato importante definido aquí es la lista de tipos MIME que la aplicación puede abrir. Esto se define en la clave 'MimeType' en el archivo de entrada del escritorio. Por ejemplo, GIMP tiene lo siguiente en su entrada de escritorio:

MimeType=application/postscript;application/pdf;image/bmp;image/g3fax;image/gif;image/x-fits;image/pcx;image/x-portable-anymap;image/x-portable-bitmap;image/x-portable-graymap;image/x-portable-pixmap;image/x-psd;image/x-sgi;image/x-tga;image/x-xbitmap;image/x-xwindowdump;image/x-xcf;image/x-compressed-xcf;image/tiff;image/jpeg;image/x-psp;image/png;image/x-icon;image/x-xpixmap;image/svg+xml;image/x-wmf;

Esto especifica una lista de tipos de archivos que GIMP puede abrir.

El nombre de la aplicación se especifica con la tecla 'Nombre', por ejemplo.

Name=GIMP Image Editor

Como puede ver, hay iconos al lado de los nombres. Estos también se especifican en el archivo de entrada del escritorio como un nombre de icono (para el cual se busca el archivo correcto en el tema de iconos) o una ruta de archivo de iconos. GIMP tiene lo siguiente:

Icon=gimp

En el cuadro de diálogo 'Abrir con -> Otra aplicación', las Aplicaciones recomendadas son las aplicaciones que especifican que pueden abrir el tipo de archivo y las Otras aplicaciones son aquellas que no.

Cuando haya elegido la aplicación, el administrador de archivos busca cómo ejecutar la aplicación para abrir los archivos. Busca la tecla 'Exec' en la entrada del escritorio. GIMP tiene la siguiente clave ejecutiva:

Exec=gimp-2.6 %U

Esto significa que el comando:

gimp-2.6 %U

se ejecutará para abrir los archivos y %Use reemplazará con una lista de URL (normalmente file:// urls) que representan los archivos que se han seleccionado para abrir. Además de '%U', la aplicación puede usar '%u' para una única URL o '%f'/'%F' para una o varias rutas de archivo.

Respuesta2

Eso es bastante fácil. Hay archivos .desktop que contienen esta información:

[Desktop Entry]
Name=Image Viewer
Comment=Browse and rotate images
Exec=eog %U
Type=Application
Categories=GNOME;GTK;Graphics;RasterGraphics;Viewer;
MimeType=image/bmp;image/gif;image/jpeg;image/jpg;image/pjpeg;image/png;image/tiff;image/x-bmp;image/x-gray;image/x-icb;image/x-ico;image/x-png;image/x-portable-anymap;image/x-portable-bitmap;image/x-portable-graymap;image/x-portable-pixmap;image/x-xbitmap;image/x-xpixmap;image/x-pcx;image/svg+xml;image/svg+xml-compressed;image/vnd.wap.wbmp;

Puedes verlos en /usr/share/applications

información relacionada