私たちはDebian Jessie用のパッケージを構築するためにsbuildを使用しており、これまではうまく機能しています。
しかし、一つの細部だけを申し上げます。 Jessieバックポートアーカイブからビルド依存関係の1つを取得したいと思います。
ただし、バックポートからそのパッケージ(およびそのパッケージのみ)を抽出するようにchrootを設定する方法はわかりません。
Debianシステムで適切で固定された設定を構成する方法を知っていますが、sources.list
マニュアルページにリポジトリの追加とパッケージの固定に関する情報が見つかりません。sbuild(1)
sbuild.conf(5)
答え1
IRCの@bigonのおかげで方法を見つけました。
sbuild
実行時にすでに利用可能なオプションに加えて、次のオプションをコマンドに渡します。
$ sbuild ... --build-dep-resolver=aptitude --extra-repository="deb http://deb.debian.org/debian jessie-backports main" ...
--extra-repository
Jessieバックポートは、chrootで利用可能な有効なアーカイブとして追加されます。
しかし、残念ながらそれだけでは十分ではありません。なぜならRelease
バックポートにアーカイブされたファイル"NotAutomatic: yes"
には。debian/control
--build-dep-resolver=aptitude
これが機能する場所は次のとおりです。aptitude
たとえば、不足している依存関係が偶然に見つかりましたが、apt
バックポートアーカイブでその依存関係を見つけて、そこから自動的にインポートすることにしました。
これは私の好みに比べてあまりにも「自動」なので、いくつかの明示的な修正を設定する方法を好むが、これまでこれが私が見つけた唯一の方法です。
@bigonさんありがとうございます!