Saya ingin menambahkan paket gourmet terbaru dari Debian sid ke PPA tim kami sehingga pengguna Ubuntu yang ingin menjalankan versi Gourmet yang terkini dapat menambahkan PPA ke sumber perangkat lunak mereka. (Ketergantungan pada hal itu, seharusnya tidak menjadi masalah karena hampir semua dependensi kami saat ini sudah tersedia di semua versi Ubuntu yang saat ini didukung.)
Saya telah mengunduh *.dsc
file dan debian dan tarballs asli, dan bahkan tahu saya bisa menggunakan ini untuk file paket source.changes
. Saya juga mengunduh kunci publik pengelola Debian sehingga dput
dapat memvalidasi paket. Saya kemudian mencoba mengunggah paket ke PPA kami menggunakan dput ppa:~gourmet/ppa gourmet_0.17.3-1_source.changes
(Saya juga mencoba tanpa tilda.) Ini tampaknya berhasil, tetapi saya tidak mendapatkan email konfirmasi, dan tidak ada paket yang sekarang ditampilkan di PPA kami , yang membuat saya percaya bahwa paket itu ditolak karena kunci pengelola Debian jelas bukan kunci anggota tim kami.
Jadi apa cara termudah untuk "menyalin" paket dari Debian (sid) ke PPA Launchpad? Apakah saya benar-benar perlu membangun kembali seluruh paket secara lokal sebelum saya dapat mengunggahnya?
Jawaban:
Anda perlu membangun kembali paket sumber secara lokal sebelum mengunggah untuk menyesuaikan log perubahan dan membuat ulang file perubahan. Meskipun sejak backporting sebuah paket adalah tugas yang cukup umum, ini telah dituliskan. Lihatlah paket
backportpackage
perintah ubuntu-dev-tools .Untuk mendukung paket dari Debian, cukup sediakan seri target distro, PPA, dan file dsc untuk paket tersebut:
Lebih mudah untuk membuat backport paket dari satu rilis Ubuntu ke yang lain karena Anda tidak perlu menemukan file dsc. Katakanlah kita ingin mendukung dari utopis ke tepercaya:
sumber
~gourmet/ppa
argumen sebagai-u
parameter. (Tapi untungnya saya bisa menyalinnya dari PPA saya ke tim Gourmet melalui Launchpad.)Ada beberapa cara untuk melakukan ini.
Ketika saya melakukan ini untuk Rhythmbox saya mengikuti resep berikut:
Sebuah. Ambil file sumber dan file debian
b. Hapus kompresi sumber (.orig.tar.xz)
c. ubah nama folder sumbernya menjadi seperti
rhythmbox-3.0.3
c. buka kompresi file debian (.debian.tar.xz)
d. pindahkan folder debian di bawah direktori sumber
e.
dch -i
untuk mengubah file changelogf. ubah nama paket "tidak stabil" menjadi nama target ubuntu - di sini saya telah menggunakan tepat untuk 12,04. Ubah versi yang sesuai untuk aplikasi Anda. Di sini rhythmbox 3.0.3 - jadi saya baru saja menambahkan
-1~ppafossfreedom
g. buat paket sumber baru:
dh_build --createorig
h. Bangun hanya sumber dengan kunci Anda: di
debuild -S -k0xABCDEFG
manaABCDEFG
kunci Andasaya. unggah paket Anda untuk bangunan:
sumber
dget
perintah daridevscripts
paket. Ini akan menyederhanakan ini sedikit.dget
=) File dsc berisi semua informasi tentang bagian lain dari paket sumber. Jadidget
akan ambil semuanya dan ekstrak dengan benar jika Anda memberikan tautan ke file dsc.dget -ux http://http.debian.net/debian/pool/main/r/rhythmbox/rhythmbox_3.0.3-1.dsc