Free Software Open Source Software

Membuktikan Kemudahan Instalasi Flatpak di Distribusi GNU/Linux ‘Jadul’

Kehebohan terhadap manajer paket kekinian di GNU/Linux begitu meriah. Anggapan manajer paket konvensional (seperti dpkg dan rpm) hanya menyuburkan fragmentasi yang tentu sebanding dengan potensi raupan pangsa pasar GNU/Linux desktop yang segitu-segitu saja adalah salah satu alasannya, meskipun tak sedikit komunitas yang tak setuju akan hal itu.

Manajer paket maupun format aplikasi kekinian yang tengah hype di kalangan komunitas adalah Flatpak dan Snap. Flatpak, awalnya disebut sebagai XDG App, dikembangkan oleh Alexander Larsson sedangkan Snap dibangun oleh Canonical. Tentu kalimat tersebut tak ingin menyingkirkan komunitas sebagai penopang utama pengembangan aplikasi. Karena format keduanya mirip seperti APK pada Android, MSI pada Windows, atau DMG pada macOS, tak pelak menjadikan mereka “masa depan GNU/Linux desktop“.

Flatpak dan Snap sama-sama menjenamai diri sebagai format aplikasi universal untuk Linux. Jika benar, mereka seharusnya dapat dipasang dengan mudah di distribusi GNU/Linux apapun, dari distribusi “jadul” hingga distribusi modern, kecuali distribusi yang lingkungannya sangat berbeda, NixOS contohnya. Saya coba membuktikan itu dengan memasang Flatpak di Slackware. Mengapa Slackware? Memasang Flatpak di distribusi Debian, Ubuntu, openSUSE, dsb merupakan hal mudah karena perkakas tersebut tersedia secara resmi di repositori resmi, berbeda dengan Slackware yang tidak mendukung Flatpak secara resmi, apalagi distribusi tersebut dianggap sebagai distribusi “kuno” serta “sulit”. Memasang Flatpak di Slackware adalah sebuah tantangan tersendiri.

Beruntung, Flatpak untuk Slackware tersedia di SlackBuilds.org (SBo), repositori skrip SlackBuilds pihak ketiga dari komunitas yang sangat populer, sehingga saya tidak perlu mengompilasi dengan perintah manual (make && make install). Meski begitu, saya perlu memastikan bahwa proses kompilasi dan instalasi Flatpak berikut dependensi-dependensinya di Slackware lancar.

Untuk memudahkan penginstalan aplikasi, saya memanfaatkan perkakas sbopkg. Saya tak ingin menuliskan pengaturan sbopkg karena itu bukan ranah artikel ini.

Flatpak yang tersedia di SBo adalah versi 0.11.9. Sebelum mengompilasi perangkat lunak tersebut, saya pastikan memasang dependensi-dependensi yang diperlukan (terutama yang belum terpasang secara bawaan pada sistem), baik dependensi untuk membangun atau mengompilasi (build) maupun untuk menjalankan (runtime). Soal itu, saya melakukan hal di bawah ini:

# sbopkg -s flatpak | grep REQ
REQUIRES="bubblewrap ostree appstream-glib json-glib libseccomp"

# sbopkg -s bubblewrap | grep REQ
REQUIRES=""

# sbopkg -s ostree | grep REQ
REQUIRES=""

# sbopkg -s appstream-glib | grep REQ
REQUIRES="meson json-glib gcab"

# sbopkg -s json-glib | grep REQ
REQUIRES=""

# sbopkg -s libseccomp | grep REQ
REQUIRES=""

Berdasarkan keluaran perintah di atas, dependensi yang diperlukan Flatpak adalah paket bubblewarp, ostree, appstream-glib, json-glib, dan libseccomp. Dari semua dependensi Flatpak, hanya appstream-glib yang memiliki dependensi, yakni meson, json-glib, dan gcab. Berikutnya kita telusur dependensi yang diperlukan berikutnya.

# sbopkg -s meson | grep REQ
REQUIRES="python3 ninja"

# sbopkg -s gcab | grep REQ
REQUIRES="vala"

Sistem build meson membutuhkan python3 dan ninja sedangkan gcab memerlukan vala. Yuk, cari dependensi ketiganya, jika ada.

# sbopkg -s python3 | grep REQ
REQUIRES=""

# sbopkg -s ninja | grep REQ
REQUIRES=""

# sbopkg -s gcab | grep REQ
REQUIRES=""

Beruntung! Penelusuran dependensi nonbawaan sistem telah berakhir. Dari daftar di atas terlihat bahwa kebutuhan Flatpak tidak begitu merepotkan. Meskipun saya menelusurinya secara manual, saya akan memasangnya secara otomatis dengan memberdayakan perkakas sqg.

# sqq -p flatpak
# cat /var/lib/sbopkg/queues/flatpak.sqf
libseccomp
json-glib
vala
gcab
ninja
python3
meson
appstream-glib
ostree
bubblewrap
flatpak

Kompilasi dan instalasi Flatpak dimulai dengan perintah

# sbopkg -i flatpak

Saat kompilasi dan instalasi selesai, saya langsung dapat memasang dan menjalankan salah satu aplikasi dari GNOME: GNOME Recipes.

$ flatpak install --user --from https://gitlab.gnome.org/GNOME/recipes/raw/master/flatpak/gnome-recipes.flatpakref

Flatpak akan mengunduh dan memasang terlebih dahulu GNOME runtime berukuran 200MB lebih yang dilanjutkan dengan memasang GNOME Recipes. Setelah logout kemudian login kembali ke sistem, saya mulai dapat menjalankan GNOME Recipes dengan perintah

$ flatpak run org.gnome.Recipes
Flatpak GNOME Recipes

Konklusi

Berdasarkan pengujian, Flatpak memang terbukti mudah dipasang, bahkan di distribusi yang terlihat “jadul” dan “sulit” seperti Slackware.

Jika ada waktu, saya tertarik untuk menjajal instalasi sang rival, Snap, di masa mendatang.

Ramdziana adalah seorang narablog, pecinta kode, penggemar open source, pengguna GNU/Linux, dan penggemar Sherlock Holmes. Ikuti akun Twitter/Sebangsa @ramdziana
slot iklan

Leave a Reply

Your email address will not be published. Required fields are marked *

Scroll to top