Di lingkup teknis sistem operasi Microsoft Windows, kita mengenal pemaketan software berbasis single installer dengan esktensi *.exe. Pun juga di lingkup sistem operasi Mac OS X, yang menggunakan sistem pemaketan software yang hampir sama, dengan ekstensi *.dmg. Di Linux, sistem pemaketan software terasa lebih complicated. Di Linux kita kenal adanya software dependencies, yaitu suatu keadaan, dimana satu paket tertentu, agar bisa diinstalasi dan dijalankan, membutuhkan satu atau beberapa paket lain. Seringkali dalam banyak contoh, ketergantungan suatu paket software desktop Linux jumlahnya sangat banyak. Satu paket software membutuhkan puluhan paket software yang lain. Ketergantungan antar-software dalam Linux tersebut bukan tanpa sebab. Linux, sebagai bagian dari FOSS, dikembangkan oleh ribuan pemrogram di seluruh dunia dengan payung yang berbeda-beda. Bahkan banyak juga yang merupakan pemrogram individu. Setiap pemrogram bebas untuk mengembangkan software milik orang lain, untuk diperbaiki, diperbaiki dan terus berlanjut. Banyak juga software yang dibuat dengan memanfaatkan software-software yang sudah ada. Karena kondisi inilah maka terciptalah suatu lingkaran saling ketergantungan antar-paket software dalam Linux yang di kenal dengan software dependency. Bukan hal yang kurang atau buruk, sama sekali bukan. Software dependency adalah konsekuensi logis dari sebuah sistem terbuka Linux yang luar biasa.
Di sistem Windows dan Mac-pun, secara teknis mendasar sama. Sebuah software, katakanlah Microsoft Office, juga terdiri dari jutaan paket penyusun. Hanya saja, karena kedua sistem tersebut adalah sistem proprietary yang sifatnya restricted—hanya bagi lingkungan internal, maka semua paket penyusun dipaket dalam satu bundel, sehingga terlihat praktis. Kenapa bisa dipaket dalam satu bundel? Tentu saja karena pengembangan software dalam kedua sistem tersebut dilakukan dalam satu payung perusahaan komersial yang sama. Semua proses dari yang paling awal hingga final packaging, dilakukan dalam satu tempat dan satu bendera komando yang sama.
Nah, setelah desktop Linux semakin berkembang dan populer, banyak hacker dan developer Linux yang berpikir untuk membuat suatu sistem pemaketan seperti dalam sistem Windows dan Mac. Implementasi lanjutan dari model tersebut antara lain adalah akan lebih mudahnya pembuatan aplikasi portabel di desktop Linux. Dan ternyata, memang sudah ada yang melakukannya, yaitu sebuah pengembang Linux bernama hacktolive.org, mengembangkan sebuah framework bernama RUNZ framework. RUNZ Framework adalah suatu desain baru pemaketan software Linux. Dengan menginstalasi RUNZ Framework, kita akan dengan mudah menginstalasi software apapun, yang telah di bundel menjadi package RUNZ. Ekstensi dari paket berbasis RUNZ adalah *.runz. Dengan RUNZ Framework ini juga, bisa dikembangkan paket software portabel Linux dengan mudah. Salahsatu contoh yang sudah saya coba adalah paket Opera 9.64 Portable For Linux yang dibundel menggunakan RUNZ Framework. Untuk mencobanya sangat mudah, yaitu pertama, download RUNZ Framework terlebih dahulu. Untuk sementara, paket RUNZ Framework baru tersedia dalam bentuk binari untuk Debian/Ubuntu. Setelah menginstalasi RUNZ Fremework, reboot sistem dan sekarang jalankanlah paket yang dibundel dalam format *.runz. Langsung bisa dijalankan!
Secara keseluruhan ini sangat menarik, walau bukan yang pertama. Jika dokumentasi RUNZ Framework lebih lengkap, bukan tidak mungkin ke depannya, setiap user Linux bisa dengan mudah mem-paket-ulang software kesukaan mereka agar bisa menjadi paket portabel yang bisa dijalankan di mana-mana.
Sebuah pilihan masa depan pengembangan sistem Linux.
Referensi terkait :
Comments