Fonts Policy
Материал из ALT Linux Wiki
м («Fonts» переименована в «Drafts/Fonts»: it's a policy draft, after all) |
(wikification) |
||
Строка 1: | Строка 1: | ||
[[Category:Policy]] | [[Category:Policy]] | ||
- | |||
== Шрифты == | == Шрифты == | ||
Строка 6: | Строка 5: | ||
=== Соглашения по размещению === | === Соглашения по размещению === | ||
- | Пакеты со шрифтами в ALT Linux устанавливают содержимое в подкаталоги каталога '''%_datadir/fonts/''', | + | Пакеты со шрифтами в ALT Linux устанавливают содержимое в подкаталоги каталога '''%_datadir/fonts/''' ('''/usr/share/fonts/'''), fontconfig по умолчанию настроен именно на этот каталог. |
- | fontconfig по умолчанию настроен именно на этот каталог. | + | |
Подкаталог первого уровня определяется типом шрифта и выбирается из: | Подкаталог первого уровня определяется типом шрифта и выбирается из: | ||
- | '''type1''' — Type 1; | + | * '''type1''' — Type 1; |
- | '''ttf''' — TrueType; | + | * '''ttf''' — TrueType; |
- | '''otf''' — OpenType; | + | * '''otf''' — OpenType; |
- | '''bitmap''' — растровые; | + | * '''bitmap''' — растровые; |
- | '''speedo''' — растровые в формате Speedo (давно не используются и | + | * '''speedo''' — растровые в формате Speedo (давно не используются и сборка соответствующего модуля в xorg-server отключена). |
- | сборка соответствующего модуля в xorg-server отключена). | + | |
- | Подкаталог второго уровня — сообразно имени шрифта (fname). | + | Подкаталог второго уровня — сообразно имени шрифта (%fname). |
- | X сервер не использует fontconfig, у него своя схема загрузки шрифтов, | + | |
+ | X-сервер не использует fontconfig, у него своя схема загрузки шрифтов, | ||
по умолчанию использующая каталог '''%_sysconfdir/X11/fontpath.d/''', | по умолчанию использующая каталог '''%_sysconfdir/X11/fontpath.d/''', | ||
- | в который | + | в который помещаются символические ссылки на подкаталог второго уровня. |
- | Имена символических ссылок имеют вид '''%type-%fname[:unscaled]:pri=XX''' | + | Имена символических ссылок имеют вид '''%type-%fname[:unscaled]:pri=XX''' |
Примеры создания таких ссылок в spec-файлах: | Примеры создания таких ссылок в spec-файлах: | ||
Строка 33: | Строка 31: | ||
%buildroot%_sysconfdir/X11/fontpath.d/ttf-dejavu:pri=50</pre> | %buildroot%_sysconfdir/X11/fontpath.d/ttf-dejavu:pri=50</pre> | ||
- | где ''':pri=XX''' | + | где ''':pri=XX''' — это приоритет загрузки шрифтов, который зависит от типа шрифта: |
- | bitmap | + | * bitmap — 20; |
- | type1 | + | * type1 — 40; |
- | ttf | + | * ttf — 50; |
- | otf | + | * otf — 50. |
Символические ссылки должны быть запакованы в пакет вместе с каталогами, | Символические ссылки должны быть запакованы в пакет вместе с каталогами, | ||
на которые они указывают. | на которые они указывают. | ||
- | === Дополнение для локалезависимых bitmap шрифтов === | + | === Дополнение для локалезависимых bitmap-шрифтов === |
- | Локалезависимые bitmap шрифты обычно имеют подкаталоги третьего уровня (cname), | + | Локалезависимые bitmap-шрифты обычно имеют подкаталоги третьего уровня (%cname), |
примером может служить пакет fonts-bitmap-cyrillic: | примером может служить пакет fonts-bitmap-cyrillic: | ||
'''%_datadir/fonts/bitmap/%fname/%cname''' | '''%_datadir/fonts/bitmap/%fname/%cname''' | ||
+ | |||
Символическая ссылка в /etc/X11/fontpath.d будет иметь имя | Символическая ссылка в /etc/X11/fontpath.d будет иметь имя | ||
'''bitmap-%fname-%cname:unscaled:pri=10''' | '''bitmap-%fname-%cname:unscaled:pri=10''' | ||
Строка 53: | Строка 52: | ||
BuildRequires: | BuildRequires: | ||
- | bitmap | + | * bitmap — '''xorg-x11-font-utils''' |
- | type1 | + | * type1 — '''mkfontscale''' |
- | ttf | + | * ttf — '''mkfontscale''' |
- | otf | + | * otf — '''mkfontscale''' |
Requires: | Requires: | ||
- | fontconfig >= 2.4.2 | + | '''fontconfig >= 2.4.2''' |
=== fonts.scale, fonts.dir === | === fonts.scale, fonts.dir === | ||
- | Для bitmap шрифтов fonts.dir обычно идет в комплекте или создается | + | Для bitmap-шрифтов fonts.dir обычно идет в комплекте или создается Makefile’ом, |
- | а fonts.scale | + | а fonts.scale не требуется. |
- | Для type1, ttf, otf шрифтов fonts.scale создается с помощью '''mkfontscale''', | + | |
- | fonts.dir | + | Для type1-, ttf-, otf-шрифтов fonts.scale создается с помощью '''mkfontscale''', |
+ | а fonts.dir — это символическая ссылка на fonts.scale: | ||
<pre>mkfontscale %buildroot%_fontsdir/%fname | <pre>mkfontscale %buildroot%_fontsdir/%fname | ||
Строка 73: | Строка 73: | ||
=== post/postun === | === post/postun === | ||
- | post/postun для всех шрифтов одинаков: | + | %post/%postun для всех шрифтов одинаков: |
- | + | <pre> | |
- | <pre>%post | + | %post |
- | % | + | %post_fonts |
%postun | %postun | ||
- | + | %postun_fonts | |
- | + | </pre> | |
- | + | ||
- | + | ||
- | + | ||
- | + | Эти макросы содержатся в пакете [[Drafts/Fonts/RpmBuildFonts|rpm-build-fonts]]. |
Версия 11:31, 8 сентября 2008
Содержание |
Шрифты
Соглашения по размещению
Пакеты со шрифтами в ALT Linux устанавливают содержимое в подкаталоги каталога %_datadir/fonts/ (/usr/share/fonts/), fontconfig по умолчанию настроен именно на этот каталог.
Подкаталог первого уровня определяется типом шрифта и выбирается из:
- type1 — Type 1;
- ttf — TrueType;
- otf — OpenType;
- bitmap — растровые;
- speedo — растровые в формате Speedo (давно не используются и сборка соответствующего модуля в xorg-server отключена).
Подкаталог второго уровня — сообразно имени шрифта (%fname).
X-сервер не использует fontconfig, у него своя схема загрузки шрифтов, по умолчанию использующая каталог %_sysconfdir/X11/fontpath.d/, в который помещаются символические ссылки на подкаталог второго уровня. Имена символических ссылок имеют вид %type-%fname[:unscaled]:pri=XX
Примеры создания таких ссылок в spec-файлах:
ln -s ../../..%_datadir/fonts/bitmap/misc \ %buildroot%_sysconfdir/X11/fontpath.d/bitmap-misc:unscaled:pri=20 ln -s ../../..%_datadir/fonts/type1/urw \ %buildroot%_sysconfdir/X11/fontpath.d/type1-urw:pri=40 ln -s ../../..%_datadir/fonts/ttf/dejavu \ %buildroot%_sysconfdir/X11/fontpath.d/ttf-dejavu:pri=50
где :pri=XX — это приоритет загрузки шрифтов, который зависит от типа шрифта:
- bitmap — 20;
- type1 — 40;
- ttf — 50;
- otf — 50.
Символические ссылки должны быть запакованы в пакет вместе с каталогами, на которые они указывают.
Дополнение для локалезависимых bitmap-шрифтов
Локалезависимые bitmap-шрифты обычно имеют подкаталоги третьего уровня (%cname), примером может служить пакет fonts-bitmap-cyrillic: %_datadir/fonts/bitmap/%fname/%cname
Символическая ссылка в /etc/X11/fontpath.d будет иметь имя bitmap-%fname-%cname:unscaled:pri=10
Requires, BuildRequires
BuildRequires:
- bitmap — xorg-x11-font-utils
- type1 — mkfontscale
- ttf — mkfontscale
- otf — mkfontscale
Requires: fontconfig >= 2.4.2
fonts.scale, fonts.dir
Для bitmap-шрифтов fonts.dir обычно идет в комплекте или создается Makefile’ом, а fonts.scale не требуется.
Для type1-, ttf-, otf-шрифтов fonts.scale создается с помощью mkfontscale, а fonts.dir — это символическая ссылка на fonts.scale:
mkfontscale %buildroot%_fontsdir/%fname ln -s fonts.scale %buildroot%_fontsdir/%fname/fonts.dir
post/postun
%post/%postun для всех шрифтов одинаков:
%post %post_fonts %postun %postun_fonts
Эти макросы содержатся в пакете rpm-build-fonts.