LINUX.ORG.RU

Core X11 шрифтов вопрос

 , ,


0

1

Это которые серверные и доступны через XLFD-описания (в основном Xaw, Motif, GTK+ 1.x, Qt 1.x).

Вот, помнится, раньше (в Debian до версии 6 («Squeeze») включительно) был такой пакет defoma (и ещё x-ttcidfont-conf к нему впридачу).

В процессе установки новых TrueType-шрифтов включались какие-то триггеры, в результате чего шрифты регистрировались не только в клиентском fontconfig'e, но и в xfs с автоматической доступностью всем X11-серверам в сети (в каталоге со шрифтами обновлялись/создавались fonts.dir/fonts.scale/fonts.alias, сам каталог дописывался в /etc/fs/config, процессу xfs посылался SIGHUP).

На стороне X11-сервера я только делал что-то наподобие «xset fp rehash» — и вуаля!

И вот теперь я типа портирвал этот самый defoma на Debian 7+, воткнул его в машину с Jessie, снёс и переустановил шрифты — и хрен по деревне. Никаких тебе триггеров, и dpkg-reconfigure не помогает. Что как бы наводит на мысль, что была ещё какая-то (ныне выпиленная) обвязка на стороне пакетов шрифтов как раз для интеграции с defoma.

Соответственно, у меня три вопроса:

  1. Кто ещё помнит, как работает defoma?
  2. Какие есть альтернативы? Запускать ручками mkfontscale каждый раз, когда я обновлю шрифты, не хочется. «crontab -e» не предлагать.
  3. Наконец, как с тем же самым обстоят дела в других ОС/дистрибутивах. Особенно интересны отклики пользователей Gentoo и семейства *BSD UNIX — вдруг мне с тёплого лампового дебиана уже сползать пора?
★★★★★

Последнее исправление: cetjs2 (всего исправлений: 3)

А в чем проблемы? Скачай шрифт из старого дистрибутива, распакуй и посмотри debian/postinst. Я вот тоже не помню, что там было. По-моему, запускался скрипт /usr/bin/defoma-app, он все делал. Но после выпилинга defoma наверняка все поудаляли.

Zubok ★★★★★
()
Ответ на: комментарий от Zubok

запускался скрипт /usr/bin/defoma-app

Только не defoma-app, а defoma-font. defoma-app как раз в скрипты приложений совался.

Zubok ★★★★★
()
Ответ на: комментарий от Zubok

Спасибо, Евгений.

На самом деле, ранее (как выяснилось, даже не в «Squeeze», а в «Lenny») пакеты шрифтов включали в себя т. наз. hints для defoma в специальном формате.

Напр., для Monotype Arial (medium regular) файл /etc/defoma/hints/ttf-arial.hints мог бы выглядеть так:

category truetype
begin /usr/share/fonts/truetype/msttcorefonts/Arial.ttf
        Family = Arial
        FontName = Arial
        Foundry = Monotype
        Encoding = Unicode
        Location = English
        Charset = ISO8859-1 ISO8859-2 ISO8859-5 ISO8859-7 ISO8859-9 ISO8859-15 ISO10646-1 KOI8-R
        UniCharset = ISO8859-1 ISO8859-2 ISO8859-5 ISO8859-7 ISO8859-9 ISO8859-15 KOI8-R
        GeneralFamily = SansSerif
        Weight = Medium
        Width = Variable
        Shape = NoSerif Upright
        Priority = 20
end

и регистрироваться, действительно, с помощью defoma-font.

В результате в /var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType создавалась символическая ссылка на файл шрифта и обновлялись fonts.dir/fonts.scale/fonts.alias. Проблема в том, что, как выясняется, defoma не может вести себя как «умный» инструмент (в отличие от mkfontscale, он не умеет вытаскивать метаинформацию непосредственно из шрифта, и эту работу должен провести человек, поддерживающий соотв. пакет), и функциональность mkfontscale фактически дублируется.

В любом случае, выпиливание defoma (как и xfs), я так понимаю, — политическое решение. На https://www.debian.org/devel/wnpp/ я не нашёл ни одного, ни другого. Или при наличии инициативы их ещё можно вернуть в unstable?

Bass ★★★★★
() автор топика
Последнее исправление: Bass (всего исправлений: 2)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.