Pengembangan aplikasi untuk Linux
(makealinux.app)- Desktop dan mobile Linux memiliki permintaan untuk perangkat lunak baru, tetapi jumlah aplikasi di app store dan repositori masih kurang, sehingga pesannya adalah lebih baik fokus pada pengembangan aplikasi daripada membuat distribusi baru
- Bahkan aplikasi yang berawal dari kebutuhan pribadi, jika dikembangkan secara terbuka, dapat menjadi bahan belajar dan komunitas, lalu berujung pada perluasan ekosistem Linux
- Keberagaman berupa ratusan distribusi memang menjadi beban, tetapi dengan memanfaatkan sistem packaging dan distribusi yang terdokumentasi, aplikasi dapat disampaikan kepada pengguna di berbagai lingkungan
- GNOME, KDE Frameworks, elementary OS, Electron, dan Ubuntu Touch menawarkan jalur pengembangan yang berbeda-beda seperti Gtk, Qt, Vala, JavaScript·HTML·CSS, dan QML
- Tersedia sarana distribusi seperti AppCenter, AppImage, Flatpak, Open Build Service, dan Snapcraft, serta ada potensi monetisasi melalui aplikasi berbayar, layanan, dan app store berbasis dukungan
Mengapa Linux membutuhkan lebih banyak aplikasi
- Pengguna Linux desktop dan mobile memiliki permintaan terhadap perangkat lunak baru
- App store dan repositori Linux kekurangan aplikasi dibandingkan platform tertutup
- Bagi para penggemar teknologi, muncul ajakan untuk mencurahkan semangat dan kreativitas bukan pada membuat lebih banyak distribusi Linux baru, melainkan pada aplikasi baru untuk pengguna Linux
- Pesan intinya adalah “berhentilah membuat distribusi Linux dan buatlah aplikasi”
Dampak pengembangan aplikasi bagi ekosistem
- Jika ada ide aplikasi yang Anda butuhkan secara pribadi, mungkin ada pengguna lain dengan kebutuhan serupa
- Jika aplikasi dibuat secara terbuka, pengembang yang lebih baru pun dapat belajar dan mulai berkarya, sehingga membantu pengembangan aplikasi Linux generasi berikutnya
- Pengembangan aplikasi adalah pekerjaan kreatif, dan rasa pencapaian saat proyek selesai juga bisa menjadi imbalan
- Pengembangan aplikasi membantu membentuk komunitas, dan komunitas Linux sering kali ingin membantu pengembang agar berhasil
- Kemampuan pengembangan perangkat lunak adalah keterampilan yang dibutuhkan, dan tersedia banyak sumber belajar gratis
- Anggapan bahwa pengguna Linux tidak mendukung pengembang secara finansial adalah kesalahpahaman; aplikasi dan layanan berbayar yang populer dapat menciptakan sumber pemasukan baru
Menargetkan beragam distribusi Linux
- Tidak seperti platform lain, Linux memiliki target yang sangat beragam, dengan ratusan distribusi
- Setelah dipublikasikan satu kali, aplikasi umumnya dapat berjalan di banyak lingkungan
- Ada sistem packaging dan distribusi yang terdokumentasi dengan baik sehingga pengembang dapat menyalurkan aplikasi kepada pengguna
- Setiap framework pengembangan dan distribusi Linux memiliki jalur yang direkomendasikan untuk menyampaikan aplikasi kepada pengguna
- Saat siap membagikan aplikasi, Anda dapat memeriksa panduan packaging yang direkomendasikan dalam dokumentasi pengembangan
Jalur untuk mulai mengembangkan
-
GNOME
- Proyek GNOME membuat desktop GNOME Shell dan mendukung pengembangan berbasis Gjs dan Gtk
- Di Gtk, Anda dapat menggunakan bahasa populer seperti Python, C, C++, Rust, dan JavaScript
- GNOME Developer Center
-
KDE Frameworks
- KDE menyediakan desktop Plasma serta alat dan framework untuk membuat aplikasi
- KDE Frameworks telah digunakan untuk mengembangkan berbagai aplikasi desktop
- Utamanya memanfaatkan toolkit Qt dan bahasa pemrograman C++
- KDE Frameworks Getting Started
-
elementary OS
- elementary OS berupaya menjadi sistem operasi yang cepat, terbuka, dan menghormati privasi sebagai pengganti Windows dan macOS
- Para pengembang membangun desktop dan ekosistem untuk pengembangan aplikasi
- Panduan pengembang merekomendasikan Vala dan Gtk
- elementary OS Developer Guide
-
Electron
- Electron memungkinkan pembuatan aplikasi desktop lintas platform dengan JavaScript, HTML, dan CSS
- Pengembang dapat memanfaatkan pustaka modul node yang sangat besar untuk membuat aplikasi berbasis teknologi web
- Electron Documentation
-
Ubuntu Touch
- Ubuntu Touch adalah sistem operasi open source yang dirancang untuk berjalan di berbagai perangkat seperti ponsel, tablet, dan PC
- Aplikasi Ubuntu Touch native dibuat dengan QML atau HTML, dan perilakunya didefinisikan dengan JavaScript, C++, Python, Rust, dan Go
- Ubuntu Touch Documentation
Pendapat pengembang tentang ekosistem aplikasi Linux
- Neil McGovern dari GNOME Foundation menilai bahwa untuk membawa Linux ke khalayak luas dibutuhkan ekosistem aplikasi yang berkembang, dan setiap orang harus bisa mengembangkan untuk Linux agar lebih dekat ke tujuan desktop terbuka
- Aleix Pol dari KDE e.V. mengatakan bahwa untuk menjadikan Linux sebagai sistem operasi pilihan, dibutuhkan aplikasi yang hebat, dan melalui alat pengembangan orang dapat membuat apa yang mereka bayangkan
- Pendiri elementary, Daniel Foré, melihat bahwa di desktop Linux ada peluang bukan hanya untuk membuat aplikasi hebat, tetapi juga membangun platform API dan memengaruhi arah desktop
- Jan Sprinz, anggota dewan UBports Foundation, mengatakan bahwa pengembangan aplikasi Linux sepenuhnya berbeda dari ekosistem tertutup; meski bersaing secara teknis, mereka tetap bekerja sama demi visi yang lebih besar
Cara membagikan dan mendistribusikan aplikasi
-
AppCenter
- Sebuah app store terbuka bergaya pay-what-you-want dan layanan build untuk pengembang independen
- AppCenter Dashboard terintegrasi dengan GitHub untuk mendukung rilis dan pelacakan isu
- AppCenter Dashboard
-
AppImage
- Aplikasi desktop Linux dapat didistribusikan dalam format AppImage untuk menjangkau pengguna distribusi Linux secara umum
- Mengusung pendekatan package sekali, jalankan di mana saja
- AppImage Packaging Guide
-
Flatpak
- Sebuah framework untuk distribusi aplikasi desktop Linux
- Dibuat oleh para pengembang yang telah lama bekerja di desktop Linux dan dijalankan sebagai proyek open source independen
- Flatpak Documentation
-
Open Build Service
- openSUSE Build Service adalah instans publik dari Open Build Service
- Digunakan bersama pengembangan distribusi openSUSE, serta untuk menyediakan paket bagi Fedora, Debian, Ubuntu, SUSE Linux Enterprise, dan distribusi lain dari source yang sama
- openSUSE Build Service Help
-
Snapcraft
- Snapcraft adalah alat command-line untuk membuat snaps
- snaps diperkenalkan sebagai paket aplikasi untuk desktop, cloud, dan IoT yang mudah dipasang, aman, lintas platform, dan tanpa dependensi
- Snapcraft Documentation
1 komentar
Pendapat di Hacker News
Menurut saya premisnya keliru karena di Linux belum ada kumpulan framework inti yang ABI-nya stabil
Platform pesaing punya jauh lebih banyak framework dasar seperti CoreImage, CoreAudio, CodeML, SceneKit, dan AppKit, dan lebih jarang rusak
Snap atau flatpak di Linux memang menarik, tetapi itu lebih terasa seperti memutar lewat infrastruktur dan manajemen paket, alih-alih menyelesaikannya di framework dan bahasa pemrograman yang diminta untuk dipakai oleh aplikasi
Linux sebenarnya juga punya kumpulan standar de facto, tetapi karena ada yang berubah dan ditinggalkan, stabilitasnya lebih rendah. Meski begitu, kondisinya lebih baik daripada kelihatannya, dan Snaps bisa mengurangi sebagian masalah
Namun jika orang memilih distro yang tidak punya standar seperti itu, begitu tidak mendukung segala macam konfigurasi unik, kita akan kehilangan separuh calon pengguna
Namun seperti yang disebutkan dalam tulisan, kebanyakan orang terus berfokus membuat distro, dan secara alami sulit muncul satu stack tunggal yang bisa mengikuti begitu banyak distro unik
Pada akhirnya Google mengambil kernel Linux lalu menambahkan dua kumpulan framework inti berbasis Java dan JavaScript, dan bagi konsumen umum, distro Linux itulah yang menjadi pemenangnya
Biasanya pengembang game membangun di distro besar terbaru lalu mengunggahnya ke Steam, dan jika distro itu memiliki glibc 2.36, binernya juga sering kali mendapatkan nama versi yang menuntut glibc 2.36 atau lebih baru
Akhirnya harus memakai direktif symver dari binutils gas untuk memaksa nama versi agar kompatibel dengan glibc yang cukup lama. Secara pribadi, saya melihat 5 tahun, atau mungkin 7–8 tahun, sebagai patokan yang masuk akal: https://sourceware.org/glibc/wiki/Glibc%20Timeline
Pengembang game biasa hampir tidak tahu soal masalah seperti ini, dan sekalipun tahu, mereka tidak akan melakukan pekerjaan semenyakitkan itu demi 1% pasar. Untuk libgcc dan C++, libstdc++ juga harus ditautkan secara statis agar bisa menghindari masalah ABI tersebut
Meski begitu, engine Godot menyediakan container build yang memperhatikan hal-hal ini, dan Unity juga tampak rapi di sisi itu. Saya kurang tahu soal UT5.x
Sebaliknya, ada juga engine yang belum siap, seperti game berbasis Electron. Jika tidak ada versi GTK+ yang cocok untuk distro seperti Enlightenment, Qt, X11 murni, atau Wayland, game bisa tidak berjalan
Mengemas seluruh engine Google Blink dengan benar untuk distribusi biner yang menargetkan cakupan luas distro ELF/Linux juga bukan perkara mudah
ELF/Linux secara umum tidak ramah terhadap distribusi biner tertutup karena kerusakan ABI, terutama pada SDK dan library inti
Jika biner game saja sesulit ini, aplikasi akan lebih sulit lagi. Terbayang para pengembang pada akhirnya berkata, “tidak peduli, pakai saja dengan menginstal Microsoft SUSE GNU/Linux; yang lain tidak didukung”
Sangat hebat jika ada banyak alat yang bisa langsung dipakai tanpa hampir perlu memikirkan masa dukungan, fork mana yang lebih baik, atau apakah cocok dengan library pihak ketiga lain. Itu sangat mengurangi gesekan sehingga kita tinggal membuatnya
Ekosistem KDE Qt dan kubu GNOME/GTK adalah yang paling mendekati, tetapi belum sampai ke level itu
Mungkin saja saya tidak tahu pola untuk menentukan kapan harus menambahkan
devdanversionpada nama paket, atau apa arti angka acak1atau0di belakangnya, tetapi distro Linux pertama yang memiliki aturan penamaan paket yang konsisten sepertinya akan memenangkan hati oranglibgnutls-devlibgtk-3-0libwayland-server0libxcb1libx11-6libffi-devlibncurses5-dev-devberisi header, jadi ini cukup mudahAngka adalah penanda versi saat beberapa versi bisa dipasang bersamaan. Namun bisa ada pengecualian jika itu bagian dari nama library, seperti
xcb1Misalnya, pada suatu waktu mungkin
libgtk-3-0danlibgtk-2-$somethingbisa dipasang bersamaan. Besar kemungkinan namanya tetap dipertahankan agar referensilibgtk-3-0di tutorial lama tidak rusak meskilibgtk-2kemudian dihapusSaya sendiri kurang tahu soal
0di akhirlibwayland-server0. Saya melihat beberapa library di/var/libpunya akhiran.$number, tetapi saya belum pernah menggali apa persisnya yang diselesaikan oleh itu-devsudah cukup; jika ingin mengembangkan dengan library itu, Anda juga perlu-devyang memasang header1atau0di belakang bukan sesuatu yang khusus, hanya bagian dari nama paket atau versinyaNamun
-devberarti hal-hal yang hanya diperlukan saat mengembangkan terhadap library tersebutAngka adalah nomor versi mayor, yaitu nomor kompatibilitas. Ini memungkinkan beberapa versi mayor yang menjadi dependensi paket berbeda dipasang berdampingan dengan mudah tanpa konflik
-dev. Paket-devbernomor biasanya tidak perlu Anda perhatikan langsung; bila perlu, paket tanpa nomor seharusnya meneruskannyaSaat build, dicatat akhiran nomor mana, yaitu versi ABI, yang digunakan. Ini seharusnya sama dengan akhiran
.so.N, tetapi bukan berarti Anda mencarinya langsung dengan cara ituDengan cara ini, beberapa salinan library yang tidak kompatibel bisa dipasang, dan yang sesuai dapat digunakan. Distro biasanya membersihkan yang lama pada setiap rilis besar
Saat instalasi, dependensi yang dicatat saat build seharusnya dipakai secara otomatis
Ini adalah salah satu masalah terbesar yang menahan seluruh platform Linux. Sering disebut sebagai keunggulan, tetapi saya tidak melihatnya begitu
Para pengembang menonjolkan banyaknya pilihan sebagai keunggulan Linux, tetapi bagi banyak pengguna itu menjadi paradoks pilihan dan membuat mereka kembali ke platform yang sebelumnya mereka pakai
Di macOS dan Windows pilihannya lebih sedikit, tetapi pilihan yang ada jauh lebih matang dan kurang terfragmentasi
Misalnya, berapa banyak tiling window manager yang sebenarnya kita butuhkan? Tidak bisakah kita memilih tiling window manager terbaik lalu membuat dock dan applet yang lebih baik? Bagaimana dengan aplikasi dan launcher yang terintegrasi dengan paradigma tiling window manager?
Sebaliknya, yang sering tersisa adalah 10 macam tiling window manager dan program workaround setengah matang di atasnya
Ekosistem yang sukses memastikan bahwa memilih opsi yang paling terlihat pun menghasilkan sesuatu yang cukup baik
Bertambahnya distro Linux kebanyakan hanya perbedaan kecil yang tidak mengurangi kecocokan secara berarti, dan hanya segelintir orang yang sejak awal tidak kesulitan memilih distro yang menganggapnya masalah
Sebaliknya, untuk kasus seperti Wayland, plumbing dan hardware tiba-tiba menjadi penting, dan untuk memilih kombinasi yang layak pakai orang perlu cukup memahami struktur internalnya, jadi itu menjadi masalah nyata
Membandingkan Mac atau Windows dengan Linux juga tidak terlalu bermakna. Bagi 95% konsumen, sistem operasi adalah karakteristik atau fitur tetap dari komputer, bukan produk terpisah
Jika paket keseluruhannya cocok, mereka mungkin membeli komputer yang sudah terpasang sistem operasi itu, tetapi tidak akan mencoba memasangnya secara terpisah di perangkat Windows atau Mac mereka sendiri
Orang yang punya pengetahuan teknis cukup untuk merasa puas kemungkinan tidak akan terlalu bingung meski muncul 3 turunan Ubuntu dan 2 turunan Arch lagi
Menjadi pengembang open source berarti bisa menentukan sendiri tujuan dan caranya, dan dalam pengembangan software komersial kebebasan seperti itu sering kali tidak ada
Akan ada bagian-bagian kasar, tetapi efek IKEA bekerja sehingga pada akhirnya Anda menyukainya
Jika semua orang memakai software yang sama, itu menjadi ekosistem monokultur yang lebih rentan terhadap serangan. Windows banyak menjadi target virus juga karena targetnya besar dan konsisten
Jika satu mesin Windows milik pengguna biasa berhasil ditembus, yang lain pun bisa ditembus dengan cara serupa. Menargetkan Linux jauh lebih sulit
Selain itu, ini software bebas. Jika bukan membayar seseorang untuk mengerjakannya, sebagian besar adalah kegiatan sukarela, dan kita tidak bisa menentukan waktu sukarela orang lain harus dipakai untuk apa
Jika ada begitu banyak kelompok tetapi tidak ada yang ingin bergabung, kita juga perlu meninjau struktur sosial yang dominan. Menghapus code of conduct yang memungkinkan penghukuman atas perilaku di luar proyek mungkin bisa menjadi titik awal
Dan saya juga tidak begitu tahu apa yang masih perlu ditingkatkan. Yang seperti Ulauncher atau Albert jauh lebih kuat daripada yang dimungkinkan di platform lain, dan saya juga tidak tahu bagaimana UI-nya bisa dibuat lebih baik lagi
Bertambahnya jumlah perangkat lunak itu bagus. Namun, sebelum membuat sesuatu yang benar-benar baru dari awal, mungkin lebih baik berkontribusi pada yang sudah ada, atau memilih proyek yang sudah ditinggalkan atau perlu diperbaiki agar bisa dibangun dan dijalankan di compiler serta perangkat keras terbaru
Saya juga penasaran apakah di suatu tempat ada basis data proyek dorman/mati yang layak dihidupkan kembali
Proyek lain bisa saja dipimpin oleh orang yang sulit diajak bekerja sama, atau komunitas yang tidak menerima usulan dan patch
Prosedur sosial dan hambatan bisa membuat motivasi untuk berkontribusi hilang. Tidak semua orang bisa menjadi pemain tim optimistis tanpa kepribadian
Bagi saya, lebih baik memulai dari awal. Karena saya bisa mengendalikan semua variabel, tidak perlu menyentuh infrastruktur sosial maupun teknis yang sudah ada, tidak perlu meyakinkan siapa pun bahwa ide saya bagus, dan tidak ingin menghabiskan lebih banyak waktu untuk berdebat dan berdiskusi daripada menulis kode
Pengalaman pengembangan solo lebih baik. Karena tidak terikat politik dan prosedur sosial, dan mencoba menjadi pemain tim hanya memberi saya penderitaan
Kolaborasi bisa terasa membebani dan melelahkan, tetapi pada akhirnya itulah yang menghasilkan sesuatu, dan waktunya dipakai lebih baik daripada dihabiskan untuk proyek yang akan ditinggalkan
Banyak keluhan bahwa alat untuk membuat aplikasi yang kompatibel di berbagai sistem operasi itu kurang, tetapi saya tidak setuju. Bahkan kalau hanya melihat solusi selain Electron, ada pilihannya
Telegram memakai Qt untuk merilis aplikasi native berkinerja baik di ketiga sistem operasi
Flutter dikompilasi menjadi kode native di ketiga sistem operasi dan mobile
Kirigami adalah framework QtQuick yang memungkinkan pembuatan aplikasi yang bisa berjalan di semua target mobile dan desktop
Tinggal buat saja aplikasinya. Tidak ada alasan menjadikan ini dalih untuk menyalahkan Linux
Di Windows, macOS, dan mobile hampir tidak ada komunitas atau proyek serius. Bukan bermaksud merendahkan pihak KDE, tetapi begitulah kenyataannya
Lisensi Qt Quick juga tidak mudah di iOS, atau kalau masuk jalur komersial menjadi sangat mahal
Sebaliknya, perusahaan-perusahaan besar berinvestasi di Electron dan menghadirkan alat kelas produksi yang sangat matang, dengan komunitas besar dan ekosistem library yang luas, serta bukan bahasa asing seperti Dart
Telegram benar-benar berusaha satu tingkat lebih jauh. Kliennya luar biasa
[0]: https://github.com/overtake/TelegramSwift
Masalahnya adalah perangkat lunak OSS bahkan sering kali tidak benar-benar mencoba bersaing dengan pasar
Orang yang memakai perangkat lunak OSS menganggap wajar bahwa UX-nya akan kurang, dan kenyataannya memang sering begitu
Perangkat lunak proprietari biasa beradaptasi untuk membuat pengalaman pengguna akhir menjadi baik karena ada risiko pengguna tidak mau membayar, tetapi OSS biasanya tidak memiliki risiko seperti itu. Open source juga perlu terekspos pada risiko yang datang dari pengguna akhir
Saya mencoba mengubah itu dengan Notes[1], tetapi merasa sulit untuk hidup hanya dari iklan. Saya juga sempat menambahkan pembayaran untuk fitur premium seperti Kanban, tetapi karena aplikasinya FOSS sepenuhnya, siapa pun bisa dengan mudah mengompilasinya dari source
Untuk aplikasi berikutnya[2], saya berencana menjalankannya sebagai source tertutup sebelum rilis. Saya tidak bisa menanggung risiko bahwa kerja keras saya tidak mendapat imbalan
Saya percaya jika bisa menerima bayaran, saya bisa berinvestasi lebih banyak pada aplikasi yang berfokus pada UX di Linux, jadi ini juga membantu komunitas Linux. Sebagian mungkin akan saya rilis sebagai open source, dan mungkin di masa yang jauh nanti semuanya akan dibuka
[1] https://github.com/nuttyartist/notes
[2] https://www.get-plume.com
Jadi jika programnya tidak dibuat open source, kemungkinan Anda akan kehilangan lebih banyak daripada jika membuatnya open source dan menanggung risiko sebagian orang tidak membayar
Menurut saya, jauh lebih banyak orang yang bersedia membayar untuk memakai open source dibanding orang yang mau memakai perangkat lunak proprietari
Open source bukan berarti harus mendistribusikan kode ke semua orang; jika Anda memungut bayaran, Anda bisa memberikan source code hanya kepada pengguna berbayar. Namun mereka akan punya hak untuk memodifikasi dan mendistribusikan ulang
Kalau tidak peduli pada open source, orang bisa memakai Notion atau Evernote. Kalau mencari aplikasi catatan open source modern, saya merekomendasikan Logseq
Pertama, Notes terlihat cukup mirip dengan Standard Notes. Jika Notes dibuat dengan memakai OSS copyleft, menurut saya sulit untuk mengeluh kecuali membayar royalti kepada para programmer lain yang karyanya termasuk di dalamnya
Kedua, saya mungkin pengguna yang tidak tipikal. Saya sudah memakai Linux lebih dari 20 tahun, tetapi bahkan tidak bisa menulis skrip Bash atau satu baris Perl dengan benar
Namun justru karena saya tidak bisa coding dan menghargai pekerjaan orang lain serta kebebasan yang diberikannya, saya telah mengeluarkan jauh lebih banyak uang untuk perangkat lunak daripada yang biasanya dikeluarkan individu di platform lain
Saya mendukung banyak pihak, seperti Kaisen dan Debian, utilitas inti FSF dan Emacs, KDE, Firefox dari Mozilla, Betterbird, Syncthing, LaGrange, Joplin, ClipTo, SoulSeek, serta layanan seperti envs.net
Ada yang saya bayar tiap tahun, ada yang tiap bulan, ada yang hanya sekali
Saat Standard Notes pertama keluar, saya juga membayar langganan 7 tahun, tetapi berhenti setelah memakainya sekitar dua bulan karena tidak puas. Ada juga yang sering saya pakai seperti Alacritty tetapi tidak menemukan cara untuk berdonasi, dan saya berusaha meminimalkan kasus seperti itu
Sebenarnya saya merasa macOS adalah salah satu window manager terburuk di antara platform populer. Memang cantik dan mudah dipakai, tetapi untuk melakukan sesuatu di luar dasar, perlu mantra ajaib yang tidak bisa ditemukan secara alami
Tentu selera tiap orang berbeda
Saya mengeklik untuk melihat harga premium; secara tahunan masuk akal, tetapi yang terlihat hanya opsi langganan bulanan, jadi saya merasa itu sulit
Untuk aplikasi seperti ini, saya lebih mungkin berdonasi daripada membayar versi premium. Obsidian berhasil dengan model itu
Saya tidak menganggap akses awal ke fitur sebagai nilai besar, tetapi banyak orang membayar untuk mendukung pekerjaannya
Selain itu, menurut saya struktur dengan ekosistem open source besar di sekitar produk inti yang tertutup memberi orang alasan untuk membayar
Akan lebih baik kalau tulisannya punya beberapa contoh
Saya tidak terlalu bisa membayangkan orang yang sedang membuat distro padahal sebenarnya seharusnya membuat aplikasi. Kalau dipaksakan, mungkin LinuxCNC? Tapi itu punya kebutuhan kernel tertentu, jadi distro kustom mungkin memang lebih cocok
Saya kurang paham kenapa distro turunan dari turunan dibagikan hanya karena memuat desktop environment yang berbeda
Menurut saya, daripada “Berhenti membuat distro Linux, buatlah aplikasi”, lebih baik berhenti mendengarkan orang-orang yang mencoba mendikte apa yang harus dan tidak boleh dilakukan
Meski begitu, pesan dan informasinya sendiri bagus
Secara pribadi, saya mungkin akan mengatakan “Pengguna Linux tidak menginginkan lebih banyak distro. Mereka menginginkan perangkat lunak.” Setidaknya itu berlaku untuk saya
Baru-baru ini pindah dari Mac ke Linux, karena ingin memakai perangkat bekas berperforma bagus sebagai mesin harian
Sebelumnya juga pernah memasang Linux di beberapa mesin, tetapi kali ini bukan sekadar hobi
Ubuntu mendukung hardware dan periferal saya dengan baik, tetapi app store-nya terasa belum matang dan seperti dipaksakan masuk. Meski begitu, hampir semuanya berfungsi sesuai harapan
Saya juga ingin mencoba Mint, Debian, dan Arch, tetapi agak berhati-hati karena tampaknya banyak software ditulis dengan Ubuntu sebagai acuan
Ada juga versi Mint berbasis Debian, tetapi itu lebih seperti pengaman agar tidak bergantung secara fatal pada pihak Ubuntu
Sekarang, memakai distro yang tidak biasa pun tidak terlalu bermasalah. Kalau package manager bawaan tidak menyediakan aplikasi yang diinginkan, bisa memakai AppImage, Flatpak, atau Snap
Saat memakai Arch, memang perlu terbiasa dengan asumsi orang-orang yang menjadikan Ubuntu sebagai patokan, tetapi kebanyakan hanya sebatas mem-patch file konfigurasi atau mengatur variabel lingkungan
Hal-hal seperti itu adalah keterampilan yang berguna dan bisa diterapkan di tempat lain juga
Saya merasa seandainya saja mencobanya lebih awal
Entah kenapa ada orang yang mau melakukan itu. Lebih sulit, dan pengguna Linux tidak akan membayar untuk sesuatu yang tidak layak dibayar