Di bawah, saya mengasumsikan bahwa sumbernya terbuka (mis. Skrip Python) yang karenanya tidak terikat dengan arsitektur apa pun (mis. Amd64 atau i386), karenanya "semua". Jika Anda memiliki beberapa sumber C, Anda perlu menggunakannya Architecture: amd64 i386
dalam control
file sumber Anda .
membuat paket yang siap untuk Launchpad
Ini pada akhirnya akan menjadi serangkaian paket PPA launchpad individual.
Apa yang saya sukai (tetapi mungkin tidak dapat mencapai ...) adalah untuk menjaga kemasan saya ke minimum - membuat serangkaian paket dari template dan menyesuaikan minimum (changelog dll + file tar).
Launchpad hanya menerima paket sumber, jadi buat rules
yang memasang file di tempat yang benar. Untuk kenyamanan, saya akan menggunakan debhelper . Direktori dengan file Anda akan terlihat seperti:
debian/changelog
debian/control
debian/rules
debian/compat
mypluginfolder/...
Sebuah debian/copyright
file yang mungkin juga berguna untuk menginformasikan pengguna tentang lisensi terkait dengan paket. Saya tidak berpikir Anda memerlukan postinst
skrip karena Anda hanya perlu mengekstrak beberapa file. compat
harus mengandung tingkat kesesuaian debhelper, katakan "8". (lihat halaman manual debhelper untuk lebih jelasnya)
The changelog
file dapat diedit dengan dch
perintah, tersedia dari devscripts
paket. The rules
(menggunakan debhelper) harus berisi:
#!/usr/bin/make -f
%:
dh $@
override_dh_install:
dh_install mypluginfolder/ /usr/share/rhythmbox/plugins
Jadikan itu dapat dieksekusi menggunakan chmod 755 debian/rules
. Paket sumber dapat dibangun menggunakan debuild -S
. Pastikan berada di direktori bernama <package-name>-<version>
. Informasi lebih lanjut tentang override_
perilaku dan dh
perintah dapat ditemukan di halaman manualnya .
The Debian Pengelola Baru Guide sangat berharga bagi saya untuk memahami ini, itu membaca direkomendasikan. Contoh kemasan dapat ditemukan di https://github.com/Bumblebee-Project/bumblebee-ppa .
membuat paket dari pohon file yang ada
dpkg-deb -b
dapat digunakan untuk membuat tarbal dari pohon file yang ada. Pertama, mulailah dengan membuat direktori yang harus dinamai setelah paket Anda. Saya akan menganggap Anda ingin memberi nama myplugin
, dan memasukkannya ke dalam /usr/share/rhythmbox/plugins/mypluginfolder
. Selain itu, buat DEBIAN
direktori (huruf besar!) Untuk menyimpan informasi paket:
mkdir -p myplugin/usr/share/rhythmbox/plugins/mypluginfolder
mkdir myplugin/DEBIAN
Salin file Anda:
cp -r ~/mypluginsfolder myplugin/usr/share/rhythmbox/plugins
Selanjutnya, Anda akan memerlukan file kontrol yang disebut myplugin/DEBIAN/control
yang menggambarkan paket. Isi dari file tersebut diletakkan di bawah ini:
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.
Sekarang, Anda dapat memverifikasi isi paket Anda secara opsional. Perintah selanjutnya berisi daftar entri file dan direktori myplugin
:
find myplugin -ls
Jika Anda puas, buat paket di direktori saat ini:
dpkg-deb -b myplugin .
File baru akan muncul, beri nama seperti <package>_<version>_<architecture>.deb
yang ada dalam contoh ini myplugin_1.0-1_all.deb
. Anda dapat menggunakan less
program ini untuk mengintip file. Sebagai contoh less myplugin_1.0-1_all.deb
,.