Вопрос или проблема
Я использую i3wm на актуальной установке Arch, и мне бы хотелось узнать, как менять приложение, открывающееся для диалога сохранения/открытия файлов.
Как воспроизвести
- Если я открываю Okular и выбираю “Открыть файл”, меня встречает некрасивый файловый менеджер
- Если я нажимаю “сохранить PDF” в Chromium, открывается то же самое приложение
Что я пробовал
- установить по умолчанию в exo-preferred-applications
- установить вручную в каждом конфигурационном файле mime, который я мог найти на своем компьютере (inode/directory=Nautilus.desktop;)
- и кучу других исправлений, которые я нашел в интернете
- xdg-open и mimeo открывают правильное приложение при открытии каталога
У меня также установлен Gnome на ПК, и при запуске Chrome на этом менеджере рабочего стола открывается Nautilus, так что я думаю, это может управляться менеджером рабочего стола/окон, то есть i3 в моем случае.
Используя pstree
, вы можете просмотреть okular
и любые подпроцессы с открытым и закрытым диалогом файлов. Вы обнаружите, что диалог файлов не является порожденным процессом, это часть самого приложения. То, как он выглядит, определяется библиотеками, на которых написано приложение, и темой, примененной к этой библиотеке.
Может показаться, что приложение использует разные приложения выбора файлов в зависимости от версий задействованных библиотек и применяемых тем и значков.
Самые популярные графические библиотеки — это QT и GTK. Вы можете ознакомиться с тем, как применить единые темы как для QT, так и для GTK приложений.
Приложения, ориентированные на KDE, такие как Okular, обычно написаны с использованием библиотеки QT, в то время как приложения, ориентированные на Chromium и Gnome, используют библиотеку GTK.
Ответ или решение
Чтобы изменить приложение, открывающееся в диалоговых окнах "Открыть файл" и "Сохранить файл" в окружении рабочего стола i3wm на Arch Linux, нужно учитывать несколько факторов, связанных с графическими библиотеками, используемыми приложениями, а также параметрами конфигурации в вашей системе.
Шаг 1: Понимание графических библиотек
Как вы уже заметили, приложения могут использовать разные графические библиотеки. Приложения на базе Qt, такие как Okular, и приложения на базе GTK, такие как Chromium, могут иметь разные диалоговые окна в зависимости от вашей конфигурации. Важно обеспечить совместимость тем и настроек между этими библиотеками.
Шаг 2: Применение единой темы
Чтобы обеспечить единый вид диалоговых окон для приложений, придерживайтесь следующих шагов:
-
Установка необходимых тем:
- Установите темы для Qt и GTK. Например, можно использовать
lxappearance
для GTK и изменить настройки вqt5ct
для Qt. Также вам могут помочь пакетные менеджеры, такие какpacman
, для установки необходимых пакетов:sudo pacman -S arc-icon-theme arc-gtk-theme qt5ct
- Установите темы для Qt и GTK. Например, можно использовать
-
Настройка конфигурации:
- Используйте
qt5ct
для установки тем и настройки шрифтов для приложений на базе Qt. Запустите его и выберите желаемую тему, шрифты и иконки. - Для настройки GTK тем необходимо запустить
lxappearance
и выбрать аналогичную или совместимую тему.
- Используйте
Шаг 3: Настройка параметров приложений
-
Проверка конфигурационных файлов:
- Убедитесь, что файлы конфигурации для вашего окружения правильно настроены. Для GTK можно редактировать
~/.config/gtk-3.0/settings.ini
:[Settings] gtk-theme-name = Arc gtk-icon-theme-name = Arc
- Убедитесь, что файлы конфигурации для вашего окружения правильно настроены. Для GTK можно редактировать
-
Обновление настройки xdg:
- Важно также убедиться, что настройки в
xdg
синхронизированы. Это можно сделать с помощьюxdg-mime
:xdg-mime default имя_менеджера_файлов.desktop inode/directory
- Важно также убедиться, что настройки в
Шаг 4: Тестирование
Проверьте, изменилось ли поведение после внесенных изменений. Откройте окулары и другие приложения, в которых возникает проблема, и проверьте, открывается ли теперь ожидаемое диалоговое окно при вызове "Открыть файл" или "Сохранить файл". Если проблема сохраняется, можно рассмотреть возможность переустановки конфликтующих компонентов или обновления системы:
sudo pacman -Syu
Заключение
Проблема с открытием некорректных диалогов файлов в вашем окружении i3wm может быть связана с несовместимостью тем и библиотек. Следуя приведённым выше шагам, вы сможете настроить свою систему таким образом, чтобы обеспечить единый стиль и удобство работы с приложениями. Если возникнут дополнительные вопросы или проблемы, рекомендуется обратиться к сообществу Arch Linux для получения более целенаправленной помощи.