Fink

Advanced - 1. バイナリ・ディストリビューション・サーバーの設定

1.1 はじめに

本節では、複数の Fink ユーザーの環境へバイナリを提供するための中央ビルドサーバーを構築方法について解説します。

(注記: この文書中では fink version >= 0.24.0 を想定しています。 これより古いバージョンの場合は注意点を参照してください。)

"master" サーバーclient マシンでの作業が必要となります:

1.2 "master" (build) サーバーでの作業

  1. Fink を /opt/sw にインストール (既定のパス、あるいは必要に応じて symlink を作成)。
  2. パッケージを通常通りビルド。 ビルドのみ必要で、インストールする必要はない。
  3. ビルドしたパッケージのあるディレクトリ内で fink scanpackages を実行。 これにより、 fink は有効なツリー内の apt インデックスを作成する。

    若しくは、 fink cleanup を実行して古いソースとバイナリパッケージを削除しても良い。 scanpackages は cleanup プロセスの最後に呼び出される。

  4. ウェブサーバーを開始: 例えば、システム環境設定中のネットワーク共有で、"パーソナルWeb共有" を開始する。 /etc/httpd/httpd.conf ファイルを以下のように編集し、 /opt/sw/fink を提供するように設定する。
    Alias /fink /opt/sw/fink
    <Directory /opt/sw/fink>
      Options Indexes FollowSymLinks
    </Directory>
  5. sudo /usr/sbin/apachectl graceful を実行し、ウェブサーバーを(再)起動する。

"master" サーバー上の、ビルド・更新したパッケージのあるディレクトリ中で fink scanpackages (または fink cleanup) を(再)実行し、 外のマシンから見えるようにする。

注記:

'fink' というユーザーを作成し、上記の行を /etc/httpd/users/fink.conf に追加しても良い。

Fink の apache2 パッケージを使用している場合は、上記のパスを適宜変更する必要がある。

1.3 クライアント・マシンでの操作

  1. Fink を /opt/sw (既定のパス) にインストール
  2. fink configure を実行し、 バイナリ・ディストリビューションからパッケージをダウンロードするようオプション設定します。 (/opt/sw/etc/fink.conf ファイル中で "UseBinaryDist: true")
  3. /opt/sw/etc/apt/sources.list を編集し、 Fink ツリーを表す行を追加します。 例えば、ビルドボックスの IP アドレスが 192.168.42.7 であれば、以下のように追加します:
    deb http://192.168.42.7/fink stable main crypto
    deb http://192.168.42.7/fink unstable main crypto
    deb http://192.168.42.7/fink local main
  4. fink selfupdateを実行します。 (verbose レベルが >=1 の場合) 更新プロセスの最後のあたりで以下のように表示されるはずです:
    ...
    Hit http://192.168.42.7 stable/main Packages
    Hit http://192.168.42.7 stable/main Release
    Hit http://192.168.42.7 stable/crypto Packages
    ...

fink update-all または fink install <package> を実行し、 "master" サーバーにバイナリがある場合は、そこからダウンロードします。

1.4 注意点

この文書の一部は、 RangerRick の "Sharing the Fink" から引用しています。 感謝!