«前の日記(2012-12-27) 最新 次の日記(2013-01-26)» 編集

meta's blog - The Power To Serve

筆者について

FreeBSDを通じてOSSにささかな貢献を。

OSS活動をご支援いただける方を募集しています


2013-01-14 pkgng

従来のパッケージ管理から pkg (pkgng) に移行してみる

FreeBSD のパッケージ管理を pkg (pkgng) に移行してみます。pkgng については今更説明するほどのものでもないので FreeBSD Daily topics を参照してください。

環境は 9.1-RELEASE で普通にデスクトップ環境として使っていたもので、900近いパッケージが既にインストールされているので全 ports をインストールし直しとかそういう面倒なのは極力避ける方向で。

[meta@icepick ~]$ pkg_info|wc -l
     882

はじめに ports-mgmt/pkg をインストール。これはまだ従来のパッケージ管理方法でインストールします。

# portinstall ports-mgmt/pkg

pkg_info から pkg がインストールされているのが確認できれば OK。

次に root で pkg2ng を実行する。

[meta@icepick ~]$ sudo pkg2ng
パスワード:
Creating backup pkg_info(1) database directory in /var/db/pkg.bak.
pkg: duplicate directory listing: /usr/local/lib/X11/fonts/GentiumBasic/, ignoring
Installing GentiumBasic-110... done
Installing ImageMagick-6.8.0.7... done
Installing ORBit2-2.14.19... done
Installing OpenEXR-1.7.0... done
Installing OpenSP-1.5.2_2... done
Installing Thunar-1.6.2_1... done
...
!!! Some packages failed to register !!!
Please fix them by upgrading them or removing them
or rerun "PERMISSIVE=yes pkg2ng" if you *really* must
Failed packages:  xorg-server-1.7.7_6,1

なんかエラーになった。 途中のログ出力を見てみると、

Installing xorg-server-1.7.7_6,1...pkg: xorg-server-1.7.7_6,1 conflicts with tigervnc-1.2.0 (installs files into the same place).  Problematic file: /usr/local/man/man1/Xserver.1.gz
Registration of xorg-server-1.7.7_6,1 failed.
name: xorg-server
version: 1.7.7_6,1
origin: x11-servers/xorg-server
comment: |
  X.Org X server and related programs
maintainer: x11@FreeBSD.org
prefix: /usr/local
licenselogic: single
deps:

これは自分で作った野良 port が原因だったのでひとまず PERMISSIVE=yes をつけて再実行して終了。

あとは /etc/make.conf に

WITH_PKGNG=yes

と書いておく。