以下では、ソースが開いている(Pythonスクリプトなど)ため、アーキテクチャ(amd64またはi386など)にバインドされていないため、「すべて」であると想定しています。Cソースがある場合Architecture: amd64 i386は、ソースcontrolファイルで使用する必要があります。
Launchpadの準備ができたパッケージの作成
これは最終的に一連の個別のランチパッドPPAパッケージになります。
私が好むのは(しかし達成できないかもしれませんが...)パッケージを最小限に保つことです-テンプレートから一連のパッケージを作成し、最小限の変更(changelogなど+ tarファイル)を調整します。
ランチパッドはソースパッケージのみを受け入れるためrules、正しい場所にファイルをインストールするを作成します。便宜上、debhelperを使用します。ファイルのあるディレクトリは次のようになります。
debian/changelog
debian/control
debian/rules
debian/compat
mypluginfolder/...
debian/copyrightファイルは、パッケージに関連付けられたライセンスをユーザーに知らせるために有用である可能性があります。postinst一部のファイルを抽出するだけでよいので、スクリプトは必要ないと思います。compat「8」と言うdebhelper互換性レベルを含める必要があります。(詳細については、debhelperのマニュアルページを参照してください)
changelogファイルがで編集することができますdchから、利用可能なコマンド、devscriptsパッケージ。rules(使用してdebhelperのは)含まれている必要があります。
#!/usr/bin/make -f
%:
dh $@
override_dh_install:
dh_install mypluginfolder/ /usr/share/rhythmbox/plugins
を使用して実行可能にしchmod 755 debian/rulesます。ソースパッケージは、を使用してビルドできますdebuild -S。必ずという名前のディレクトリに配置してください<package-name>-<version>。override_動作とdhコマンドの詳細については、マニュアルページを参照してください。
Debian新メンテナガイドは、私がこれを理解することが推奨読書だ、非常に貴重でした。パッケージの例はhttps://github.com/Bumblebee-Project/bumblebee-ppaにあります。
既存のファイルツリーからパッケージを作成する
dpkg-deb -b既存のファイルツリーからtarballを作成するために使用できます。最初に、パッケージにちなんだ名前のディレクトリの作成から始めます。名前mypluginを付けて入れたいと思うでしょう/usr/share/rhythmbox/plugins/mypluginfolder。さらに、DEBIANパッケージ情報を保存するためのディレクトリ(大文字!)を作成します。
mkdir -p myplugin/usr/share/rhythmbox/plugins/mypluginfolder
mkdir myplugin/DEBIAN
ファイルをコピーします。
cp -r ~/mypluginsfolder myplugin/usr/share/rhythmbox/plugins
次に、パッケージを説明するいわゆる制御ファイルが必要にmyplugin/DEBIAN/controlなります。このようなファイルの内容は次のとおりです。
Package: myplugin
Version: 1.0-1
Maintainer: You <whatever@contact.address>
Architecture: all
Description: plugins for Rhythmbox
Longer description here
.
As you can see, new paragraph are split by a single dot,
and lines have to be indented by one space.
これで、オプションでパッケージの内容を確認できます。次のコマンドは、ファイルおよびディレクトリエントリの内容を一覧表示しますmyplugin。
find myplugin -ls
満足したら、現在のディレクトリにパッケージをビルドします。
dpkg-deb -b myplugin .
<package>_<version>_<architecture>.debこの例のように名前が付けられた新しいファイルが表示されますmyplugin_1.0-1_all.deb。lessプログラムを使用して、ファイルを覗くことができます。たとえば、less myplugin_1.0-1_all.deb。