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 i386dalam controlfile 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 rulesyang 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/copyrightfile yang mungkin juga berguna untuk menginformasikan pengguna tentang lisensi terkait dengan paket. Saya tidak berpikir Anda memerlukan postinstskrip karena Anda hanya perlu mengekstrak beberapa file. compatharus mengandung tingkat kesesuaian debhelper, katakan "8". (lihat halaman manual debhelper untuk lebih jelasnya)
The changelogfile dapat diedit dengan dchperintah, tersedia dari devscriptspaket. 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 dhperintah 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 -bdapat 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 DEBIANdirektori (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/controlyang 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>.debyang ada dalam contoh ini myplugin_1.0-1_all.deb. Anda dapat menggunakan lessprogram ini untuk mengintip file. Sebagai contoh less myplugin_1.0-1_all.deb,.