Dans Firefox 38.8.0 ESR, sous Debian Lenny avec GNOME 2, j'ai découvert que l'application associée via XDG (décrite dans la réponse de l'OP ) n'est utilisée que lors de l'ouverture d'un fichier téléchargé depuis Téléchargements dans la bibliothèque.
Et même là, l'implémentation donne des résultats incohérents xdg-opencar elle ignore les chemins spécifiques à GNOME (dans mon cas /usr/share/gnome/applications/defaults.list, qui est un lien symbolique /etc/gnome-vfs-2.0/defaults.list). Je devais préciser application/pdf=evince.desktopdans mon ~/.local/share/applications/defaults.list. (Notez que cela a defaults.listété fusionné dans mimeapps.listles versions plus récentes de XDG.)
Au lieu de XDG, les capacités de métamail (mailcap) sont utilisées pour résoudre l'application associée pour les cas d'utilisation suivants:
- ouverture du fichier téléchargé à partir du panneau de téléchargement (affiché après avoir appuyé sur le bouton de téléchargement dans la barre d'outils)
- application par défaut dans la liste déroulante de la boîte de dialogue de téléchargement de fichier
- application par défaut dans le menu déroulant dans Préférences → Applications (
about:preferences#applications)
La préférence dans about:preferences#applicationsest utilisée lors de la navigation vers une URL avec ce type de contenu, sauf si le téléchargement est forcé.
Mailcap est un mécanisme plus ancien que XDG et a ses racines dans le courrier électronique, d'où provient également MIME. L' run-mailcaputilitaire est analogue à xdg-open. Sa configuration comprend trois fichiers (de priorité décroissante):
~/.mailcap - entrées utilisateur
/etc/mailcap.order - spécification de commande des entrées à l'échelle du système
/etc/mailcap - entrées à l'échelle du système (même format que les entrées utilisateur)
Ensemble, ils produisent une liste d'entrées d'une ligne qui spécifient l'application à utiliser pour tout type MIME donné. Les entrées sont appariées de haut en bas, donc ce qui vient en premier est prioritaire.
Pour que la modification des entrées soit prioritaire à l'échelle du système, vous devez la modifier /etc/mailcap.orderet l'exécuter update-mime.
Pour remplacer certaines des entrées ou spécifier la vôtre, à l'échelle du système, vous devez modifier la section supérieure (destinée aux entrées créées manuellement) /etc/mailcapet l'exécuter update-mime. Voir les commentaires dans la section supérieure.
Pour les entrées utilisateur et les remplacements, utilisez ~/.mailcap. Les modifications prennent effet immédiatement. Aucun ~/.mailcap.ordern'existe; si vous souhaitez modifier la priorité des entrées, les réorganiser physiquement (si elles sont en ~/.mailcap) ou les remplacer par la version préférée (si elles sont en /etc/mailcap).
Voir man update-mime, man mailcapet man mailcap.order.
Notez que certaines applications utilisent des utilitaires génériques (tels que x-www-browserou pager) au lieu de détecter l'application préférée. Vous devrez peut-être utiliser update-alternativesou un mécanisme similaire pour choisir l'implémentation préférée d'un utilitaire générique dans votre distribution. Ou, pour remplacer une alternative préférée à l'échelle du système pour un utilisateur spécifique, définissez des variables d'environnement telles que EDITOR(ou VISUAL) PAGERet BROWSER. Ils sont pris en charge par d' sensible-browserautres outils, souvent plus spécifiques (par exemple, les git commitutilisations EDITORet VISUAL).