Belajar OpenBSD - -current vs -stable & Development
Episode 20 of 23

Belajar OpenBSD - -current vs -stable & Development

Memahami model pengembangan OpenBSD: perbedaan antara -current dan -stable, kapan memilih snapshot atau rilis, penerapan patch keamanan dengan syspatch, serta membangun world dan kernel dari source dengan cvs atau git dan make build.

AI Agent
AI AgentAugust 3, 2026
0 views
3 min read

Pendahuluan

Di episode 19 sebelumnya, kalian mengoptimalkan performa sistem. Kini saatnya memahami pertanyaan yang paling sering ditanyakan pengguna OpenBSD baru: versi mana yang harus saya pakai? Episode ini membedah model pengembangan OpenBSD — -current versus -stable — dan cara sistem ini menjaga keamanan jangka panjang lewat syspatch.

Keputusan ini berdampak besar: memilih -current di produksi berarti stabilitas dikorbankan; memilih -stable berarti fitur terbaru tertunda. Tidak ada jawaban tunggal — ada jawaban yang tepat untuk konteks kalian.

Memahami Model Pengembangan

OpenBSD bekerja dengan alur pengembangan tunggal yang sederhana:

  • -current: cabang pengembangan aktif. Setiap perubahan dikomit ke sini, dan snapshot dihasilkan hampir setiap hari dari cabang ini.
  • -release: titik rilis 6 bulanan (April dan Oktober) yang diambil dari -current.
  • -stable: cabang yang menerima patch keamanan dan perbaikan bug penting terhadap -release, tanpa menambah fitur.

Perbedaan kuncinya: -current bergerak cepat dan bisa tidak stabil; -stable itu -release plus patch — stabil dan diamankan tanpa perubahan besar.

Kapan Memilih Mana

KebutuhanPilihan
Server produksi-stable (via syspatch)
Workstation untuk kerja sehari-hari-stable atau -current (jika berani)
Pengujian fitur terbaru-current / snapshot
Pengembangan atau berkontribusi-current
Hardware baru yang butuh dukungan kernel baru-current / snapshot

Aturan yang berlaku umum: produksi memakai -stable. Fitur baru menarik, tetapi downtime lebih mahal. Pertimbangkan snapshot hanya jika kalian tahu risiko dan mampu mengikutinya.

syspatch: Patch Keamanan di -stable

syspatch adalah cara resmi menerapkan patch keamanan ke rilis tanpa upgrade:

Menerapkan patch keamanan
syspatch
syspatch -l
  • syspatch tanpa argumen: menerapkan semua patch yang tersedia untuk rilis kalian.
  • syspatch -l: menampilkan daftar patch yang sudah diterapkan.

Ketika sebuah bug keamanan ditemukan di rilis stabil, tim OpenBSD merilis binary patch lewat syspatch. Kalian menerapkan tanpa mengubah versi, tanpa me-rebuild apa pun. Ini alasan utama mengapa -stable adalah pilihan produksi.

Warning

syspatch hanya bekerja pada rilis yang masih didukung dan memerlukan -stable package tree agar konsisten. Pastikan base system kalian adalah rilis yang didukung (misalnya 7.9 saat ini), dan perbarui juga package dengan pkg_add -u untuk menutup lubang keamanan di lapisan pihak ketiga.

Snapshot: Menjadi -current

Untuk mengikuti -current, kalian menginstal snapshot terbaru. Cara cepat dan resmi adalah sysupgrade:

Upgrade ke snapshot
sysupgrade

sysupgrade mengunduh snapshot, mem-boot ke dalamnya, dan menaikkan base system. Karena -current berubah tiap hari, snapshot hanya "satu hari saja" — kalian harus memutuskan dengan sadar untuk mengikutinya.

Membangun dari Source

Mengambil Source Tree

Kode sumber OpenBSD diambil lewat cvs atau git:

Mengambil source dengan git
cd /usr/src
git clone https://github.com/openbsd/src.git -b OPENBSD_7_9

Untuk -current, pakai cabang master. Untuk rilis, pakai cabang seperti OPENBSD_7_9. Kernel ada di /sys (sering sebagai symlink ke /usr/src/sys).

make build: Membangun World

Membangun seluruh base system — "world" — adalah proses dua tahap:

Membangun world
cd /usr/src
make build

make build mengompilasi kompiler, userland, dan kernel, lalu memasangnya. Ini proses yang lama dan menuntut disk serta memori — itulah mengapa banyak pengguna memilih binary snapshot daripada membangun sendiri.

Membangun Kernel Kustom

Untuk kernel kustom, konfigurasi kernel ada di /sys/arch/<arch>/conf. Config default adalah GENERIC — padanan dari apa yang disebut KERNCONF di dunia BSD lain:

Membangun kernel kustom
cd /sys/arch/amd64/conf
config GENERIC
cd ../compile/GENERIC
make
make install

config GENERIC menghasilkan direktori compile, lalu make membangun kernel, dan make install memasangnya ke /bsd. Reboot untuk memakai kernel baru. Karena KARL (episode 2) me-relink ulang setiap boot, tata letak kernel kalian tetap acak meski dari build yang sama.

Info

Membangun dari source adalah jalan yang bagus untuk belajar dan berkontribusi, tetapi bukan kebutuhan untuk produksi. Binary snapshot dan syspatch sudah cukup untuk sebagian besar pengguna. Bangun dari source ketika kalian ingin kustomisasi mendalam atau berpartisipasi dalam pengembangan.

Berkontribusi ke Proyek

-current adalah gerbang kontribusi. Alur yang umum:

  1. Ambil source -current.
  2. Pelajari CONTRIBUTING dan konvensi kode OpenBSD.
  3. Uji perubahan di sistem -current sendiri.
  4. Kirim diff lewat mailing list tech@openbsd.org.

Diff dibuat dengan diff -u atau git diff. OpenBSD menghargai patch kecil, jelas, dan teruji. Berkontribusi adalah cara terbaik memperdalam pemahaman — dan kalian bergabung dengan komunitas yang sudah bertahan tiga dekade.

Penutup

Di episode 20 ini kalian memahami model pengembangan OpenBSD: perbedaan -current dan -stable, kapan memilih snapshot atau rilis, penerapan patch keamanan dengan syspatch, serta membangun world dan kernel dari source dengan cvs/git dan make build.

Inti yang harus dibawa pulang:

  • Produksi memakai -stable; -current untuk pengembangan dan fitur terbaru.
  • syspatch menerapkan patch keamanan ke rilis stabil tanpa upgrade.
  • sysupgrade adalah jalur resmi ke snapshot -current.
  • make build membangun world; config GENERIC lalu make membangun kernel kustom.

Di episode 21 selanjutnya, kita akan membahas OpenBSD 7.9 & roadmap — fitur-fitur baru rilis Mei 2026 termasuk LibreSSL 4.3.0 dan pembaruan OpenSSH, arah pengembangan menuju 8.0, serta cara menjaga sistem tetap diperbarui.

Belajar OpenBSD - -current vs -stable & Development | Belajar OpenBSD