Как я могу использовать Adwaita Dark для всех приложений в Gnome 3?

38

Я заметил, что некоторые приложения используют тему Adwaita Dark, а другие - светлую. Есть ли способ заставить все приложения использовать Dark?

Джефф
источник
1
Было бы полезно добавить скриншоты или хотя бы упомянуть, какие приложения имеют эту проблему.
Мартин Канаваль
В соответствии с gnome-session --version, у меня есть Gnome 3.4.2.1, но, поскольку я использую OpenBox в качестве WM (вы используете Metacity?), Вместо решения ниже, я использую, obconfчтобы изменить тему (и установить другие предпочтения).
Эмануэль Берг

Ответы:

45

Замена основной темы на темную в /usr/share/themesне является идеальным решением, так как каждый раз, когда gnome-themesобновляется, ваша тема будет возвращаться по умолчанию. Желательно правильно настроить учетную запись пользователя для использования темной темы, чтобы ваши настройки сохранялись между обновлениями. Вы можете сделать это:

  • Вручную: создайте (откройте, если он уже есть) следующий файл:

    ~/.config/gtk-3.0/settings.ini

    отредактируйте вот так:

    [Settings]
    gtk-application-prefer-dark-theme=1


  • Через gnome-tweak-tool(который, по сути, делает то же самое, что и выше, записывая тот же файл):

    Переключатель режима темной темы GNOME3 в gnome-tweak-tool


GTK2 Проблема

Этот ответ действительно является идеальным и «безопасным» (т.е. не нужно заменять / модифицировать любые системные файлы) метод. Однако в настоящее время ни этот метод, ни ответ Джеффа не работают для всех приложений. Только в GNOME3 / GTK3 есть поддержка dark theme mode. На сегодняшний день все еще есть много приложений (например, написанных на GNOME2 / GTK2, Qt, wxWidgets, Java и т. Д.), Которые не используют GTK3 и остаются на старой тематике GTK2. Чтобы сделать эти приложения темными, работает замена / изменение части GTK2 ( $ACTIVE_THEME/gtk-2.0/gtkrc) текущей активной темы. Чтобы узнать больше, смотрите ответ на «Firefox, не затронутый темой gtk» .

Поскольку GTK2 устарел и заменен GTK3, все активно разрабатываемые приложения GTK2 переносятся или заменяются GTK3. Рано или поздно, другие наборы инструментов, такие как Qt, wxWidgets и т. Д., Могут также реализовать поддержку GTK3. К тому времени этот метод может стать действительным для всех (может быть, почти для всех) приложений.

don_crissti
источник
Я не проверял это, поэтому я даю вам преимущество сомнения :) Это кажется аккуратнее.
Джефф
Моя версия gnome-tweak-tool (обновленная AFAIK) не имеет этой опции. Добавление этого файла вручную после перезагрузки работает нормально.
Джефф
3
Это не работает для всех приложений, например, Firefox. Я собираюсь попробовать это сейчас: askubuntu.com/questions/337018/…
Rasmus
1
Я обнаружил, что использование этой темы работает довольно хорошо - я заменил оригинальную тему Adwaita на /usr/share/themesнее, и она работает довольно хорошо :)
Уилф
Для GTK + 2 установите пакет gnome-themes-standard, затем выберите его в Adwaita-darkкачестве системной темы. Наличие отдельного имени означает, что это может указать GTK + 2 на порт Adwaita: темный от GTK + 3 до GTK + 2.
underscore_d
5

Просто замените основную тему на темную (в специальной копии Adwaita в вашем домашнем каталоге):

mkdir -p ~/.themes
cp -r /usr/share/themes/Adwaita ~/.themes/Darkwaita
cd ~/.themes/Darkwaita/gtk-3.0
cp gtk-dark.css gtk.css

Затем используйте такой инструмент, как gnome-tweak-tool, чтобы установить Darkwaita в качестве темы gtk, и изменения должны вступить в силу немедленно.

Джефф
источник
Хотя это работает, после обновления его можно вернуть к значению по умолчанию.
Рубенс Мариуццо
Этого можно избежать, скопировав сначала тему в свой домашний каталог, cp -r /usr/share/themes/Adwaita ~/.themes/Darkwaita; cp ~/.themes/Adwaita/gtk-3.0/gtk{-dark,}.cssа затем используя gnome-tweak-toolдля выбора тему Darkwaita.
Робру
4
Это больше не работает в Ubuntu Vivid, файл gtk-dark.css больше не существует, а полное содержимое gtk.css просто /* Adwaita is the default theme of GTK+ 3, this file is not used */... блин .
Робру