pbuilderビルドでローカル.debファイルをどのように使用できますか?


9

多くの場合、別のパッケージが依存するパッケージ(つまり、ビルドの依存関係)を作成する必要があります。これらすべてのパッケージを最初に私のppaでビルドするのではなく(これには時間がかかる場合があります)、pbuilderの結果ディレクトリをpbuilder自体のソースとして使用したいと思います。

これどうやってするの?フック経由でこれを行うことはできますか?

回答:


5

それらをdpkg-scanpackagesで作成された単純なリポジトリに貼り付けて、Apacheから利用できるようにすることができます。次に、リポジトリを使用するようにpbuilderのapt設定を更新します。


3
wiki.ubuntu.com/PbuilderHowto#Building With Local Packages も参照してください。ローカルファイルシステムに対するOTHERMIRRORの例がすぐに機能するかどうかはわかりません。追加のパッケージリポジトリにlocalhostパスを使用する簡単な方法を採用しました。
andol

6

これにはいくつかの方法があります。アドルで述べたように、Ubuntuのwikiがあり良い例ミニdinstallでローカルリポジトリを作成し、あなたのpbuilderのコンフィグにあることを追加することでこれを行う方法のを。dpkg-scanpackagesの使用に関するDennisの回答も同様に機能します。

私は最近、apt-ftparchiveを使用してこれを行っています。このアプローチはとても軽いので気に入っています。これが私がすることの注釈付きの例です:

# From my ~/.pbuilderrc file

# Location of the dir where you keep pbuilder hook scripts.
HOOKDIR="/home/andrew/.pbuilder-hooks"

# Path to your local repo to be used as a mirror written as apt source line.
OTHERMIRROR="deb file:///home/andrew/pbuilder/local_repo ./"

# Path to your local repo. This tells pbuilder to mount this directory so it is available in the chroot.
BINDMOUNTS="/home/andrew/pbuilder/local_repo"

# As we need to have the apt-ftparchive command, we need to insure this package is installed.
EXTRAPACKAGES="apt-utils"

また、pbuilderフックも必要です。

# From my ~/.pbuilder-hooks/D5update-local-repo file

# Path to the local repo.
LOCAL_REPO="/home/andrew/pbuilder/local_repo"

# Generate a Packages file.
(cd $LOCAL_REPO ; apt-ftparchive packages . > Packages)

# Update to include any new packages in the local repo.
apt-get update

これで、パッケージをローカルリポジトリにドロップするだけで、pbuilderで利用できるようになります。依存関係の文字列をチェーン構築しようとしている場合は、ローカルリポジトリディレクトリとしてpbuilder結果ディレクトリを作成できます。

これに関する他のバリエーションを想像できるでしょう。たとえば、フックを使用する代わりに、post_upload_commandでdputを使用してPackagesファイルを生成できます。

このDebian wikiページも参考になります。


1
フックファイルは呼び出されD05...(2桁の数字)、実行可能である必要があります。また、(少なくともpbuilder-distを使用する場合)apt-utilsの追加パッケージを追加した後、pbuilder-dist <dist> update --override-config一度呼び出す必要があります。また、pbuilder-distでは、設定ファイルの設定を上書きするため、OTHERMIRRORを環境変数として設定する必要があります。
BubuIIC 2014年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.