No meu caso, a mudança não funcionaria:
$ xdg-mime default evince.desktop application/pdf
A execução da depuração mostrará os arquivos consultados:
$ XDG_UTILS_DEBUG_LEVEL=2 xdg-mime query default application/pdf
Checking /usr/local/share//applications/defaults.list and /usr/local/share//applications/mimeinfo.cache
Checking /usr/local/share//applications/defaults.list and /usr/local/share//applications/mimeinfo.cache
Checking /usr/share//applications/defaults.list and /usr/share//applications/mimeinfo.cache
libreoffice-draw.desktop
Olhando para o último arquivo (onde a correspondência foi encontrada) me deu uma dica:
$ grep application/pdf /usr/share/applications/mimeinfo.cache
application/pdf=libreoffice-draw.desktop;gimp.desktop;org.gnome.Evince.desktop;inkscape.desktop;
Não é mais chamado evince.desktop
, agora é org.gnome.Evince.desktop
!
Mais uma vez, agora usando o novo nome:
$ xdg-mime default org.gnome.Evince.desktop application/pdf
$ XDG_UTILS_DEBUG_LEVEL=2 xdg-mime query default application/pdf
Checking ~/.config/mimeapps.list
org.gnome.Evince.desktop
Muito melhor!