2008年2月7日木曜日

revisorの代わりその2

このエントリーをブックマークに追加 このエントリーを含むはてなブックマーク
どのrpmが必要かを決める必要がある。
そのためには最終的に入っていてほしいrpmがどのrpmに依存しているかを再帰的に探す必要がある。
となると、yum deplist で実行した結果で返ってくるdependencyで出てくるproviderを引数に渡してもう一度yum deplistを呼べばいいことになる。pythonからyumを呼び出すライブラリがあれば簡単にできそう。

yum deplistに相当するメソッドを呼んだときに得られる結果を辞書に突っ込んでいって辞書が大きくならなくなったときが終わり。

1 件のコメント:

nori さんのコメント...

/usr/share/yum-cli
に実体があるようだ。

yumcommnads.py や shell.py、cli.pyあたりを目を通した後で、import yumでがんばるか。