Belajar Pemaketan di BlankOn

Tulisan ini merupakan rangkuman kelas pemaketan yang digelar tim BlankOn pada Selasa (9/9/2014) malam di kanal IRC #blankon dengan tutor bapak mahaDev Aftian :D. Sengaja ditulis supaya dapat sepatu tidak lupa. Maklum sering lupa :D.

Apa itu pemaketan? Secara sederhana, pemaketan berarti membuat paket debian dari kode sumber sebuah program, yakni mengubah paket kode sumber menjadi binari (deb/udeb). Dengan begitu, nantinya paket debian tersebut dapat dengan mudah dipasang di komputer tanpa harus mengompilasi langsung dari kode sumbernya.

Baiklah, mari kita mulai.

Agar komputer kita dapat mengompilasi kode sumber dan bisa membuat paket debian, ada beberapa alat yang harus dipasang. Oh iya, disarankan menggunakan Linux BlankOn dalam tutorial pemaketan ini. Supaya memudahkan :D.

Di terminal, ketik perintah berikut:

$ sudo apt-get install devscripts build-essential fakeroot debhelper gnupg pbuilder dh-make dpkg-dev ubuntu-dev-tools git

Bagi yang komputernya baru dipasang BlankOn seperti laptop saya, perintah di atas akan mengunduh berkas sebesar 58 MB. Di beberapa komputer, jumlah berkas yang harus diunduh bisa lebih besar.

Jika semuanya sudah terpasang dengan baik (dan tentu saja tidak ada error), mari lanjut ke langkah berikutnya. Pak Aftian dengan baik hati sudah membuat template program yang akan dibuat paketnya. di terminal, ketik perintah berikut:

$ git clone https://github.com/aftian/package-template.git

Bagi yang belum mengenal git, perintah tersebut akan mengkloning direktori package-template beserta isinya ke direktori lokal di komputer kita. Jika sudah selesai, seharusnya di direktori kita akan ada direktori package-template. Jika ada, mari kita beralih ke direktori tersebut.

Di direktori tersebut ada satu berkas bernama readme.md dan satu direktori bernama debian. Sekarang, mari kita masuk ke direktori debian. Di sana, ubah berkas control menjadi seperti berikut.

Source: latihan-blankon
Section: text
Priority: standard
Maintainer: BlankOn Developers <BlankOn-Dev@googlegroups.com>
Standards-Version: 3.9.1
Build-Depends: cdbs,
debhelper (>= 7.3.5),

Package: latihan-blankon
Architecture: all
Depends: ${misc:Depends}
Description: latihan BlankOn
Latihan BlankOn

Setelah beres, kembali ke direktori package-template, lalu buat berkas, supaya gampang, namai berkas tersebut dengan nama sendiri. Misalnya nama hahn :D.

$ touch hahn

Perintah touch hahn akan menghasilkan berkas bernama hahn namun nggak ada isinya. Untuk sekarang, biarkan berkas tersebut tak ada isinya.

Setelah itu, edit berkas debian/install dengan isi sebagai berikut (sesuaikan dengan nama berkas hasil touch barusan).

hahn /usr/share/latihan-blankon

Setelah itu, di terminal, ketik perintah berikut:

$ dch -i

Menurut manual dch, perintah tersebut digunakan untuk maintenance berkas changelog dalam paket debian.

Jika ini pertama kalinya mengetikkan perintah tersebut, akan ada pilihan editor apa yang akan kita gunakan. Silakan gunakan editor kesukaan. Saya biasanya pakai mcedit atau nano.

Setelah memilih editor, isilah berkas tersebut dengan keterangan. Untuk sekarang, bebas saja mau isi apapun. Misalnya keterangan bahwa kita sudah menambah berkas (dengan nama kita sendiri :D).

Setelah disimpan dan keluar dari editor, jalankan perintah berikut.

$ dpkg-buildpackage -rfakeroot

Berhasil? Seharusnya tidak. Di terminal, bakal muncul sejumlah eror. Loh kenapa? Ternyata, masih ada yang harus diedit pada berkas changelog barusan. Buka kembali berkas tersebut, lalu ganti ‘package-name’ dengan nama ‘latihan-blankon’ (sesuai nama yang kita isi di berkas control). Setelah itu, kembali jalankan perintah di atas.

Sudah berhasil? Eh ternyata masih ada erornya. Sekarang buka berkas debian/rules dan beri tagar (#) alias komentari seluruh isinya, kecuali baris ini:

include /usr/share/cdbs/1/rules/debhelper.mk

Setelah itu, hapus direktori source dan patches. Kali ini, kembali jalankan perintah

$ dpkg-buildpackage -rfakeroot

Jika tidak ada error lagi, seharusnya di direktori atas package-name akan muncul berkas, salah satunya yang berekstensi .deb. Contoh di saya:

$ ls
latihan-blankon_0.1+nmu1.dsc
latihan-blankon_0.1+nmu1.tar.gz
latihan-blankon_0.1+nmu1_all.deb
latihan-blankon_0.1+nmu1_amd64.changes
package-template

Selamat! Kita berhasil membuat paket deb! Untuk memastikan apakah paket tersebut tidak bermasalah, coba pasang paket tersebut.

$ sudo dpkg -i latihan-blankon_0.1+nmu1_all.deb

Jika tidak ada kesalahan, seharusnya ada berkas hahn (atau nama yang tadi digunakan) di /usr/share/latihan-blankon.

*sumber:
– http://irclog.blankon.in/blankon/20140909/
– https://wiki.debian.org/IntroDebianPackaging?action=show&redirect=PackagingTutorial

The following two tabs change content below.
Jurnalis kemarin malam. Pengajar kurang ajar. Pengguna Linux level pra-newbie.

hahn

Jurnalis kemarin malam. Pengajar kurang ajar. Pengguna Linux level pra-newbie.

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *