7.2. Añadir un tipo MIME personalizado para todos los usuarios

Debe crear un nuevo archivo de especificación de tipo MIME en el directorio /usr/share/mime/packages/ y un archivo .desktop en el directorio /usr/share/applications/ para añadir un tipo MIME personalizado para todos los usuarios del sistema y registrar una aplicación por defecto para ese tipo MIME.

Procedimiento

  1. Cree el archivo /usr/share/mime/packages/application-x-newtype.xml con el siguiente contenido:

    <?xml version="1.0" encoding="UTF-8"?>
    
    <mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
      <mime-type type="application/x-newtype">
        <comment>new mime type</comment>
        <glob pattern="*.xyz"/>
      </mime-type>
    </mime-info>

    El archivo de ejemplo application-x-newtype.xml define aquí un nuevo tipo MIME application/x-newtype y asigna nombres de archivo con la extensión .xyz a ese tipo MIME.

  2. Cree un nuevo archivo .desktop llamado, por ejemplo, myapplication1.desktop en el /usr/share/applications/ con el siguiente contenido:

    [Desktop Entry]
    Type=Application
    MimeType=application/x-newtype
    Name=My Application 1
    Exec=myapplication1

    El archivo de ejemplo myapplication1.desktop asocia el tipo MIME application/x-newtype con una aplicación llamada My Application 1. Se ejecuta mediante un comando myapplication1.

  3. Como usuario root, actualice la base de datos MIME para que los cambios surtan efecto.

    # update-mime-database /usr/share/mime
  4. Como usuario root, actualice la base de datos de la aplicación.

    # update-desktop-database /usr/share/applications

Pasos de verificación

  1. Para comprobar que ha asociado correctamente los archivos *.xyz con el tipo MIME application/x-newtype, cree primero un archivo vacío, por ejemplo test.xyz y ejecute los siguientes comandos:

    $ touch test.xyz
    
    $ gvfs-info test.xyz | grep "standard::content-type"
      standard::content-type: application/x-newtype
  2. Para verificar que myapplication1.desktop está correctamente configurado como la aplicación registrada por defecto para el tipo MIME application/x-newtype, ejecute el siguiente comando:

    $ gio mime --query application/x-newtype
    Default application for 'application/x-newtype': myapplication1.desktop
    Registered applications:
    	myapplication1.desktop
    Recommended applications:
    	myapplication1.desktop