追加フォント用 RPM パッケージ
Wine の C ドライブや設定は、デフォルトで
$HOME/.wine 以下に生成されます。そのため設定を大きく変えるときなどには、
$HOME/.wine の名前を変更するか削除してもう一度作り直す事ができます。オリジナルの Wine では供給されていない日本語 TTF フォントなどは、自前で用意して
~/.wine/drive_c/windows/Fonts に直接コピーして使っていましたが、毎回、
$HOME/.wine を変更する度に日本語 TTF などのフォントをコピーするのはさすがに面倒になりました。
Wine が使用するオリジナルのフォントは、
%{_datadir}/wine/fonts にインストールされていますので、足りないフォントをそこにインストール出来るように RPM パッケージを作りました。ただし、追加するフォントは、フリーのフォントではなく配布できないので、SPEC ファイル
wine-fonts-plus.spec のみを示します。
Name: wine-fonts-plus
Version: 1
Release: 1%{?dist}
Summary: Additional Wine font files
Group: Applications/Emulators
License: proprietary
URL: http://www.winehq.org/
Source0: %{name}.tar.gz
NoSource: 0
BuildArch: noarch
BuildRequires: wine-fonts
BuildConflicts: wine-fonts-plus
Requires: wine-fonts
%description
Additional font set for wine.
%prep
%setup -q -n %{name}
%build
for i in $(ls %{_datadir}/wine/fonts)
do
rm -f $i;
done
%install
rm -rf %{buildroot}
install -m 0755 -d $RPM_BUILD_ROOT%{_datadir}/wine/fonts
install -m 0644 -p *.* $RPM_BUILD_ROOT%{_datadir}/wine/fonts
%clean
rm -rf %{buildroot}
%files
%defattr(-,root,root,-)
%{_datadir}/wine/fonts
%changelog
* Sun Mar 07 2010 XXXX XXXX
- initial version
追加するフォントは、ディレクトリ
wine-fonts-plus 内に保存し、以下の様に
wine-fonts-plus.tar.gz に圧縮します。
$ tar zcvf wine-fonts-plus.tar.gz wine-fonts-plus
wine-fonts-plus/
wine-fonts-plus/ariblk.ttf
wine-fonts-plus/vgasysr.fon
wine-fonts-plus/consolab.ttf
wine-fonts-plus/vgafixr.fon
:
:
:
圧縮したファイルを、RPM が参照するソースディレクトリ(私の環境では
$HOME/redhat/SOURCES)に移して、次の様にビルドすれば、rpm ファイルの出来上がりです。ちなみに、Wine 用のオリジナルのフォントが収録されている
wine-fonts パッケージのフォントと同名のフォントは、ビルド中に調べてインストールされないようにしました。
$ rpmbuild -ba wine-fonts-plus.spec
実行中(%prep): /bin/sh -e /home/bitwalk/tmp/rpm-tmp.CQF0yG
+ umask 022
+ cd /home/bitwalk/redhat/BUILD
+ LANG=C
+ export LANG
:
:
:
Processing files: wine-fonts-plus-1-1.fc12.noarch
Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <=
4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1
伸張ファイルの検査中: /usr/lib/rpm/check-files /home/bitwalk/redhat/BUILDROOT/win
e-fonts-plus-1-1.fc12.x86_64
書き込み完了: /home/bitwalk/redhat/SRPMS/wine-fonts-plus-1-1.fc12.nosrc.rpm
書き込み完了: /home/bitwalk/redhat/RPMS/noarch/wine-fonts-plus-1-1.fc12.noarch.r
pm
実行中(%clean): /bin/sh -e /home/bitwalk/tmp/rpm-tmp.fWk6qn
+ umask 022
+ cd /home/bitwalk/redhat/BUILD
+ cd wine-fonts-plus
+ rm -rf /home/bitwalk/redhat/BUILDROOT/wine-fonts-plus-1-1.fc12.x86_64
+ exit 0
$ su
パスワード:
# rpm -ivh /home/bitwalk/redhat/RPMS/noarch/wine-fonts-plus-1-1.fc12.noarch.rpm
準備中... ########################################### [100%]
1:wine-fonts-plus ########################################### [100%]
# exit
$
追加フォント導入前追加フォント導入後注意!ちなみに
wine-doors を利用している場合は、この方法は有効ではありません。どうやらレジストリをいじっている様で、Wine オリジナルのフォントが期待するように反映されません。残念ながら wine-doors を積極的には利用していないので、レジストリのどこが変更されているのかよく判っていません。