以下では、ソースが開いている(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
。