Есть какой-то системный пакет shared-mime-info
# Посмотреть только glob-правила:
grep -R "<glob" ~/.local/share/mime/packages
# Найти все определения <mime-type>:
grep -R "<mime-type" ~/.local/share/mime/packages
# Найти все правила magic:
grep -R "<magic" ~/.local/share/mime/packages
# Проверка MIME-типа через xdg-mime:
xdg-mime query filetype script.rpy
# Проверка MIME-типа через file:
file --mime-type script.rpy
# папка с глобальными MIME-типами:
/usr/share/mime/packages/
# папка с локальными MIME-типами:
~/.local/share/mime/packages/
# У меня здесь по умолчанию был только один файл: video-mpeg.xml
# Arch объединяет все MIME-типы в один файл:
/usr/share/mime/packages/freedesktop.org.xml
# Создаю здесь файл rpy-python.xml со следующим содержимым:
...
# Здесь мы говорим: все .rpy = text/x-python.
# Далее обновляем базу MIME:
update-mime-database ~/.local/share/mime
# mimeapps.list - пользовательские переопределения
~/.config/mimeapps.list
# mimeapps.list - общесистемные переопределения
/etc/xdg/mimeapps.list
# mimeapps.list - (Устаревшее) пользовательские переопределения
~/.local/share/applications/mimeapps.list
# переопределения предоставляемые дистрибутивом по умолчанию
/usr/local/share/applications/mimeapps.list
/usr/share/applications/mimeapps.list
~/.local/share/applications/mimeinfo.cache
/usr/share/applications/mimeinfo.cache
# У меня mimeapps.list есть в папках:
# ~/.config/mimeapps.list
# ~/.local/share/applications/mimeapps.list
# Проверяем, что .rpy есть в базе данных:
grep -R "rpy" ~/.local/share/mime
# /home/mark/.local/share/mime/globs:text/x-python:*.rpy
# /home/mark/.local/share/mime/packages/rpy-python.xml:
# /home/mark/.local/share/mime/text/x-python.xml:
# /home/mark/.local/share/mime/globs2:50:text/x-python:*.rpy
# Должно быть что-то вроде:
# ~/.local/share/mime/text/x-python.xml:
# пересобрать базу MIME
update-mime-database ~/.local/share/mime
# пересобрать глобальный кэш (может потребоваться sudo)
sudo update-mime-database /usr/share/mime
# очистить кэш XDG MIME
rm -f ~/.local/share/mime/globs.cache
rm -f ~/.local/share/mime/globs2.cache