[devel] chkfontpath
Valery V. Inozemtsev
=?iso-8859-1?q?shrek_=CE=C1_altlinux=2Eru?=
Чт Авг 30 20:23:19 MSD 2007
...
поясняю еще раз по порядку
на данный момент /etc/X11/fs/config, chkfontpath и иже с ними являются крайне неудобным решением,
т.к. при установке шрифта надо править конфиг и эти шрифты мы получим только после рестарта иксов.
/etc/X11/fs/config вообще находится в пакете никак не относящемуся ни к иксам ни к шрифтам
теперь собственно по обновлению всего этого хозяйства
1. пересборка всех пакетов со шрифтами в которых будет следующее (для примера взят fonts-ttf-liberation.spec):
...
PreReq: fontconfig >= 2.4.2
...
BuildRequires: mkfontscale
...
%install
%__mkdir_p %buildroot%_fontsdir/%fname
%__install -m644 *.ttf %buildroot%_fontsdir/%fname
%_bindir/mkfontscale %buildroot%_fontsdir/%fname
%__ln_s fonts.scale %buildroot%_fontsdir/%fname/fonts.dir
%__mkdir_p %buildroot%_sysconfdir/X11/fontpath.d
%__ln_s ../../..%_fontsdir/%fname %buildroot%_sysconfdir/X11/fontpath.d/ttf-%fname:pri=50
имена симлинков в /etc/X11/fontpath.d следующие:
для ttf шрифтов ttf-%name:pri=50
для otf - otf-%name:pri=50
для type1 - type1-%name:pri=40
для bitmap - bitmap-%name:pri=20 если шрифты не зависят от локали и bitmap-%name:pri=10 для зависимых
от локали.
":pri=" это порядок в котором шрифты будет выбираться
далее триггер (только для пакетов у которых не меняется имя, изменяется только %version или %release):
%triggerin -- %name <= 0.2-alt1
[ ! -x %_sbindir/chkfontpath -a ! -f %_sysconfdir/X11/fs/config ] || \
%_sbindir/chkfontpath -q -r %_fontsdir/%fname ||:
выполнен он будет соответственно только один раз. проверки нужны потому что точно не знаем
есть у нас на данный момент chkfontpath или /etc/X11/fs/config (как там apt будет их сносить/устанавливать
доподлинно не известно).
2. конфликт на chkfontpath будет в xorg-x11-xfs после того как будет произведена
пересборка всех шрифтовых пакетов (или не будет, семеро одного не ждут) и будет новый setup
далее по спеку:
%post
%_bindir/fc-cache %_fontsdir/%fname ||:
%files
%doc License.txt
%_sysconfdir/X11/fontpath.d/*
%_fontsdir/%fname
что тут заворачивать в макросы мне не понятно. спек для примера во вложении
--
Valery V. Inozemtsev
----------- следующая часть -----------
%define fname liberation
%define _fontsdir %_datadir/fonts/ttf
Name: fonts-ttf-%fname
Version: 0.2
Release: alt2
Summary: Fonts to replace commonly used Microsoft Windows Fonts
License: GPL+exception
Group: System/Fonts/True type
Url: https://www.redhat.com/promo/fonts/
Packager: Valery Inozemtsev <shrek на altlinux.ru>
PreReq: fontconfig >= 2.4.2
Source: https://www.redhat.com/f/fonts/liberation-fonts-ttf-3.tar.gz
BuildArch: noarch
BuildRequires: mkfontscale
%description
The Liberation Fonts are intended to be replacements for the three
most commonly used fonts on Microsoft systems: Times New Roman,
Arial, and Courier New.
%prep
%setup -q -n %fname-fonts-%version
%install
%__mkdir_p %buildroot%_fontsdir/%fname
%__install -m644 *.ttf %buildroot%_fontsdir/%fname
%_bindir/mkfontscale %buildroot%_fontsdir/%fname
%__ln_s fonts.scale %buildroot%_fontsdir/%fname/fonts.dir
%__mkdir_p %buildroot%_sysconfdir/X11/fontpath.d
%__ln_s ../../..%_fontsdir/%fname %buildroot%_sysconfdir/X11/fontpath.d/ttf-%fname:pri=50
%triggerin -- %name <= 0.2-alt1
[ ! -x %_sbindir/chkfontpath -a ! -f %_sysconfdir/X11/fs/config ] || \
%_sbindir/chkfontpath -q -r %_fontsdir/%fname ||:
%post
%_bindir/fc-cache %_fontsdir/%fname ||:
%files
%doc License.txt
%_sysconfdir/X11/fontpath.d/*
%_fontsdir/%fname
%changelog
* Tue Aug 28 2007 Valery Inzemtsev <shrek на altlinux.ru> 0.2-alt2
- used %_sysconfdir/X11/fontpath.d, adieu chkfontpath
* Mon Aug 06 2007 Valery Inzemtsev <shrek на altlinux.ru> 0.2-alt1
- 0.2
* Sun May 13 2007 Vitaly Lipatov <lav на altlinux.ru> 0.1-alt1
- initial build for ALT Linux Sisyphus
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип : application/pgp-signature
Размер : 189 байтов
Описание: This is a digitally signed message part.
Url : <http://lists.altlinux.org/pipermail/devel/attachments/20070830/396ec533/attachment-0001.bin>
Подробная информация о списке рассылки Devel