Zencafe Lokal Repositori

Kemaren waktu baca-baca di forum.linux.or.id, ada yang tanya bagaimana caranya membuat repositori lokal di Zencafe. Setelah semalaman bongkar-bongkar script netpkg akhirnya saya berhasil meng-edit script netpkg agar dapat digunakan untuk keperluan lokal repositori, jadi tidak perlu download-download lagi untuk proses instalasi programnya :)

Tahapan-tahapan yang perlu dilakukan untuk dapat menggunakan repositori secara lokal di Zencafe atau Zenwalk disini saya bagi menjadi 3 bagian yaitu :

  1. Pembuatan CD yang berisi kumpulan packages-packages

    Proses pembuatan CD ini berfungsi untuk mempermudah penyebaran repositori dari Zencafe :) (pernah dengar DVD Repositori-nya ubuntu kan ? Nah kita akan buat seperti itu) Untuk pembuatan CD Repositori ini tidak ada aturan-aturan khusus, tetapi yang perlu diperhatikan disini adalah file PACKAGES.TXT dan PACKAGES.TXT.gz

    Ok, sekarang kita langsung saja ke langkah-langkah pembuatannya:

    • Buatlah sebuah direktori untuk menampung packages-packages yang akan dijadikan sebagai repositori, sebagai contoh disini buatlah sebuah direktori OfflinePackages dan masukkanlah package-package yang ingin anda jadikan sebagai repositori kedalam direktori OfflinePackages hingga struktur direktorinya menjadi seperti dibawah ini:

      Note: Anda dapat mengkategorikan packages-packages yang anda masukkan berdasarkan direktori-direktori standart Slackware, bisa juga tidak (tidak mengikuti aturan)
    • Setelah selesai, sekarang buatlah sebuah file bernama PACKAGES.TXT (ingat semuanya ditulis dalam huruf besar, tidak boleh tidak). File PACKAGES.TXT ini berfungsi sebagai metadata yang digunakan oleh netpkg untuk mendaftar packages-packages yang tersedia. Sedangkan isi dari file PACKAGES.TXT ini mempunyai aturan sebagai berikut:

      PACKAGE NAME: Nama packages
      PACKAGE LOCATION: Lokasi packages
      PACKAGE SIZE (compressed): Ukuran packages dalam mode kompresi K
      PACKAGE SIZE (uncompressed): Ukuran packages sebenarnya K
      PACKAGE REQUIRED: Dependencies packages yang diperlukan jika ada
      PACKAGE CONFLICTS: *Maap kurang tahu*
      PACKAGE SUGGESTS: *Maap kurang tahu*
      PACKAGE DESCRIPTION: Descripsi packages, taruh dibawah baris ini

      Sedangkan contoh isi file PACKAGES.TXT punya saya adalah sebagai berikut :

      Untuk deskripsi package, bisa diambil di file slack-desc di setiap packages yang dimasukkan (Maap belum menemukan bagaimana cara meng-otomatisasi pembuatan file PACKAGES.TXT ini)

    • Setelah itu simpanlah file PACKAGES.TXT diatas pada direktori OfflinePackages hingga struktur direktori OfflinePackages menjadi seperti dibawah ini:

    • Setelah proses pembuatan file PACKAGES.TXT selesai, sekarang buatlah file PACKAGES.TXT.gz dengan cara seperti dibawah ini:

    • Proses pembuatan CD repositori sudah hampir selesai, sekarang kita tinggal membuat file *.iso-nya kemudian mem-burningnya untuk kemudian disebarkan ke teman-teman atau kolega anda :) Untuk membuat sebuah file *.iso, sekarang keluarlah dari direktori OfflinePackages dengan mengetikkan cd .. kemudian buatlah file iso dengan menjalankanlah perintah mkisofs -V ZC_OfflineRepository -J -r -o /home/operatore/DATA_OPERATORE/Martinus/Repos.iso /home/operatore/DATA_OPERATORE/Martinus/OfflinePackages/ seperti dibawah ini:

    Nah sekarang file *.iso yang berisi kumpulan-kumpulan repository sudah siap untuk di burning ke dalam CD Blank atau CD kosong dan siap untuk di distribusikan :) Sekarang mari kita lanjutkan ke proses berikutnya yaitu meng-konfigurasi agar netpkg dapat digunakan untuk keperluan offline :)

  2. Konfigurasi netpkg untuk keperluan offline

    Secara default, netpkg tidak di desain untuk dapat digunakan secara offline. Tetapi berhubung banyaknya teman-teman yang bertanya bagaimana agar netpkg bisa digunakan layaknya synaptic-nya ubuntu, maka sekarang mari kita mulai bermain-main dengan netpkg :)

    Langkah-langkah yang perlu dilakukan agar netpkg dapat digunakan secara offline adalah :

    • Konfigurasi pada file /etc/netpkg.conf
      Untuk konfigurasi penggunaan repositori secara offline, penulisan pada file /etc/netpkg.conf ini saya menggunakan aturan sebagai berikut:

      Untuk teman-teman yang tidak ingin terikat, bisa mengganti PATH-nya terserah keinginan sendiri asalkan harus menyertakan Internet_mirror = file:///

    • Konfigurasi pada file /usr/libexec/netpkg-functions
      Setelah konfigurasi pada file /etc/netpkg.conf selesai dilakukan, sekarang kita lakukan konfigurasi pada file /usr/libexec/netpkg-functions hingga menjadi seperti dibawah ini:

    • Setelah melakukan pengeditan pada file /usr/libexec/netpkg-functions selesai, simpanlah hasil editan tersebut kemudian sekarang waktunya untuk mulai menggunakan repositori lokal bikinan sendiri :)

  3. Menggunakan lokal repositori bikinan sendiri

    Hmm… semuanya sudah siap rasanya, sekarang untuk mengetesnya masukkanlah CD repositori yang telah dilakukan pada langkah diatas ke dalam cdrom. Jika file iso-nya belum diburning, buatlah dahulu mount-point pada direktori /mnt dengan mengetikkan perintahmkdir /mnt/cdrom kemudian jalankanlah perintah mount -t iso9660 -o loop Repos.iso /mnt/cdrom seperti dibawah ini agar Zencafe membaca isi file Repo.iso layaknya membaca dari CDROM:

    Setelah melakukan proses seperti diatas, sekarang jalankanlah netpkg mirror untuk memilih mirror lokal yang telah anda konfigurasi pada file /etc/netpkg.conf ( untuk lokal mirror ditandai dengan file:///path/mirror/) seperti dibawah ini:

    Ok proses sinkronisasi antara mirror lokal yang ada di CDROM dan netpkg telah berhasil dilakukan, sekarang mari kita cek packages-packages apa saja yang terdapat pada mirror lokal ini dengan cara mengetikkan perintah netpkg list seperti gambar dibawah ini:

    Hurray.. semua packages yang terdapat pada file *.iso telah dikenali, sekarang mari kita coba instal salah satu packages dari repositori lokal yang telah kita buat dengan mengetikkan perintah netpkg nama_packages.tgz seperti dibawah ini:

    Mari kita cek, apakah packages bc tersebut benar-benar telah terinstal pada sitem kita dengan mengetikkan perintah ls /var/log/packages dan untuk pembuktian kita coba jalankan perintah bc tersebut seperti dibawah ini:

Ihuiiiiiiii…. sukses sekarang kita dapat menggunakan repositori lokal seperti layaknya teman-teman komunitas ubuntu :)

Referensi:
- Download netpkg_repos_lokal.tar.bz2
- Manual Page Bash
- Manual Page AWK
- Manual Page Grep

13 Responses to “Zencafe Lokal Repositori”

  1. setia budi says:

    Om Martin

    warnet saya udah upgrade to zencafe 2.0 tapi begitu mo pakai YM kok selalu disconnect ya..?
    minta ilmunya dong

    terima kacih..

Leave a Reply

[+] adsenseid emoticons by Martinus Ady H. Modified from nartzco source code.