Solaris11Express でlocal repository を設定する方法
ということで、Solaris 11 Express がリリースされてしばらく経ち、マシンが壊れたのを機会に新規インストールしました。
インストールはすぐ出来たのですが、困ったのはAdobeReaderなどのSVR4 pkgで配布されているパッケージの扱い。とりあえず、pkgadd でそのままインストールしたのですが、やはりlocal repository を立てて、pkgsend でSVR4→IPS に変換したいところ。で、いつものように svcs://application/pkg/serrver:default のポートとディレクトリを変更してenableにしてみたのですが、指定したポートでサービスが上がったにもかかわらず、pkg set-publisherで以下のように怒られます。
% sudo pkg set-publisher -g http://localhost:10000/ localreop
pkg set-publisher:
localreop のパッケージリポジトリの起点の 1 つに、発行元の構成情報が含まれていないか、含まれている情報が不完全です。
で色々調べたところ、リポジトリに対して、以下のように変数を指定する必要があるようです。
pkgrepo set -s /pkg/local publisher/prefix=localrepo
その後、pkgrepo rebuild(本当に必要かどうかは不明)して、pkg/server をrestart したら、ちゃんとlocal repository がpkgに指定出来ました。