4 poin oleh GN⁺ 2024-01-27 | 1 komentar | Bagikan ke WhatsApp

Oasis adalah sistem Linux kecil

  • Oasis sangat berbeda dari sistem operasi berbasis Linux lainnya, dan lebih dekat ke BSD.
  • Semua perangkat lunak ditautkan secara statis, sehingga menyelesaikan masalah upgrade library dan menyediakan biner yang sepenuhnya mandiri yang dapat dengan mudah disalin ke sistem lain.
  • Menawarkan build yang cepat dan build yang 100% dapat direproduksi, dengan waktu build yang optimal, build yang dapat diprediksi dan direproduksi, pengurangan dependensi waktu build, serta build inkremental yang dimungkinkan bahkan melintasi batas paket.
  • Memiliki dependensi bootstrap yang minimal, sehingga dapat dengan mudah dikompilasi silang bahkan di sistem non-Linux seperti macOS atau OpenBSD.

Prinsip

  • Kompleksitas perangkat lunak harus diukur dengan menyertakan semua dependensi transitif.
  • Berkas eksekusi harus ditautkan secara statis.
  • Komponen perangkat lunak harus memungkinkan kustomisasi dan modifikasi yang mudah.
  • Sumber paket harus dirujuk melalui URL atau git submodule, dan tidak boleh disertakan secara langsung.
  • /etc harus cukup sederhana sehingga dapat dipahami sepenuhnya.
  • Patch harus tertata dengan baik, memiliki penjelasan yang bagus, dan selalu dapat diterapkan dengan bersih.

Instalasi

  • Oasis adalah proyek yang ambisius, dan masih banyak pekerjaan yang tersisa.
  • Pengguna harus terbiasa membangun kernel mereka sendiri dan menyelesaikan masalah sistem.
  • Jika mengalami masalah, mereka selalu senang membantu.

QEMU

  • Jika ingin mencoba Oasis tanpa memasangnya secara langsung, Anda dapat menggunakan image QEMU.
  • Arsip tersebut mencakup root filesystem, kernel Linux, dan skrip untuk menjalankan QEMU.
  • Dapat dijalankan dalam mode grafis dengan ./run, atau dalam mode serial dengan ./run -s.

Perangkat lunak

  • Menggunakan implementasi library dan alat yang sesederhana dan sekecil mungkin.
  • musl, sbase, ubase, pigz, mandoc, bearssl, oksh, sdhcp, vis, byacc, perp dan sinit, netsurf, samurai, velox, netbsd-curses, dan lainnya digunakan sebagai pengganti glibc, coreutils, util-linux, gzip, man-db, openssl, bash, dhclient/dhcpcd, vim/emacs, bison, sysvinit/systemd, chromium/firefox, ninja, Xorg, dan ncurses.
  • Paket dikelompokkan ke dalam set yang logis, dan daftar lengkapnya dapat dilihat di direktori pkg.
  • Jika perangkat lunak pilihan Anda tidak ada, Anda tetap dapat memasangnya melalui pkgsrc atau nix.

Kontak

  • Untuk pertanyaan, patch, dan diskusi umum, Anda dapat menggunakan mailing list (~mcf/oasis@lists.sr.ht) dan kanal IRC (#oasis on libera.chat).

Opini GN⁺

  • Oasis menawarkan pendekatan yang berbeda dari sistem Linux konvensional, dan memberikan pilihan baru bagi para pengembang melalui karakteristik seperti tautan statis, build cepat, dan dependensi bootstrap yang minimal.
  • Sistem ini memiliki filosofi yang menekankan pengurangan kompleksitas pengembangan perangkat lunak serta kemudahan kustomisasi dan modifikasi, sehingga menghadirkan sudut pandang yang segar terhadap prinsip-prinsip rekayasa perangkat lunak.
  • Oasis masih merupakan proyek yang sedang dikembangkan, tetapi dapat menjadi alternatif yang menarik bagi pengguna yang menikmati tantangan teknis dan menginginkan pemahaman mendalam tentang sistem.

1 komentar

 
GN⁺ 2024-01-27
Komentar Hacker News
  • Tidak banyak yang bisa dikatakan tentang sistemnya, tetapi saat berinteraksi dengan komunitas lewat IRC mereka sangat ramah. Ada rencana membangun image OS yang immutable untuk dijalankan sebagai node Kubernetes, dan dengan sedikit bantuan hal itu berhasil dilakukan.

  • Static linking mengisyaratkan bahwa image dasar dan memori runtime bisa menjadi lebih besar karena adanya beberapa salinan library. Kesederhanaan static linking memang bagus, tetapi tampaknya bertentangan dengan ide "mengurangi ukuran".

  • Menyediakan tautan ke diskusi sebelumnya dari Agustus 2022.

  • Penasaran apakah ada yang tahu berapa ukuran instalasi dasarnya. Tidak bisa menemukan jawabannya di mana pun, dan tautan ke image QEMU saat ini rusak. Misalnya, penasaran bagaimana perbandingannya dengan Alpine yang memiliki set paket serupa.

  • Penasaran apa use case-nya, dan apa keuntungan menggunakan kompiler C croc. Apa kelebihan memakai croc dibanding TCC, dan menarik jadi tahu tentang browser Netsurf. Namun, karena menggunakan mesin JS Duktape, mungkin ada masalah performa.

  • Ada komentar (yang sudah dihapus) yang mengeluhkan bahwa Github tidak bisa diakses saat JavaScript dimatikan. Repositori Oasis juga dimirror di sourcehut, jadi itu mungkin lebih bisa diterima.

  • michaelforney juga mengerjakan port wayland untuk st. Pendahulu Oasis adalah sta.li.

  • Penasaran seberapa besar ukuran library statis. Library dinamis bisa berbagi ruang alamat, tetapi dalam kasus library statis, linker dapat membuang rutin yang tidak digunakan sehingga bisa ada efisiensi yang tak terduga. Selain itu, mungkin juga lebih cepat.

  • Penasaran bagaimana perbandingan antara musl dan glibc tradisional, dan apakah ada perbedaan performa di antara keduanya. Belakangan ini penggunaan musl makin banyak di ekosistem Rust dan Zig.

  • Pilihan-pilihan yang menarik, dan dinilai positif karena bukan sekadar distro Linux lain.