I am trying to set my default pdf viewer to sioyek and I’m encountering an annoying issue. I have looked at the other relevant threads on here but no-one seems to have directly addressed my issue.
I use home-manager to set it as the default like so:
/*
Default Apps
*/
xdg.mimeApps = {
enable = true;
associations.added = {
"application/pdf" = ["sioyek.desktop"];
};
defaultApplications = {
"application/pdf" = ["sioyek.desktop"];
};
};
But when I run:
XDG_UTILS_DEBUG_LEVEL=2 xdg-mime query default application/pdf
I get:
Checking /home/<user>/.config/mimeapps.list
Checking /home/<user>/.local/share/applications/mimeapps.list
Checking /run/current-system/sw/share/applications/kde-mimeapps.list
okularApplication_pdf.desktop
The first two files are correctly configured by home-manager to use sioyek. But the final one overrides them with the KDE default mime type packaged with plasma (see plasma-desktop/kde-mimeapps.list at f8085d49c438d771b1218cc8a4742c80752f398a · KDE/plasma-desktop · GitHub).
How do I resolve this? It seems some applications go with ~/.config/mimeapps.list
which will correctly open sioyek, but others use xdg-open
which will go with okular.