Caraku Menggunakan Slackpkg - Bagian II

18 Feb 2011

slackware-logo.pngPada pos saya sebelumnya mengenai Slackpkg, saya telah menjelaskan fungsi-fungsi utama dari program ini. Pada bagian ini saya ingin menulis mengenai beberapa trik (petunjuk) yang dapat mengurangi resiko kehilangan paket-paket tertentu atau bahkan kerusakan sistem.

Rangkuman pos saya sebelumnya adalah seperti ini:

# slackpkg update
# slackpkg install-new
# slackpkg upgrade-all

Kenapa pilihan install-new dilakukan terlebih dahulu? Hal ini disebabkan beberapa hal:

  1. Terdapat penggantian paket, entah nama, loncat versi, dsb.
  2. Terdapat paket baru yang merupakan dependensi dari paket-paket yang ter-update.

Pada kasus pertama, seringkali pengguna lupa (tidak) membaca ChangeLog.txt, sehingga tidak mengetahui bahwa ada penggantian nama paket atau loncat versi sedangkan di dalam paket tersebut terdapat program/pustaka yang digunakan sistem slackware kita. Misalnya saja pada kasus Slackware{64}-current per-tanggal 16 Pebruari 2011 15:05 WIT dimana paket util-linux-ng diganti namanya menjadi util-linux. Jika paket util-linux (baru) tidak di-install terlebih dahulu, sedangkan pada pilihan upgrade-all tidak ada paket util-linux lalu kemudian kita menjalankan:

# slackpkg clean-system

Coba bayangkan apa yang akan terjadi :) .

Kasus kedua jarang sekali terlihat pada saat proses upgrade/update menggunakan slackpkg. Tetapi daripada lupa, dan setelah sistem di-reboot, sistem berjalan kacau? Sebaiknya paket-paket utama yang benar-benar baru di-install lebih dahulu.

Nah berhubung pilihan clean-system sudah muncul, apa sih kegunaan dari prosedur ini? Pilihan clean-system akan menyebabkan slackpkg mendaftar seluruh paket yang ter-install dan kemudian membandingkannya dengan daftar paket resmi Slackware setelah kita memperbarui database slackpkg. Jika terdapat paket yang tidak tercantum di dalam database, slackpkg akan menawarkan pilihan untuk meng-uninstall paket tersebut. Bagi pengguna Slackware 'murni' alias tidak meng-install paket-paket pihak ketiga, tentunya hal ini bukan masalah. Karena slackpkg hanya akan meng-uninstall paket-paket lama yang sudah tidak disediakan lagi oleh Slackware. Tapi buat pengguna 'koboi' macam saya, jelas bisa jadi masalah apalagi pas lagi ngantuk kemudian menjalankan prosedur ini :D . Bisa-bisa hilang semua program-program kesayangan kita yang kita install secara susah payah menggunakan skrip SlackBuild dari SBo, atau dari slacky.eu atau GSB, atau lainnya.

Nah untuk menghindari kecelakaan tersebut, slackpkg menawarkan metode blacklist. Yap, kita dapat mendaftarkan paket-paket eksternal kesayangan kita ke dalam file /etc/slackpkg/blacklist, sehingga tiap kali slackpkg dijalankan, paket-paket kita tetap aman di tempatnya. Isi dari file blacklist tersebut sangat sederhana, kita cukup mendaftarkan paket-paket yang kita inginkan satu nama paket satu baris. Jika kita memiliki puluhan atau ratusan paket eksternal, kita bisa memasukkannya sekaligus seperti ini (misalnya untuk paket-paket dari SBo):

# echo "" >> /etc/slackpkg/blacklist
# cd /var/log/packages
# ls -1 *SBo | rev | cut -d - -f 4- | rev >> /etc/slackpkg/blacklist

Kita tinggal mengganti tag SBo dengan tag lain misalnya gsb untuk GNOME SlackBuild dan sebagainya. Cek dahulu isi file blacklist. Pastikan tidak ada yang tertinggal dan mengakibatkan kita bekerja dua kali.

Simpulannya:

# slackpkg update
# slackpkg install-new
# slackpkg upgrade-all
# slackpkg clean-system

Sekian dulu tulisan bagian ke-2 mengenai slackpkg ini.