Translation(s): English - Français - Italiano


Le type MIME décrit le type des données contenues dans un fichier. MIME est universellement utilisé pour indiquer quel programme pourra ouvrir un fichier de données.

Définition de MIME : Voir https://fr.wikipedia.org/wiki/Multipurpose_Internet_Mail_Extensions

Présentation

Tout un tas de méthodes sont utilisées pour déterminer le type MIME d'un fichier. Les protocoles Internet tels que HTTP et courriel donnent habituellement le type MIME des données de façon explicite. Quand on ouvre un fichier en cliquant dessus dans un gestionnaire de fichiers, le suffixe du nom de fichier (comme .pdf) et ce qui s'appelle les nombres magiques (tels que les octets fixes dans l'en-tête d'un fichier exécutable elf) sont généralement utilisés.

Les suffixes de nom de fichier : Le mappage entre les suffixes de fichier et les types MIME pour l'ensemble du système est inscrit dans le fichier /etc/mime.types.

Les utilisateurs peuvent inscrire leurs propres préférences de lien entre les suffixes et les types MIME dans le fichier $HOME/.mime.types.

Les suffixes des noms de fichiers sont traditionnellement ignorés dans les systèmes Unix.

Les nombres magiques : Les nombres magiques sont des octets ou des chaines affectés d'une valeur particulière dans des fichiers d'un type donné et qui peuvent être utilisés pour deviner les types de fichier avec une bonne chance de certitude. Par exemple, les scripts awk débutent habituellement par la ligne « #!/usr/bin/awk » ou « #!/bin/awk », parfois avec des espaces après le « ! ».

La commande file dans un terminal est un outil très utile pour deviner le type d'un fichier à partir de son contenu. La commande file --mime 'nom du fichier' tente de donner le type MIME du nom de fichier.

La commande file se sert des nombres magiques enregistrés dans le fichier « /usr/share/file/magic ». Ce fichier est construit automatiquement et donc il ne doit pas être personnalisé parce que vos précieuses personnalisations seront perdues chaque fois que le fichier est reconstruit. Le format de ce fichier est décrit dans man magic.

Pour l'ensemble du système, les ajouts à la bibliothèque de reconnaissance des nombres magiques se trouvent dans le fichier /etc/magic.

Applications spécifiques : Certaines applications peuvent avoir leurs propres règles MIME. La manière dont les applications appliquent et enregistrent ces règles est propre à chacune d'entre elles. Ces « applications » peuvent être le bureau GNOME ou un navigateur web exécuté dans GNOME, et donc plusieurs groupes de règles doivent être vérifiés avant de faire référence à /etc/mime.types.

Type MIME par défaut : Si le type MIME ne peut pas être déterminé, on lui donne par défaut le type application/octet-stream.

Associations à des applications

Note : les gnome-file-types-properties auxquelles il est fait parfois référence sont maintenant obsolètes et ne sont plus présentes sur les systèmes Debian.

L'association au niveau du système entre les types MIME et les applications est générée à partir des fichiers *.desktop fournis par chaque paquet. Le fichier .desktop est stocké dans le répertoire /usr/share/applications/ et ses sous-répertoires et le programme update-desktop-database analyse leurs informations puis génère le fichier /usr/share/applications/mimeinfo.cache qui spécifie pour chaque type MIME le fichier .desktop valide (et donc la bonne application).

Le fichier mimeinfo.cache est simplement le cache inverse brut des informations des fichiers .desktop. Il n'y a pas de moyen d'y introduire quelconque priorité. Pour pouvoir spécifier les applications par défaut, on doit créer un fichier mimeapps.list (précédemment nommé defaults.list jusqu'à Debian 5). Il peut être valide pour l'ensemble du système (dans le répertoire /usr/share/applications ou un sous-répertoire) ou spécifique à chaque utilisateur (dans le répertoire $HOME/.local/share/applications). Une méthode heuristique est utilisée par glib (À faire : comment cela fonctionne avec KDE ?) pour utiliser le fichier mimeapps.list approprié selon l'environnement de l'utilisateur (par exemple utilisation d'Evince avec GNOME ou d'Okular avec KDE pour ouvrir un fichier PDF). Le fichier mimeapps.list suit la même syntaxe que mimeinfo.cache, c'est à dire :

[Default Applications]
application/pdf=evince.desktop
image/png=eog.desktop

Voir les pages https://bugs.freedesktop.org/show_bug.cgi?id=30214 et https://bugzilla.gnome.org/show_bug.cgi?id=630171 pour plus d'informations.

Voir aussi