7

Python と Debian の配布ツールの迷路をナビゲートするのに苦労しています。cdbsdebhelperpython-supportpython-central、何とか何とか何とか..

私のアプリケーションはかなり単純なものです - 単一の python パッケージ (モジュールと を含むディレクトリ__init__.py)、プログラムを実行するためのスクリプト ( script.py)、いくつかのアイコン ( .png)、およびメニュー項目 (.desktopファイル)。

これらのファイルから、上記の無意味なツールを使用せずに、単純でクリーンな .deb ファイルを最初から作成するにはどうすればよいですか?

私は主にubuntuをターゲットにしていますが、パッケージがストレートdebianで動作する場合はそれを希望します

4

2 に答える 2

5

python-stdebあなたのために働くはずです。これは、Debian テスト版/不安定版および Ubuntu (Lucid 以降) にあります。apt-get install python-stdeb

これは、できるだけ多くのソース パッケージを生成しようとするツールよりも、ショートカット メソッドではありません。実際には、適切に機能し、ほぼ標準に準拠したパッケージを構築できます。debian/copyrightパッケージを Debian や Ubuntu などに含めるための品質基準を満たすようにしたい場合は、 などのファイルに記入する必要があります。

cdbs は本当に簡単だと人々が主張するのと同じように、Nick が言及したルール ファイルは debhelper7 で簡単に作成できることを指摘したいと思います。忘れてはならないのは、dh7 は cdb よりもはるかに簡単にカスタマイズできるということです。

#!/usr/bin/make -f
%:
    dh $@

注: Debian に提出する前に、パッケージが Debian ポリシー、Debian Python ポリシーなどを満たしているかどうかを確認する必要があります。そのためには実際にドキュメントを読む必要があります-近道はありません。

于 2010-06-20T05:12:41.057 に答える
3

まず、答えは、dpkg を作成する簡単な方法はなく、ドキュメントは多くの場所から 100 万個の小さな小片に分割されているということです。ただし、ubuntu Python Packaging Guideは非常に便利です。

単純なパッケージ (簡単に説明できるものsetuptools) の場合、debian 制御構造をセットアップすると、手順は非常に単純になります。

  • 実行し、適切なsetup.py --sdist --prune値に設定してくださいdist-dir
  • パッケージの適切なオプションを使用して呼び出しdpkg-buildpackageます (おそらく-b少なくとも)

debian/rulesbuildpackage が機能するためのファイルが必要になりますが、幸いなことcdbsに、 を使用すると作業が完了します。次のようなものが必要になります。

#!/usr/bin/make -f

DEB_PYTHON_SYSTEM := pysupport

include /usr/share/cdbs/1/rules/debhelper.mk
include /usr/share/cdbs/1/class/python-distutils.mk

を使用していない場合は、wikidistutilsDebianPython/Policyページ ("CDBS + the hard way" の下) を参照してください。さらに情報が必要な場合は、Google で検索できるpycentral オプションもあります。DEB_PYTHON_SYSTEM

于 2010-05-28T13:13:44.927 に答える