Apakah Panduan Pengemasan Debian yang paling sederhana?

150

Saya pergi ke wiki Ubuntu tetapi bingung, ada terlalu banyak cara. Tolong beritahu saya panduan mudah untuk pengemasan Debian.

akshatj
sumber
3
Apakah Anda ingin membuat paket untuk Anda gunakan sendiri, di komputer tertentu, atau untuk digunakan orang lain?
andol
1
Bahasa mana dari perangkat lunak yang ingin Anda paket?
Umang
4
Saya memiliki masalah yang sama. Sebagian besar tutorial dan panduan dimulai dengan "dapatkan tarball hulu". Dari titik ini kita tersesat. Kami punya hal sederhana yang ingin kami gunakan, tidak ada tarbal hulu, tidak ada kode sumber. itu hanya file perang, beberapa skrip, dan beberapa file jar. Tentang bola tar hulu, dan ada yang melihat panduan BUKAN menggunakannya, yang komprehensif (mis. Berkaitan dengan masalah pengguna)
John Little
2
Saya akan memilih yang saya posting di StackOVerflow.
Jika Anda ingin membuat "paket virtual" (dependensi grup bersama-sama), ada baiknya Anda melihat equivs-build
Rolf

Jawaban:

103

Ini adalah HOWTO yang bagus untuk membuat .debfile dasar . Sangat cocok untuk membuat .debfile untuk penggunaan pribadi tetapi tidak cukup ketat jika Anda ingin paket untuk dimasukkan dalam Debian / Ubuntu - untuk itu Anda harus membaca Panduan Pemeliharaan Baru Debian dan / atau Panduan Pengemasan Ubuntu (yang saya percaya Anda ' sudah mencoba).

Alat yang bagus untuk memeriksa .debkepatuhan file Anda adalah lintian(dapat diinstal dari repositori).

Ada dua sesi di sini di ruang obrolan Ask Ubuntu.

Dasar-dasar Pengemasan di Ubuntu (Pengemasan: Bagian 1)

Pengemasan Ubuntu untuk Launchpad PPA (Kemasan: Bagian 2)

dv3500ea
sumber
Ini dengan baik mengkompilasi apa yang diperlukan untuk memulai dengan kemasan, tetapi dalam HOWTO saya kehilangan informasi untuk memasukkan ikon aplikasi dalam file deb (dan belum menemukan apa pun tentang itu di tempat lain). Adakah petunjuk tentang cara melakukannya?
nightcod3r
14

Bagian mana yang bermasalah dengan Anda? Meski rumit, panduannya tampak cukup jelas ketika saya mengikutinya.

Ringkasan Cepat:

  • Sumber ekstrak .tar.gz
  • Lari dh_make
  • Edit file debian
  • Jalankan debuild
Nathan Osman
sumber
3
Yang membingungkan saya adalah, apakah proses ini sama tidak peduli bahasa sumber atau struktur direktori?
Seth
9
Intinya adalah, kita tidak punya .tar.gz. kami ingin mengemas aplikasi yang kami tulis. Tampaknya tidak ada panduan untuk membahas hal ini, semuanya dimulai dengan "tarbal hulu" yang tidak kita miliki.
John Little
@JohnLittle jawaban ini mungkin bisa membantu: askubuntu.com/a/27731/5
Nathan Osman
1
Bagaimana dengan kemasan jangka panjang dan berulang? Apakah saya harus setiap saat melakukan proses pengemasan yang panjang dan rumit?
kravemir
Jika pengguna tidak memiliki kunci GPG , debuildakan gagal dengan " debsign: terjadi kesalahan gpg! Batalkan .... ".
AGC
10

Anda bahkan dapat menggunakan dpkg-debuntuk membuat paket sederhana.

Ini tutorial yang bagus dari Ubuntuforums .

Searock
sumber
5

Cara termudah untuk mengemas sesuatu adalah dengan menggunakan checkinstall .

e8johan
sumber
4
checkinstall menyediakan cara cepat untuk membangun paket biner debin (.deb) dari metode instalasi sumber. Namun itu tidak menyediakan paket debian yang tepat (dibangun dari paket sumber debian).
João Pinto
OH man .. Saya harus menggunakan itu SEBELUM mengkompilasi .. itu seperti jam kompilasi.
Piotr Kula
5

Awalnya diposting di StackOverFlow , panduan ini untuk perangkat lunak yang sudah dikompilasi atau ditafsirkan:

Cara yang tepat untuk membangun paket deb menggunakan dpkg-buildpackagetetapi kadang-kadang sedikit rumit. Sebagai gantinya Anda dapat menggunakan dpkg -b <folder>dan itu akan membuat paket Debian Anda.

Ini adalah dasar-dasar untuk membuat paket Debian dengan dpkg -b <folder>biner atau skrip apa pun yang berjalan secara otomatis tanpa memerlukan kompilasi manual (Python, Bash, Pearl, Ruby):

  1. Buat file dan folder untuk membuat ulang struktur berikut:

    ProgramName-Version/
    ProgramName-Version/DEBIAN
    ProgramName-Version/DEBIAN/control
    ProgramName-Version/usr/
    ProgramName-Version/usr/bin/
    ProgramName-Version/usr/bin/your_script
    

    Skrip yang ditempatkan di /usr/bin/langsung dipanggil dari terminal, perhatikan bahwa saya tidak menambahkan ekstensi ke skrip. Anda juga dapat melihat bahwa struktur paket deb akan menjadi struktur program setelah diinstal. Jadi jika Anda mengikuti logika ini jika program Anda memiliki satu file, Anda dapat langsung meletakkannya di bawah ProgramName-Version/usr/bin/your_script, tetapi jika Anda memiliki banyak file, Anda harus meletakkannya di bawah ProgramName-Version/usr/share/ProgramName/all your filesdan menempatkan hanya satu file di bawah /usr/bin/yang akan memanggil skrip Anda dari/usr/share/ProgramName/

  2. Ubah semua izin folder untuk di-root:

     chown root:root -R /path/to/ProgramName-Version  
    
  3. Ubah izin skrip:

     chmod 0755 /path/to/the/script
    
  4. Akhirnya, Anda dapat menjalankan: dpkg -b /path/to/the/ProgramName-Versiondan paket deb Anda akan dibuat! (Anda juga dapat menambahkan skrip post / pre inst dan semua yang Anda inginkan, berfungsi seperti paket Debian normal)

Ini adalah contoh controlfile. Anda hanya perlu menyalin / menempelkannya ke file kosong bernama "control" dan meletakkannya di folder DEBIAN.

Package: ProgramName
Version: VERSION
Architecture: all
Maintainer: YOUR NAME <EMAIL>
Depends: python2.7, etc , etc,
Installed-Size: in_kb
Homepage: http://foo.com
Description: Here you can put a one line description.This is the short Description.
 Here you put the long description, indented by 1 space.
karel
sumber
3

Tidak, panduan pengemasan yang paling sederhana dan paling jelas di dunia ini

Pengemasan Aplikasi Java untuk Ubuntu dan Debian Lainnya

Beberapa hari yang lalu, untuk aplikasi pertama saya, saya membuat paket DEB dengan mengikuti tutorial ini. Sangat jelas dan aplikasi saya berhasil dikemas. Ya, setidaknya itu yang paling sederhana bagi saya.

Anda dapat membandingkannya dengan Debian Packaging Guide.

Ade Malsasa Akbar
sumber
3
"Sederhana" tidak berarti "lengkap". Ada banyak kebijakan, tutorial pengemasan dasar .deb tidak akan mencakup berbagai jenis program, dan oleh karena itu pengemasan tidak semudah hanya "tutorial sederhana".
Thomas Ward
pasti sederhana. Itu membuat saya mulai dan saya bisa membuat paket debian pertama saya dalam beberapa menit. Masih banyak detail untuk ditangani (pesan berkualitas paket buruk dari lintian) tetapi titik awal yang bagus.
atmelino