[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[pbsd-mg2] Re: MC-R700 status



鈴木(康)です。
<199907270802.RAA05008@srapc342.sra.co.jp>の記事において
soda@sra.co.jpさんは書きました。

  | > base の話をする前に comp を例にとって説明したいと思います。
  | 	:
  | > こうした場合に、単純な分割ではちょっと要求を満たさないのではないかと
  | > 思います。データベースを作って 1) - 5) を指定すると
  | > 必要なファイルのリストが取り出せるようになっていると、
  | > 非常に嬉しいです。
  | 
  | 確かにそうです。
  | この辺、本家でも昔から時々話題にはなっているんですが、あんまり進んで
  | いません。真剣にやるのなら、Linux のいくつかの distribution で行われて
  | いるように、OS 本体も、小さなバイナリ・パッケージの集合として扱う他な
  | いと思いますが…

物理的に小さなバイナリ・パッケージの集合にする必要はなくて、
リストアップだけできれば十分かと思います。

  | 組み込み向けの応用の話とか常にありますし、これ自体はまともな要求すから、
  | うまい方法さえあれば、本家に統合してもらえる可能性は十分あります。
  | そうすると、メンテは本家でやってもらえるわけで、PocketBSD プロジェクト
  | の手間は確実に減ります。
  | base (あるいは comp、その他、既存の set) を分割するというのなら、
  | それほど大きな変更ではありませんから、提案して受け入れられる見込みは
  | 十分あると思います。
  | 
  | 小さなバイナリ・パッケージの集合にするというのは、まともな解決方法では
  | あるんですが、作業の手間がかなり大きそうですから、簡単には提案も実現も
  | できそうにありません…

こんな感じで作ってみたらどうかという案(というかイメージ)を
書いてみますので、提案可能かどうか考えていただけませんでしょうか。


まず全ディストリビュートファイルに対して package 名 と
配布ファイル名と "カテゴリ" を与える ファイルをテキストで作る。

例:

/usr/bin/sed			sed base prog
/usr/share/man/cat1/sed.0	sed man man
/usr/share/man/man1/sed.1	sed man catman

これぐらいだったら、src の Makefile 検索と 配布ファイルの中を
サーチすれば、 自動でかなりのものが出来るように思います。

あとは、上で定義した package 名を使って グルーピングしていって
メタパッケージを定義していく。

メタパッケージ間の 依存関係や包含関係を定義できるのが理想だけれども、
そこまでできなくても 使えるような気がする。

メタパッケージのファイルの形式は、とか考えるとよく判らなくなって
くるのでやめときます。

# これで考えて欲しいというのはナニなんですが、
# まだあんまり練れていないので、イメージだけになってしまいました。

  | > # でも、そういったデータベースを作るのは、我々の手にあまる
  | > # のではないかと思います。
  | 
  | 面倒なことは、あとまわしするのはどうでしょう? :-)
  | 初代モバイル・ギア (FreeBSD) 版では、どこまで分けているのでしょうか?
  | 当面は、モバイル・ギア版でできている程度のことができれば良いように
  | 思いますが…

これはいろいろ議論があったように覚えていますが、あんまり実現できて
いないような気がします。

基本的に package の方に重きがおかれていて、1 つのパッケージについて
ミニマムだとか ランタイムのみだとか 選びたいといった話が出たりして
いたのだけれども、独自のミニパッケージを作っていくことで、
落ち着いたような...

--
					鈴木 康司 @NEC
					suz@hpc.bs1.fc.nec.co.jp
					TEL 0423-33-5381