2

У меня дома есть компьютер, к которому я подключаюсь удаленно. "Монитор" для него - телевизор, поэтому я хочу, чтобы приложения gtk использовали большую тему шрифтов и значков, что мне удалось сделать, отредактировав файл ~/.gtkrc-2.0 и некоторые другие подобные вещи. Я хочу иметь отдельную тему для удаленного входа в систему. Лучший способ объяснить это то, что я хотел бы, чтобы мой выбор темы gtk зависел от отображения X, на котором запущено приложение. Например, если я запускаю что-то на:0.0, то это телевизор и мне нужны большие шрифты, но если я запускаю его на localhost:10.0, я хочу использовать шрифт обычного размера, потому что он будет отображаться на экране моего ноутбука.

Элегантным решением было бы иметь какой-то оператор IF в файле .gtkrc-2.0, который проверяет переменную $ DISPLAY и ведет себя соответственно. Проблема в том, что я не могу найти какую-либо документацию по структурам управления в файлах .gktrc, или если это вообще возможно сделать.

[Править] Кроме того, есть ли способ сделать это в GTK+ 3 без необходимости установки gnome?

2 ответа2

1

Этого можно добиться, запустив демон Xsettings , такой как gnome-settings-daemon локально на обеих машинах; это повлияет на всех клиентов дисплея X, на котором он работает, переопределяя gtkrc.

Если программа использует GTK+ 2, вы можете указать $GTK2_RC_FILES на список альтернативных gtkrc, разделенных двоеточиями . (Прямой альтернативы для GTK+ 3 settings.ini нет ; он использует Xsettings в качестве основного механизма.)

0

AFAIK не возможно заставить делать какие-либо сценарии для gtkrc. Вы можете скопировать обе конфигурации куда-нибудь, где вы сможете восстановить их из .xinitrc, .xsession или другого файла запуска X. Единственная проблема заключается в том, что вы не можете использовать оба:0.0 и:10.0, работающие параллельно с разными темами. Вы должны либо запустить только один X за раз, либо сделать другого пользователя с другим домашним каталогом для вашей установки телевизора, например. Вы даже можете использовать один и тот же UID/GID для обоих пользователей и иметь доступ ко всем файлам.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .