Arch Linuxのインストールは http://itouhiro.hatenablog.com/entry/20140730/linux を参照。
まずは Arch Build System をインストール。
# pacman -S abs
https://www.archlinux.org/packages/extra/i686/fontforge/
を見ると「Repository: Extra」とある。
/etc/abs.conf でextraの前に ! がないか確認する。
REPOS=(core extra !community !testing !community-testing !staging !community-staging !gnome-unstable !kde-unstable)
absコマンドを実行して、absツリーを取得。
# abs
/etc/makepkg.conf を書き換えてPACKAGERを設定。
#PACKAGER="John Doe <john@doe.com>" PACKAGER="Itou Hiroki <itouhiro !atmark! users.sourceforge.jp>"
このあとはrootではなく、一般ユーザーで実行します。
ビルドディレクトリの作成
$ mkdir ~/abs $ cp -pr /var/abs/extra/fontforge ~/abs/ $ cd ~/abs/fontforge/
日本語パッチの準備
http://www.geocities.jp/meir000/fontforge/ の日本語縦書きパッチを取得。
$ wget http://www.geocities.jp/meir000/fontforge/fontforge-20140104-vmetrics.patch.txt $ sha1sum fontforge-20140104-vmetrics.patch.txt $ vi PKGBUILD
編集する箇所
--- PKGBUILD.orig 2014-07-31 07:05:48.000000000 +0900 +++ PKGBUILD 2014-07-31 16:20:41.938494158 +0900 @@ -16,10 +16,12 @@ 'python2' 'desktop-file-utils' 'gtk-update-icon-cache' 'hicolor-icon-theme') source=("https://github.com/fontforge/fontforge/archive/${_pkgver}.tar.gz" 'http://fontforge.org/cidmaps.tgz' - 'giflib.patch') + 'giflib.patch' + 'fontforge-20140104-vmetrics.patch.txt') sha1sums=('abce297e53e8b6ff6f08871e53d1eb0be5ab82e7' 'efbc7c9d3e95159f5600dc71f9cccb370e46bb94' - '420dd1dd75d72719f3203d832bfa8c1c7e7eef86') + '420dd1dd75d72719f3203d832bfa8c1c7e7eef86' + 'f056b3ae8afb432b289000c2193c221cddc5830f') options=('!makeflags') install=install @@ -28,6 +30,7 @@ cd "${srcdir}/${pkgname}-${_pkgver}" sed '/fontforge_package_name/s/^#//' -i configure.ac patch -p1 -i ../giflib.patch + patch -p1 -i ../fontforge-20140104-vmetrics.patch.txt ./autogen.sh }
ビルド
$ makepkg -s
ビルドを待つ。
[foo@localhost fontforge]$ makepkg -s /usr/bin/makepkg: eval: line 2272: unexpected EOF while looking for matching `"' /usr/bin/makepkg: eval: line 2273: syntax error: unexpected end of file ==> Making package: fontforge 20140101-3 (Thu Jul 31 16:14:44 JST 2014) ==> Checking runtime dependencies... ==> Installing missing dependencies... warning: skipping target: libspiro resolving dependencies... looking for inter-conflicts... Packages (7): libsodium-0.6.1-1 giflib-5.1.0-1 libspiro-1:0.2-1 libunicodenames-1.1.0_beta1-1 libxkbui-1.0.2-5 python2-2.7.8-1 zeromq-4.0.4-3 Total Download Size: 10.07 MiB Total Installed Size: 72.74 MiB :: Proceed with installation? [Y/n] Y ... ==> Making package: fontforge 20140101-3 (Thu Jul 31 16:22:16 JST 2014) ==> Checking runtime dependencies... ==> Checking buildtime dependencies... ==> Retrieving sources... -> Found 2.0.20140101.tar.gz -> Found cidmaps.tgz -> Found giflib.patch -> Found fontforge-20140104-vmetrics.patch.txt ==> Validating source files with sha1sums... 2.0.20140101.tar.gz ... Passed cidmaps.tgz ... Passed giflib.patch ... Passed fontforge-20140104-vmetrics.patch.txt ... Passed ==> Extracting sources... -> Extracting 2.0.20140101.tar.gz with bsdtar -> Extracting cidmaps.tgz with bsdtar ==> Starting prepare()... patching file gutils/gimagereadgif.c patching file fontforge/splinechar.c patching file fontforge/splinefont.c patching file fontforge/tottfgpos.c patching file fontforgeexe/charview.c patching file fontforgeexe/cvpointer.c Preparing the fontforge build system...please wait Found GNU Autoconf version 2.69 ... ==> Creating package "fontforge"... -> Generating .PKGINFO file... -> Adding install file... -> Generating .MTREE file... -> Compressing package... ==> Leaving fakeroot environment. ==> Finished making: fontforge 20140101-3 (Thu Jul 31 17:17:25 JST 2014) [foo@localhost fontforge]$ ls ./ fontforge-20140101-3-i686.pkg.tar.xz pkg/ ../ fontforge-20140104-vmetrics.patch.txt PKGBUILD 2.0.20140101.tar.gz giflib.patch PKGBUILD.orig cidmaps.tgz install src/ [foo@localhost fontforge]$
patchも適切に適用されたようである。
これをインストール。
$ sudo pacman -U fontforge-20140101-3-i686.pkg.tar.xz