Pembuatan Paket Dengan CDBS

CDBS adalah perkakas yang menggunakan debhelper sehingga membangun dan mengelola paket Debian menjadi mudah. CDBS memiliki beberapa keuntungan:

Menggunakan CDBS dalam paket

Menggunakan CDBS untuk paket Ubuntu sangat mudah. Setelah menambah cdbs ke Build-Depends dalam debian/control, berkas dasar debian/rules yang menggunakan CDBS dapat dimuat dalam 2 baris. Untuk aplikasi C/C++ sederhana tanpa aturan tambahan, seperti hello, berkas debian/rules dapat terlihat seperti ini:

#!/usr/bin/make -f
				
include /usr/share/cdbs/1/rules/debhelper.mk
include /usr/share/cdbs/1/class/autotools.mk

Hanya inilah yang perlu Anda lakukan untuk membangun program! CDBS menangani instalasi dan pembersihan. Anda lalu dapat menggunakan .install dan berkas .info untuk mengubah paket Anda dengan fungsi debhelper biasa di beragam bagian untuk debian/rules.

[Awas]

Jangan gunakan DEB_AUTO_UPDATE_DEBIAN_CONTROL:=yes untuk mengubah secara otomatis berkas debian/control. Hal ini dapat menyebabkan sesuatu yang buruk, dan Debian mempertimbangkan hal itu sebagai alasan untuk menolak paket sebelum masuk ke dalam arsip. Lihat http://ftp-master.debian.org/REJECT-FAQ.html untuk informasi lebih lanjut.

Seperti yang Anda lihat, CDBS bekerja dengan menyertakan Makefile .mk di dalam debian/rules. Paket cdbs menyediakan berkas tersebut di /usr/share/cdbs/1/ yang memungkinkan Anda untuk melakukan berbagai tugas pembuatan paket. Paket lain, seperti quilt menambah modul ke CDBS dan dapat digunakan sebagai Build-Depends. Perlu dicatat bahwa Anda juga dapat menggunakan aturan CDBS sendiri dan menyertakannya di dalam paket. Modul paling berguna yang ikut disertakan dalam paket cdbs adalah:

  • rules/debhelper.mk: Memanggil debhelper di seluruh bagian yang dibutuhkan

  • rules/dpatch.mk: Mengizinkan Anda untuk menggunakan dpatch agar mempermudah mem-patch source

  • rules/simple-patchsys.mk: Cara mudah untuk mem-patch source

  • rules/tarball.mk: Mengizinkan Anda untuk membangun paket menggunakan tarball terkompresi dalam suatu paket

  • class/autotools.mk: Memanggil autotools di seluruh bagian yang dibutuhkan

  • class/gnome.mk: Membangun program GNOME (membutuhkan Build-Depends yang tepat dalam debian/control)

  • class/kde.mk: Membangun program KDE (membutuhkan Build-Depends yang tepat dalam debian/control)

  • class/python-distutils.mk: Mempermudah pembuatan paket program Python

Informasi lebih lanjut mengenai CDBS

Untuk informasi lebih lanjut mengenai CDBS, lihat panduan Marc Dequènes's pada https://perso.duckcorp.org/duck/cdbs-doc/cdbs-doc.xhtml.