.debサブパッケージのバージョンをオーバーライドする方法は?
-
28-09-2019 - |
質問
Drupalのコピーを含むソフトウェア用に.debを作成する必要があります。私はDrupalをパッチする必要があったので、ディストリビューションからストックDrupalを使用することはできません。結果をdrupal6-rs_6.16_all.debという名前のファイルにしたいのですが、私の制御ファイルではサブパッケージであるため、メインパッケージのバージョンを「継承」しているので、drupal6-rs_6.0.6になります。 _all.deb(6.0.6は独自のコードベースのバージョンです)。
Drupalのみのために別のDebian/*サブツリーを作成するよりも、同じDebian/*説明内からDrupalパッケージを生成できることを好みます。
これはできますか? RPMではサブパッケージのバージョンをオーバーライドすることが可能であることは知っていますが、サブパッケージのDebian/Controlヘッダーにバージョンを追加すると、(a)VIMで他のヘッダーエントリとは異なって強調表示されます。無効。
解決
私は時々rtfmする必要があります。見る man dh_installchangelogs
. 。それが持っている理由があります s
それに接尾辞!
はい、それはあなたのようです できる バイナリパッケージのバージョンを複数のバイナリソースパッケージにオーバーライドします。
他のヒント
1つしかないので debian/changelog
ファイルごとのファイルパッケージ、ソースパッケージごとに1つのバージョンしかないことができると思います。 Debianパッケージ追跡システムを見ると、常に1つのバージョン番号(ソースパッケージ)を参照してください。したがって、ソースパッケージが構築するバイナリパッケージには、同じバージョン番号があります。
これにより、2つのオプションが残ります -
正しい方法で物事をしてください - パッチDrupal(多分
dpatch
, 、DebianのDrupalパッケージがすでに使用しているように)、それ自体が別のソースパッケージとして残します。バージョン番号の接尾辞を置きます(例:6.17-1yourcompany1
)。次に、独自のソフトウェア用のパッケージを作成し、ソフトウェアにDrupalに依存させます。今、あなたは頼ることができますdrupal6 (=6.17-1yourcompany1)
だからあなたはみんなを知っています もっている 実際にパッチを手に入れました。個人リポジトリを使用してソフトウェアを配布することをお勧めします。あなたが持っているもう1つの選択肢は、ハッキーな方法を使用することです。別のものを使いたくないので
debian/
フォルダー、1つを使用してください。ソースパッケージから2つのバイナリまたは1つ(すべてが大きなパッケージに統合された)を作成するかどうかにかかわらず、DrupalまたはCodeBaseのバージョン番号を決定するのはあなた次第です。