Вопрос или проблема
В моем I3WM я люблю использовать приложения KDE (особенно dolphin), поэтому мне нужно использовать qt6ct (так как qt5ct вообще не работает). Также мне нужен темный режим, и здесь возникает проблема.
Ситуация
У меня установлены qt6ct, systemsettings, lxappearance… Я открываю dolphin, и он появляется с белым фоном. Я открываю qt6ct и начинаю нажимать повсюду, после нажатия примерно 20 кнопок dolphin переключается в темный режим, но мне нужно повторять этот процесс для каждого открываемого окна. Как видно, это отличается в основной зоне:
$ cat ~/.config/qt6ct/qt6ct.conf
[Appearance]
color_scheme_path=/home/chelmi/.config/qt6ct/colors/dark.conf
custom_palette=true
icon_theme=breeze-dark
standard_dialogs=default
style=Breeze
[Fonts]
fixed="DejaVu LGC Sans,12,-1,5,400,0,0,0,0,0,0,0,0,0,0,1"
general="DejaVu LGC Sans,12,-1,5,400,0,0,0,0,0,0,0,0,0,0,1"
[Interface]
activate_item_on_single_click=1
buttonbox_layout=0
cursor_flash_time=1000
dialog_buttons_have_icons=1
double_click_interval=400
gui_effects=@Invalid()
keyboard_scheme=2
menus_have_icons=true
show_shortcuts_in_context_menus=true
stylesheets=/home/chelmi/.config/qt6ct/qss/dolphin_head.qss, /usr/share/qt6ct/qss/scrollbar-simple.qss
toolbutton_style=4
underline_shortcut=1
wheel_scroll_lines=3
[PaletteEditor]
geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\x3h\0\0\x2&\0\0\x5\xe2\0\0\x4R\0\0\x3j\0\0\x2@\0\0\x5\xe0\0\0\x4P\0\0\0\0\0\0\0\0\a\x80\0\0\x3j\0\0\x2@\0\0\x5\xe0\0\0\x4P)
[QSSEditor]
geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\x4o\0\0\x2\x18\0\0\x6\xf5\0\0\x4&\0\0\x4q\0\0\x2\x32\0\0\x6\xf3\0\0\x4$\0\0\0\0\0\0\0\0\a\x80\0\0\x4q\0\0\x2\x32\0\0\x6\xf3\0\0\x4$)
[SettingsWindow]
geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\x3\xc7\0\0\0\f\0\0\x5\x99\0\0\x4\x10\0\0\x3\xc8\0\0\0\r\0\0\x5\x98\0\0\x4\xf\0\0\0\0\0\0\0\0\a\x80\0\0\x3\xc8\0\0\0\r\0\0\x5\x98\0\0\x4\xf)
[Troubleshooting]
force_raster_widgets=1
ignored_applications=@Invalid()
$ cat ~/.config/qt6ct/qss/dolphin_head.qss
QWidget {
color: #ffffff;
background-color: #282c34;
}
QScrollBar {
background: #323640;
width: 15px;
}
$ cat ~/.gtkrc-2.0
include "/home/chelmi/.gtkrc-2.0.mine"
gtk-theme-name="Adapta-Nokto-Maia"
gtk-icon-theme-name="Papirus-Dark-Maia"
gtk-font-name="Cantarell 11"
gtk-cursor-theme-name="Maia-Cursor"
gtk-cursor-theme-size=0
gtk-toolbar-style=GTK_TOOLBAR_BOTH
gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
gtk-button-images=1
gtk-menu-images=1
gtk-enable-event-sounds=1
gtk-enable-input-feedback-sounds=1
gtk-xft-antialias=1
gtk-xft-hinting=1
gtk-xft-hintstyle="hintfull"
gtk-xft-rgba="rgb"
$ cat ~/.config/kdeglobals
[...]
[General]
ColorScheme=Maia Dark
[Icons]
Theme=Papirus-Dark-Maia
[KDE]
LookAndFeelPackage=org.kde.oxygen
Я думал, что systemsettings или lxappearance могут быть причиной этой проблемы, но я не могу понять, как это исправить.
Ответ или решение
Проблема, с которой вы сталкиваетесь при использовании qt6ct в окружении i3WM, связана с неправильным применением темной схемы в Qt-приложениях, таких как Dolphin. Я постараюсь объяснить, что может идти не так, и предложить решения, которые помогут вам добиться желаемого результата.
1. Контекст проблемы
Вы используете i3WM, стараясь интегрировать приложения KDE в среду, основанную на GTK. При этом вы столкнулись с проблемой, что Dolphin не применяет темную тему по умолчанию, и вам приходится вручную активировать одну и ту же настройку каждый раз при открытии нового окна.
2. Проверка конфигурации
Согласно вашему конфигурационному файлу ~/.config/qt6ct/qt6ct.conf
, вы установили необходимые параметры для темной темы, однако это не всегда приведет к ожидаемому поведению приложения. Ваша конфигурация выглядит корректно, и вы используете color_scheme_path
, указывающий на файл dark.conf
. Вот несколько рекомендаций, которые помогут вам устранить возникшую проблему:
2.1. Запуск qt6ct
Убедитесь, что вы запускаете qt6ct
перед открытием приложений на Qt. Попробуйте выполнить следующую команду в терминале:
qt6ct &
Затем откройте Dolphin. Это обеспечит применение всех ваших настроек к текущей сессии.
2.2. Проверка переменных среды
Убедитесь, что переменные среды для QT правильно установлены. Попробуйте добавить следующую строку в ваш .xprofile
или .bash_profile
:
export QT_QPA_PLATFORMTHEME=qt6ct
После этого перезагрузите вашу систему или перезапустите сессию.
3. Совместимость с GTK
Ваши gtkrc-2.0
и kdeglobals
файлы указывают на использование тем и шрифтов из различных ресурсов. Это может вызвать конфликты. Убедитесь, что ваша тема GTK и тема Qt не конфликтуют между собой. Иногда использование одной темы для обоих окружений может помочь облегчить этот процесс. Попробуйте использовать тему, которая поддерживает как GTK, так и Qt.
4. Дополнительные проверки
Если Dolphin все еще не применяет темную тему:
- Убедитесь, что файл
dark.conf
корректно настроен и действительно содержит подходящие цвета для элементов интерфейса. - Проверьте, не касаются ли ваши настройки (например, шрифты, палитры) изменений, сделанных в самом KDE или других конфигурациях среды.
5. Заключения
Если описанные шаги не помогли решить проблему, вы можете рассмотреть возможность обращения в сообщества разработчиков, такие как GitHub или форумы KDE. Возможно, у вас возникла уникальная проблема, которая потребует более детального анализа или исправлений в самом qt6ct.
Соблюдение описанных выше рекомендаций должно помочь вам сделать так, чтобы приложения на Qt, такие как Dolphin, правильно применяли темную тему в вашей системе с i3WM.