Si vous utilisez xdg-open
pour ouvrir des applications, utilisez xdg-mime
pour définir l'application par défaut pour un type MIME donné (généralement, l'installation de xdg-utils vous donne le xdg-mime et les programmes associés).
Par exemple, pour voir le "filetype" (type mime, si vous voulez) du fichier donné:
$ xdg-mime query filetype tmp.txt
text/plain
$ xdg-mime query filetype foo.pdf
application/pdf
$ xdg-mime query filetype $PWD
inode/directory
Exemple de changement du gestionnaire de fichiers par défaut pour l'ouverture des répertoires (pourrait choisir caja.desktop (par défaut pour mint), nautilus.desktop (ubuntu), etc:
$ xdg-mime default Thunar.desktop inode/directory
Et aussi faire locate -i foo.desktop
pour vérifier que foo.desktop
cela existe bien.
Plus précisément, afin de voir ce qu'est l'éditeur de texte par défaut,
$ xdg-mime query default text/plain
gedit.desktop
Pour utiliser un autre éditeur de texte par défaut (encore une fois, en vérifiant que le fichier ".desktop" existe):
$ locate -i vim.desktop
/usr/share/applications/gvim.desktop
$ xdg-mime default gvim.desktop text/plain
Maintenant, soit en double-cliquant sur "foo.txt" (dans votre gestionnaire de fichiers GUI) ou en cours d'exécution xdg-open foo.txt
utilisera à la gvim
place de gedit
.
Dépannage: assurez-vous que le fichier ".desktop" pour une application donnée peut être trouvé, car il doit être utilisé avec l' xdg-mime
utilitaire; par exemple,
$ xdg-mime default emacs text/plain
xdg-mime: malformed argument 'emacs', expected *.desktop
De plus, cela ne fonctionne silencieusement pas comme prévu si le fichier ".desktop" n'existe pas:
$ locate -i emacs.desktop
(none)
$ xdg-mime default emacs.desktop text/plain # won't work
Le fichier emacs ".desktop" (dans mon env):
$ locate -r 'emacs.*\.desktop'
/usr/share/applications/emacs24.desktop
$ xdg-mime default emacs24.desktop text/plain # does work
Voir aussi: https://wiki.archlinux.org/index.php/xdg-open
/usr/share/applications/mimecache.info
fichier qui semble répertorier les applications par défaut. C'est encore plus déroutant ...