web-dev-qa-db-ja.com

パッケージ(deb、rpmなど)を作成するための優れたガイドはどこにありますか?

基本についての簡潔なハウツーを探しています。

5
djp

buntuパッケージガイド は良い入門書です。残りの部分は、既存のパッケージを調べ、マニュアル(CDBS、そしてもちろん Debian Policy )を読むことで学ぶことができます。ただし、directhexが言ったように、それはあなたが取り組んでいるパッケージの種類に大きく依存します。

RPMについては、 Mandriva wiki 、およびいくつかの Fedora RPMガイド および ガイドライン が好きでした。

3
elmarco

RPMの場合は、「最大RPM」(ダウンロード ここ )から始めることができます。これは古いですが、非常に精巧で、学習を開始するのに適した場所です。 IBM DeveloperWorksには course もあります。これはチュートリアルです。

基本を理解したら、FedoraまたはOpenSUSE(非常によく似ています)のパッケージングガイドラインを読んで、実際にパッケージングがどのように行われるかを確認する必要があります。

Ubuntuにはしばらく前にIRCにパッケージャークラスがあったことは知っていますが、現在の状況はわかりません。Debian(およびUbuntu)のパッケージングチュートリアルは豊富にあります。Debianについても同様です。 、パッケージングガイドラインを読んで、実際にどのように行われるかを確認してください。

3
wzzrd

多くの場合、パッケージ化する特定の種類のものをパッケージ化する方法を学ぶのが最善です。 MonoアプリはPythonアプリとは大きく異なります。何よりもまず、自分に関連する情報を学ぶことができれば最高です。

1
directhex

FreeBSDでは、インストールされているポートの場合:

cd /usr/ports/category/myport
make package

または

make package-recursive

1つ目はポートからパッケージを作成し、2つ目はすべての依存関係も含みます。または、pkg_createを使用してより詳細に制御することもできます。 make packageと同様に、ポートもインストールする必要があります。

pkg_create -Rb mysoftware myswpkgname

残念ながら、最初にインストールせずにパッケージを作成するためのクリーンで簡単な方法はありません。ただし、ポートのメンテナンスとパッケージの作成の要点を詳しく調べない限り、 ここ について読むことができます。これは、自分で作成したものをパッケージ化する場合に必要になります。

ただし、システムにインストールされていないソフトウェアパッケージを作成する必要がある場合は、作業を楽にするためのいくつかの選択肢があります。 1つ目は、ビルドジェイルを使用することです。あるいは(または同時に)、インストールしたソフトウェアを削除することもできます。

make deinstall

ポートディレクトリから、または

pkg_delete -r mypackage

これにより、より詳細な制御が提供されます(-rスイッチは依存関係も削除します)。詳細については、 portspkg_delete 、および pkg_create のマニュアルページを参照してください。

1
gvkv

パッケージ化する特定のシステムのガイドを探す必要があります。それらは異なり、場合によっては異なるアプローチが必要です。共通点がある場合は、1つのシステムをかなりよく学ぶことでそれを理解できます。他の人は、それらが機能するように設計された方法を理解すれば、少し簡単に学ぶことができます。

ただし、どのシステムでも覚えておく価値のあるアイデア:元のソースと無人ビルド。

0
XTL