Wikipedia Offline Menggunakan Ruby
by AdministratorTulisan ini merupakan bagian dari project pengembangan konten lokal yang bermanfaat untuk dimasukan ke dalam distro linux BlankOn.
Wikipedia.org adalah ensiklopedia multibahasa dalam jaringan internet yang disusun agar dapat diisi, dibaca, diawasi dan disunting secara terbuka oleh semua orang. Wikipedia dalam bahasa Indonesia (id.wikipedia.org) saat ini memiliki 68.764 artikel dengan 50.675 pengguna terdaftar. Semua isi teks dilisensikan di bawah Lisensi Dokumentasi Bebas GNU (GDFL). Dengan filosofi “bebas terbuka” dan jumlah artikel yang sedemikian besar, Wikipedia berbahasa Indonesia merupakan ensiklopedia dan sumber pengetahuan yang dapat dimanfaatkan oleh semua orang, terutamanya untuk keperluan edukasi.
Wikipedia Offline, Ruby dan BlankOn
Masalahnya adalah tidak semua penduduk Indonesia memiliki akses internet, jika ada versi offline dari wikipedia ini tentu akan lebih banyak pihak yang dapat menikmati pengetahuan yang terkandung di dalamnya. Distribusi Wikipedia berbahasa lokal menggunakan media CD sudah dipelopori di Jerman dan beberapa negara lain.
Wikipedia menyediakan download dalam banyak bentuk: dump database, halaman HTML static dan offline CD. Kumpulan halaman HTML static wikipedia berbahasa Indonesia berukuran kurang lebih 2GByte, cukup boros ruang penyimpanan sementara versi kompresi 7z nya hanya 95MByte. Sedangkan versi dump database membutuhkan layanan server MySQL, Apache dan Mediawiki. Tersebutlah Stian Haklev, seorang warga negara Norwegia yang sedang bekerja di sebuah LSM di Indonesia menaruh perhatian terhadap kesulitas akses internet di Indonesia dan kebutuhan akan wikipedia offline. Dengan menggunakan bahasa pemrograman Ruby dia mencoba membuat aplikasi yang bisa mengakses koleksi halaman wikipedia berbahasa Indonesia yang masih dalam bentuk terkompresi sehingga hemat ruang. Idenya ini dilontarkan ke milis official Ruby dan id-Ruby dan beberapa anggota milis id-Ruby tertarik dengan ide ini.
Sementara itu BlankOn linux versi 2.0 menjelang masa rilis. Beberapa anggota tim BlankOn mencoba memasukan dua poin di atas ke BlankOn (kalaupun bukan terinstall default minimal merupakan paket tambahan) sehingga bisa menjadi konten lokal yang bermanfaat.
Menginstall Wikipedia Offline (devel progress)
Berikut langkah sementara untuk developer/pemaket, bukan untuk pengguna.
Install paket git (Source Code Management seperti CVS/SVN) untuk mengambil source code zipdoc terbaru dan paket 7zip untuk membuka kompresi 7z hasil download dari wikipedia nanti juga bahasa Ruby dan library kompresi untuk Ruby. Lalu setelah itu install gem trollop dengan menggunakan sistem paket Rubygems:
sudo apt-get install git-core p7zip-full ruby rubygems mongrel libbz2-ruby1.8
sudo gem install trollop
Ambil source code zipdoc terbaru, lalu masuklah ke direktori yang terbentuk:
git clone git://repo.or.cz/zip-doc.git
cd zip-doc
Download data kompresi wikipedia berbahasa Indonesia terbaru dari http://static.wikipedia.org, contohnya:
wget -c http://static.wikipedia.org/downloads/September_2007/id/wikipedia-id-html.7z
Extract hasil download dengan menggunakan aplikasi 7z yang menghasilkan direktori “id”:
7z x wikipedia-id-html.7z
Buat file zdump (kompresi berindeks), lalu jika perlu hapus direktori “id” yang berukuran sekitar 2GByte:
ruby zdump.rb id id.zdump
rm -rf id
Jalankan file mongrel-web untuk menyalakan webserver mini mongrel dan mengakses arsip id.zdump:
ruby mongrel-web.rb id.zdump
Kini wikipedia berbahasa Indonesia sudah bisa diakses di alamat
Menginstall Wikipedia Offline (Final Package)
sudo apt-get install blankon-wikipedia-id