Blog.YHT.Web.ID

Icon

Bosan adalah awal dari penciptaan perubahan.

Belajar Membuat Paket Debian

Tanggal 7 dan 16 Oktober yang lalu Pengembang BlankOn (Tim Pemaket) mengadakan kuliah pemaketan. Saya sendiri hanya bisa mengikuti pada tanggal 7, yang juga telat. Untunglah ada irclog yang bisa membantu mengetahui apa yang dibicarakan pada pertemuan-pertemuan itu.

Saya hanya sedikit akan mencatat di sini poin-poin yang harus dilakukan agar saya sendiri tidak lupa di kemudian hari. Mohon dikoreksi bila saya salah. Maklum saya sendiri baru belajar. 😀

Berikut langkah-langkah yang saya lakukan. Studi kasus adalah dengan google-pacman, karena digunakan sebagai pe-er.

1. Mengunduh berkas kode sumber yang akan dipaketkan.

$ wget http://pendekar.blankon.in/~dotovr/PR/google_pacman.tar.gz

2. Melakukan extract paket kode sumber.

$ tar xf google_pacman.tar.gz
$ ls -l google_pacman
total 36
-rw-r–r– 1 yht yht 1807 Oct 7 13:24 README
-rw-r–r– 1 yht yht 4122 Oct 7 13:24 blankon-pacman.svg
-rw-r–r– 1 yht yht 863 Oct 7 13:24 config.xml
-rw-r–r– 1 yht yht 239 Oct 7 13:24 google-pacman.desktop
-rw-r–r– 1 yht yht 4126 Oct 7 13:24 index.html
drwxr-xr-x 4 yht yht 4096 Oct 7 13:24 src
$

3. Konversi kode sumber menjadi paket kode sumber Debian.

$ cd google_pacman/
$ dh_make -e yht.dev@gmail.com -p google-pacman_0.1 -f ../google_pacman.tar.gz
$ ls -l ..
total 412
-rw-r–r– 1 yht yht 206597 Oct 7 13:26 google-pacman_0.1.orig.tar.gz
drwxr-xr-x 4 yht yht 4096 Oct 20 15:06 google_pacman
-rw-r–r– 1 yht yht 206597 Oct 7 13:26 google_pacman.tar.gz
$ ls -l
total 36
-rw-r–r– 1 yht yht 1807 Oct 7 13:24 README
-rw-r–r– 1 yht yht 4122 Oct 7 13:24 blankon-pacman.svg
-rw-r–r– 1 yht yht 863 Oct 7 13:24 config.xml
drwxr-xr-x 3 yht yht 4096 Oct 20 15:06 debian
-rw-r–r– 1 yht yht 239 Oct 7 13:24 google-pacman.desktop
-rw-r–r– 1 yht yht 4126 Oct 7 13:24 index.html
drwxr-xr-x 4 yht yht 4096 Oct 7 13:24 src
$

4. Hapus berkas-berkas yang tidak dibutuhkan di folder debian/

$ cd debian/
$ rm *.ex *.EX docs README.*
$

5. Ubah debian/changelog.

$ cd ..
$ dch -i
$

6. Ubah debian/control

$ nano debian/control

Dengan hasil sebagai berikut.

Source: google-pacman
Section: games
Priority: extra
Maintainer: Yudha H Tejaningrat
Build-Depends: debhelper (>= 8.0.0)
Standards-Version: 3.9.4

Package: google-pacman
Architecture: all
Depends: html5app
Description: Google Pacman Game
Pekerjaan rumah dari kuliah cepat tim pemaket BlankOn Linux

7. Ubah debian/copyright

$ nano debian/copyright

Sesuaikan dengan hak cipta dari perangkat lunak.

8. Tambahkan debian/install

$ nano debian/install

Berikut isinya.

index.html /usr/share/google-pacman
config.xml /usr/share/google-pacman
src /usr/share/google-pacman
README /usr/share/doc/google-pacman
blankon-pacman.svg /usr/share/pixmaps
google-pacman.desktop /usr/share/applications

9. Lalu ubah isi dari google-pacman.desktop

$ nano google-pacman.desktop

Berikut isinya.

[Desktop Entry]
Name=Pacman
Comment=Clear hidden mines from a minefield
Exec=/usr/bin/html5app /usr/share/google-pacman/
Icon=blankon-pacman
Terminal=false
Type=Application
Categories=GNOME;GTK;Game;LogicGame;
StartupNotify=true

Lalu buat patch atas perubahan tersebut.

$ dpkg-source –commit

10. Pembuatan paket.

$ dpkg-buildpackage -rfakeroot
$ ls -l ..
total 596
-rw-r–r– 1 yht yht 1895 Oct 20 15:49 google-pacman_0.1-1.debian.tar.gz
-rw-r–r– 1 yht yht 812 Oct 20 15:49 google-pacman_0.1-1.dsc
-rw-r–r– 1 yht yht 172696 Oct 20 15:49 google-pacman_0.1-1_all.deb
-rw-r–r– 1 yht yht 1534 Oct 20 15:49 google-pacman_0.1-1_i386.changes
-rw-r–r– 1 yht yht 206597 Oct 7 13:26 google-pacman_0.1.orig.tar.gz
drwxr-xr-x 5 yht yht 4096 Oct 20 15:44 google_pacman
-rw-r–r– 1 yht yht 206597 Oct 7 13:26 google_pacman.tar.gz
$ sudo dpkg -i ../google-pacman_0.1-1_all.deb
[sudo] password for admin:
dpkg: warning: downgrading google-pacman from 884d4e1ac8-1.1 to 0.1-1
(Reading database … 148151 files and directories currently installed.)
Preparing to replace google-pacman 884d4e1ac8-1.1 (using google-pacman_0.1-1_all.deb) …
Unpacking replacement google-pacman …
Setting up google-pacman (0.1-1) …
Processing triggers for gnome-menus …
Processing triggers for desktop-file-utils …
Processing triggers for mime-support …
$

Nah, akhirnya saya bisa membuat paket. *terharu* Terima kasih pak dotovr atas penjelasan dan pe-er-nya..

Kategori: /berjejaring

Tag: , ,

Leave a Reply