Fonts Policy — различия между версиями

Материал из ALT Linux Wiki
Перейти к: навигация, поиск
м (post/%postun: cosmetix)
Строка 1: Строка 1:
[[Category:Policy]]
+
{{DraftPolicy|responsible=mike,lav}}
  
 
== Шрифты ==
 
== Шрифты ==
Строка 8: Строка 8:
  
 
Подкаталог первого уровня определяется типом шрифта и выбирается из:
 
Подкаталог первого уровня определяется типом шрифта и выбирается из:
* '''type1''' Type 1;
+
* '''type1''' — Type 1;
* '''ttf''' TrueType;
+
* '''ttf''' — TrueType;
* '''otf''' OpenType;
+
* '''otf''' — OpenType;
* '''bitmap''' растровые;
+
* '''bitmap''' — растровые;
* '''speedo''' растровые в формате Speedo (давно не используются и сборка соответствующего модуля в xorg-server отключена).
+
* '''speedo''' — растровые в формате Speedo (давно не используются и сборка соответствующего модуля в xorg-server отключена).
  
Подкаталог второго уровня — сообразно имени шрифта (%fname).
+
Подкаталог второго уровня — сообразно имени шрифта (%fname).
  
 
X-сервер не использует fontconfig, у него своя схема загрузки шрифтов,
 
X-сервер не использует fontconfig, у него своя схема загрузки шрифтов,
Строка 31: Строка 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 — 20;
+
* bitmap — 20;
* type1 — 40;
+
* type1 — 40;
* ttf — 50;
+
* ttf — 50;
* otf — 50.
+
* otf — 50.
  
 
Символические ссылки должны быть запакованы в пакет вместе с каталогами,
 
Символические ссылки должны быть запакованы в пакет вместе с каталогами,
Строка 52: Строка 52:
  
 
BuildRequires:
 
BuildRequires:
* bitmap — '''xorg-x11-font-utils'''
+
* bitmap — '''xorg-x11-font-utils'''
* type1 — '''mkfontscale'''
+
* type1 — '''mkfontscale'''
* ttf — '''mkfontscale'''
+
* ttf — '''mkfontscale'''
* otf — '''mkfontscale'''
+
* otf — '''mkfontscale'''
  
 
Requires:
 
Requires:
Строка 66: Строка 66:
  
 
Для type1-, ttf-, otf-шрифтов fonts.scale создается с помощью '''mkfontscale''',
 
Для type1-, ttf-, otf-шрифтов fonts.scale создается с помощью '''mkfontscale''',
а fonts.dir — это символическая ссылка на fonts.scale:
+
а fonts.dir — это символическая ссылка на fonts.scale:
  
 
<pre>mkfontscale %buildroot%_fontsdir/%fname
 
<pre>mkfontscale %buildroot%_fontsdir/%fname

Версия 14:56, 8 сентября 2008

Stub.png
Черновик политики Sisyphus
Автор(ы) — mike,lav


Шрифты

Соглашения по размещению

Пакеты со шрифтами в 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
%post_fonts

%postun
%postun_fonts

Эти макросы содержатся в пакете rpm-build-fonts.