Modificació dels tipus MIME

Mai hauríeu de modificar directament els fitxers font XML que les aplicacions instal·len al directori <MIME>/packages. En lloc d'això, hauríeu de modificar el fitxer Overrides.xml. Aquest fitxer té preferència sobre els altres fitxers font XML instal·lats en el mateix directori packages. Si sou autor d'una aplicació, llavors aquesta regla no s'aplica. Hauríeu de crear un fitxer font XML nou i ubicar-lo en el directori <MIME>/packages pertinent (el Makefile s'encarregarà d'això).

Podeu modificar la base de dades MIME per a tots els usuaris del sistema o per a un usuari determinat depenent de la ubicació del fitxer que canvieu. Per a modificar la base de dades per a tots els usuaris, feu els canvis al fitxer Overrides.xml en el directori $XDG_DATA_DIRS/mime/packages. Per a modificar la base de dades per a un sol usuari feu els canvis al fitxer Overrides.xml en el directori $XDG_DATA_HOME/mime/packages.

Després de realitzar els canvis, sempre heu d'executar l'aplicació update-mime-database, amb la ubicació del directori de la base de dades MIME com a primer paràmetre.

5.4.1. Addició o modificació dels tipus MIME

Per a afegir un o més tipus MIME per a tots els usuaris:

  1. Creeu o modifiqueu un fitxer font XML Overrides.xml existent, que contingui les definicions per als tipus MIME. Per a obtenir més informació, vegeu la Secció 5.3 ― Els fitxers font XML.
  2. Col·loqueu el fitxer Overrides.xml en el directori /usr/share/mime/packages.
  3. Actualitzeu la base de dades MIME executant update-mime-database des del compte del sistema.
    update-mime-database /usr/share/mime

Per a afegir un o mes tipus MIME per a un sol usuari, seguiu els mateixos passos, excepte col·locar el fitxer Overrides.xml en el directori ~/.local/share/mime/packages. De forma addicional, crideu l'update-mime-database amb ~/.local/share/mime/packages com a primer paràmetre.

5.4.2. Verificació dels canvis

Després que hàgiu fet un canvi a la base de dades MIME i n'hàgiu refrescat els continguts, podeu verificar que el canvi ha tingut efecte utilitzant l'aplicació gnomevfs-info. Aquesta aplicació imprimeix el tipus MIME i altra informació útil sobre el fitxer.

En executar el gnomevfs-info sobre un fitxer SVG, aquest us proporciona la sortida de sota. Notareu que l'aplicació predeterminada per aquest tipus MIME és l'eog.desktop. Les aplicacions predeterminades es discutiran a la secció Secció 5.5 ― Registre d'aplicacions per als tipus 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ó 5.4.3 ― Exemple de application/x-newtype explica els passos per a crear un tipus MIME nou i després verificar els canvis utilitzant el gnomevfs-info.

5.4.3. Exemple de application/x-newtype

Per a crear (o sobreescriure) un tipus MIME i verificar els canvis:

  1. Creeu un fitxer nou i buit anomenat testing.xyz en el directori d'usuari.

  2. Utilitzeu el gnomevfs-info sobre el fitxer per a esbrinar el tipus MIME. El tipus MIME per a aquest fitxer s'hauria de detectar com a text/plain perquè no hi ha cap patró global o regla màgica que coincideixin amb ell1.

  3. Creeu (o modifiqueu) el fitxer Overrides.xml com es descriu a la secció Secció 5.4.1 ― Addició o modificació dels tipus MIME amb els continguts proporcionats en l'Exemple 5-3.

  4. Refresqueu la base de dades utilitzant l'update-mime-database.

  5. Utilitzeu el gnomevfs-info per a verificar que els canvis han tingut efecte. Hauríeu de veure el tipus MIME per al fitxer testing.xyz resolt com a application/x-newtype.

    $ gnomevfs-info testing.xyz | grep MIME
    MIME type         : application/x-newtype
    $
Exemple 5-3Fitxer Overrides.xml
<?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>
1

Si cap patró global o regla màgica coincideix amb un fitxer, aquest es resoldrà com el tipus MIME text/plain si conté dades contextuals, o com a application/octet-stream per a dades binàries. Si el fitxer està buit, llavors es resol com a text/plain.