Добрый вечер, друзья. Принес вам задачку:
Debian 9, MATE. Установил qt5-gtk-platformtheme
и qt5-style-plugins
, в /etc/environment задал QT_QPA_PLATFORMTHEME=gtk2
. Так как я люблю шрифты без антиалиасинга, то в ~/.config/fontconfig/fonts.conf прописал следующее (в противном случае, в Qt приложениях шрифты сглаживаются):
<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>
<match target="font">
<edit name="rgba" mode="assign">
<const>none</const>
</edit>
</match>
<match target="font">
<edit name="hinting" mode="assign">
<bool>true</bool>
</edit>
</match>
<match target="font">
<edit name="hintstyle" mode="assign">
<const>hintmedium</const>
</edit>
</match>
<match target="font">
<edit name="antialias" mode="assign">
<bool>false</bool>
</edit>
</match>
</fontconfig>
Все шикарно и однородно, все как люблю. (Примеры: файломенеджер и кутишный VLC, например).
Но вот с Телегой не срослось :( На гитхабе нашел у них такой же issue, откоментил, подтвердил, но он там уже год висит. Потому, хз, исправят ли. Судя по некоторым другим жалобам, разрабы не особо быстро «бегут-навстречу-юзерам-аж-волосы-назад».
Так вот, собственно, вопрос: могу ли я как-то запускать Телегу в обход моего fonts.conf?
Как заставить отдельное приложение, типа Телеги или Хромого, игнорировать локальные настройки шрифтов?
QT_QPA_PLATFORMTHEME и QT_STYLE_OVERRIDE не предлагать, так как это меняет только стиль.
UPDATE: Решено
Чтобы приложение игнорировало локальные настройки, запускать его можно таким образом:
XDG_CONFIG_HOME= /opt/Telegram/Telegram
И обратите внимание на пробел между XDG_CONFIG_HOME=
и самой командой.
Если это лончер на панели, то в поле Command прописать соответственно:
sh -c "XDG_CONFIG_HOME= /opt/Telegram/Telegram"
UPDATE 2: Вообще шикарно! Наконец-то смог победить корявый шрифт в Хромом при отключенном в системе антиалиасинге:
1) Отсаживаем свой ~/.config в ~/.config.chrome
2) В ~/.config.chrome/fontconfig/fonts.conf включаем антиалиасинг:
<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>
<match target="font">
<edit name="antialias" mode="assign">
<bool>true</bool>
</edit>
</match>
</fontconfig>
Возможно будет мыло и ШГ, тогда добавляем остальные параметры на свой вкус (rgba, hinting, hintstyle и т.д.).
3) Запускаем:
XDG_CONFIG_HOME="${HOME}/.config.chrome" chromium