wiki:PackageManager

Version 6 (modified by daisuke, 13 years ago) (diff)

--

Package Manager の更新について

現状について

パッケージマネージャおよびそのUIとしては、現在以下のようなものが採用されています。

パッケージマネージャ
  • rpm-4.4.2.x + apt-rpm-0.5.15lorg3.x
パッケージマネージャUI
  • Synaptic-0.57.2
  • Aptitude

ベース

  • 基本的には rpm は今後も変更はない予定で問題ない。
  • apt の alternative としては、 apt-rpm, yum, yast, urpmi, smart などがあるが、機能はさまざま。
    • apt-rpm
      • apt-rpm と debian apt との解離が心配
      • 速度は他のものと比べると問題ない(が、debian apt と比べると遅い。改善の余地アリ)
    • yum
      • 遅い
      • パッケージマネージャのために python?
    • yast
      • SuSEのシステムツール。パッケージマネージャ以外もすべて統合されている。
      • Vine で使うには対象外。
    • urpmi
      • Mandriva のパッケージシステム。特に目立った特徴なし。
    • smart
      • apt-rpm の前メンテナが開発しているパッケージマネージャ。UIも統合している。
      • 機能的にはすこし貧弱だが、単純な分使いやすい面もある。
      • apt の速度に敵うものは smart くらい?

apt-rpm と smart の併用がよさそう。

リポジトリ

現状の apt-rpm でつかえるリモートリポジトリは2つ。

  • apt-rpm ネイティブリポジトリ
    • 従来のリポジトリ形式
    • ファイルリストをもたせることも可能
      • パッケージデータが膨大になる
      • ファイル名で検索できる
    • リポジトリ作成システムが若干貧弱で遅い
      • apt4rpm を使うといい?
  • repomd
    • yum などでつかわれている
    • リポジトリデータが若干冗長で重い
    • リポジトリ作成システムがすこしマシ(遅い)

おそらく今後もネイティブリポジトリ。 リポジトリ作成システム(genbasedir)は改善の余地あり。

GUI

GUI としては Synaptic は Vine Linux 3.0 の時から採用されて既に3年が経っています。 Vine Linux 標準の Package Manager UI として十分定着しているとは思いますが、最近では本家の更新が滞ってきているようで、4.2 で採用している 0.57.2 も2年前にリリースされたものです。

5.0 より先を見据えた上で、上流での開発が停滞したまま使いつづけるべきか、あるいは新しい Package Manger に更新すべきか検討する必要があります。

候補

  • Smart Package Manager
    • 最新の 0.52 が Seed 上で利用できるのは一応確認済み。
    • ただしメッセージがすべて未翻訳だったり、グループもすべて英語表示だったりするので、日本語化には多少手間が掛かりそう。
    • apt や yum など様々なリポジトリに対応している
    • 他のパッケージマネージャをバックエンドに使っておらず、バックエンドもUIもすべて独自に処理。
      • 現状の apt/synaptic 前提の一部のパッケージで問題あり
      • apt の scripting をつかっているものが対応困難(smartの拡張機能は貧弱)
    • 開発自体は現在も続いているようだが、メインのDeveloperさんが ubuntu/canonical に取り込まれたそうで、その影響がどうでるか不明。
    • 一応 SuSE や Fedora でも一部利用されている。
    • 本家  http://labix.org/smart
    • apt と併用が無難。(daisuke)
  • PackageKit
    • debian の python-apt が必要とされていることも有り、現時点(2007/12)では Seed 上で利用できるかどうか未確認。
      • apt-0.6 以降ではないとだめだとおもわれる。
    • Security Framework に PolicyKit? を推奨しているが、これについても未検証。
    • ただし次期 Fedora で採用されるとう話もあり、現時点では将来性有望と思われる。
    • また公式の Screen Shot では、パッケージの自動更新や、更新後にリブートを促す仕組みなど、Usability 的にも良さそうではある。
    • 本家  http://www.packagekit.org/
    • python-apt for debian sid  http://packages.debian.org/ja/sid/python-apt
  • Synaptic を継続
    • apt の更新への対応をどうするか(Patch を作り続けるのかとか)検討が必要。
    • 最近の Package Manager に望まれるような機能の追加が見込めない場合、別の対応を考える必要がある。
      • 更新の通知機能とか
    • Synaptic 自体は現在 Ubuntu で開発がすすめられており、apt-rpm への対応が放置されたままになっている。
      • 公式にリリースされないまま機能拡張がすすんでいる
      • 積極的に開発に協力して apt-rpm 対応が upstream で維持されるように頑張る?
      • fork する?
  • その他?