xfce4-терминал демонстрирует странное расстояние между шрифтами в зависимости от среды (nix) - PullRequest
0 голосов
/ 15 апреля 2020

Context. Simula - это VR-композитор для Linux, который использует nix для всех своих зависимостей. В частности, когда Simula запускается впервые, она запускает экземпляр xfce4-terminal, который генерируется никсом через:

ln -s ${xfce.xfce4-terminal}/bin/xfce4-terminal $out/bin/xfce4-terminal

Проблема. Проблема заключается в том, что когда xfce4-terminal запущен в Simula, он перепутал шрифты со странными проблемами с пробелами (см. левый терминал):

enter image description here

Однако, если мы запустим тот же самый сгенерированный nix терминал за пределами Симулы (отправленный Симуле DISPLAY), тогда проблема со шрифтом не появится (см. правый терминал выше).

Попытка # 1. Сначала мы попытались исправить проблему, установив

export FONTCONFIG_FILE=${fontconfig.out}/etc/fonts/fonts.conf
export LOCALE_ARCHIVE=${glibc-locales}/lib/locale/locale-archive

в среде запуска, но это не имело никакого эффекта.

Попытка # 2. Затем мы попробовали

nix-env -i dejavu-fonts
nix-env -iA nixpkgs.corefonts ln -sf ~/.nix-profile/share/fonts/ ~/.local/share/fonts/nix-fonts

, что также не имело никакого эффекта. Кроме того, это решение не было бы переносимым на другие машины, кроме нашей (что является обязательным требованием).

Попытка № 3. Мы наконец-то попытались выяснить, как env внутри и снаружи Simula отличается, запустив следующий diff:

  1. env внутри Simula (со сломанными шрифтами). См. здесь .

  2. env за пределами Simula (с правильными шрифтами). См. здесь .

  3. ENV DIF.

ENV показывает некоторые различия в LD_LIBRARY_PATH, VK_LAYER_PATH и PATH, которые выглядит не очень интересно (но, чтобы быть уверенным, я избавился от этих различий, и все же не смог заставить работать шрифты на терминале при запуске в Simula).

Кто-нибудь знает, что может быть причиной этой странной проблемы со шрифтом с xfce4-терминал ??

...