Modificar tipos MIME
Nunca debería modificar directamente los archivos fuente XML que están instalados en el directorio <MIME>/packages por las aplicaciones. En su lugar, modifique el archivo Overrides.xml. Este archivo tiene preferencia sobre todos los demás archivos fuente xML instalados en el mismo directorio packages. Si es el autor de una aplicación, entonces no haga caso de esta regla. Debería crear un nuevo archivo fuente XML y emplazarlo en el directorio <MIME>/packages adecuado (su archivo Makefile se encargará de esto).
Puede modificar la base de datos MIME para todos los usuarios del sistema o para un usuario en particular, dependiendo de la ubicación del archivo que cambie. Para modificar la base de datos para todos los usuarios, realice sus cambios sobre el archivo Overrides.xml en el directorio $XDG_DATA_DIRS/mime/packages. Para modificar la base de datos para un solo usuario, realice sus cambios sobre el archivo Overrides.xml en el directorio $XDG_DATA_HOME/mime/packages.
Después de que se realicen los cambios, siempre debe ejecutar la aplicación update-mime-database, con la ubicación del directorio de la base de datos MIME como el primer parámetro.
- 5.4.1. Añadir o modificar tipos MIME
- 5.4.2. Comprobar los cambios
- 5.4.3. Ejemplo de application/x-newtype
5.4.1. Añadir o modificar tipos MIME
Para añadir uno más tipos MIME para todos los usuarios:
- Cree o modifique un archivo fuente XML Overrides.xml que contenga las fefiniciones para los tipos MIME. Para obtener más información, consulte laSección 5.3: Los archivos fuente XML.
- Mueva el archivo Overrides.xml en el directorio /usr/share/mime/packages.
-
Actualice la base de datos MIME ejecutando update-mime-database usando la cuenta del sistema.
update-mime-database /usr/share/mime
Para añadir uno o más tipos MIME para un solo usuario, siga los mismos pasos excepto que debe ubicar su archivo Overrides.xml en el directorio ~/.local/share/mime/packages. Adicionalmente, llame a update-mime-database con ~/.local/share/mime/packages como el primer parámetro.
5.4.2. Comprobar los cambios
Después de que haya realizado un cambio sobre la base de datos MIME y haya actualizado su contenido, puede verificar que el cambio ha tomado efecto usando la aplicación gnomevfs-info. Esta aplicación imprime el tipo MIME y otra información útil acerca de un archivo.
Ejecutar gnomevfs-info sobre un archivo SVG le proporciona la salida de debajo. Notará que la aplicación predeterminada para este tipo MIME es eog.desktop; Se discutirán las aplicaciones predeterminadas en la Sección 5.5: Registrar aplicaciones para tipos MIME.
$ gnomevfs-info mime-diagram.svg Name : mime-diagram.svg Type : Regular MIME type : image/svg+xml Default app : eog.desktop Size : 14869 Blocks : 32 I/O block size : 4096 Local : YES SUID : NO SGID : NO Sticky : NO Permissions : 600644 Link count : 1 UID : 1000 GID : 100 Access time : Wed Feb 22 18:24:47 2006 Modification time : Wed Feb 22 18:24:42 2006 Change time : Wed Feb 22 18:24:42 2006 Device # : 775 Inode # : 297252 Readable : YES Writable : YES Executable : NO $
La Sección 5.4.3: Ejemplo de application/x-newtype habla de los pasos para crear un nuevo tipo MIME y compriobar los cambios usando gnomevfs-info.
5.4.3. Ejemplo de application/x-newtype
Para crear (o sobreescribir) un tipo MIME y comprobar los cambios:
-
Cree un archivo nuevo y vacío llamado prueba.xyz en su directorio personal.
-
Use gnomevfs-info sobre el archivo para encontrar el tipo MIME. El tipo MIME para este archivo debería detectarse como text/plain porque no existe ningún patrón global o reglas mágicas que coincidan con él 1.
-
Cree (o modifique) el archivo Overrides.xml tal y como se describió en la Sección 5.4.1: Añadir o modificar tipos MIME con el contenido proporcionado en el Ejemplo 5-3.
-
Actualice la base de datos usando update-mime-database.
-
Use gnomevfs-info para verificar que su cambio ha tomado efecto. Debería ver el tipo MIME para el archivo prueba.xyz resuelto como application/x-newtype.
$ gnomevfs-info prueba.xyz | grep MIME MIME type : application/x-newtype $
Cuando ningún patrón global o ninguna regla mágica coincide con un archivo, entonces se resuelve como el tipo MIME text/plain si contiene datos textuales o como application/octet-stream para datos binarios. Si el archivo está vacío, entonces se resuelve como text/plain.