ローカルカスタムパッケージのDebianパッケージのバージョン番号

ローカルカスタムパッケージのDebianパッケージのバージョン番号

特定のGoプログラムをビルドしてパッケージ化したいです。 Ubuntu 18.04とDebian 9.5(実際にはPVE 5.2)で提供されているプログラムのパッケージバージョンは、アップストリームで得られたバージョンと比較してかなり古いです。

私のビルドへの依存関係を正しくインポートすることは問題ではなく、Debianパッケージをビルドすることも問題ではありませんでした(そこで実行しました)。

私が知る必要があるのは、私のパッケージにバージョンを割り当てる方法です。このバージョンは他の人にはリリースされません。しなければならないパッケージマネージャが私のパッケージよりも新しいバージョンをリリースすると、そのパッケージがインストールされ、私のパッケージが置き換えられます(これらの場合の1つがUbuntuのパッケージである可能性がありますdo-release-upgrade)。

ビルド比較()を中断せずにこのようにパッケージに「タグ」を指定する方法はありますかdpkg --compare-versions

バックポートは通常パッケージ名(またはバージョンですか?)に含まれていることを知っていますが、これらのbpo「タグ」の完全なリストを見つけるのは難しいので、これを達成して競合を回避する方法がすでにあると思いました。したがって、主な目的は、入手可能な最新バージョンを入手しながらルールに固執することです。

ベストアンサー1

新しいアップストリームバージョンをパッケージ化しているので、次の形式のバージョンをお勧めします。

1.0-0~c0000022l+1

1.0はアップストリームバージョンです。ここでのアイデアは次のとおりです。

  • 0 は公式の Debian パッケージより低いバージョンです。たとえば、Debianよりも最新のアップストリームバージョンを提供するUbuntuパッケージに使用されます(0ubuntuここで見ることができます)。
  • 〜とにかくバージョンが-0リビジョンより低いことを確認してください(参照Debian ポリシーもっと学ぶ);
  • c0000022lは、リビジョンを自分のリビジョンとしてマークするために使用される特定のサフィックスです(bpoバックポート、debDebian Stable Updateに似ています...)。
  • 今後のアップデートのための梱包スペースをご提供いただき、+1してください。

その後、パッケージング修正のみを含むアップデートパッケージを提供する必要がある場合は、+1を受け取ります。最新のアップストリームバージョンをパッケージ化している場合は、アップストリームバージョンを適切に上げて+1から再起動できます。

同じアップストリームまたは最新のアップストリームが「公式に」パッケージ化されると、ローカルバージョンの有効なアップグレード候補になります。 Ubuntuパッケージの場合、1.0-0ubuntu ...は1.0-0〜の後にソートされます。 Debianパッケージなので、1.0-1は1.0-0の後にランク付けされます。

おすすめ記事