Menguasai pengelolaan software di NetBSD: membangun package dari source dengan pkgsrc, memasang binary package dengan pkg_add, serta mengelola package dengan pkg_info, pkg_admin, dan pkg_chk.

Di episode 3 sebelumnya kita berhasil menginstall NetBSD dan memboot sistem pertama kalian. Sistem itu masih "kosong" — hanya berisi base system. Kini saatnya mengisinya dengan software: pada episode ini kita akan menguasai package management NetBSD dengan pkgsrc dan pkg_add — dua jalur utama untuk memasang software di luar base system.
Ini salah satu pembeda terbesar NetBSD terhadap Linux. Di Linux, kalian terbiasa dengan satu package manager yang menyatukan sistem dan software. Di NetBSD, pakai pkg_add untuk binary package dan pkgsrc untuk membangun dari source — keduanya bekerja di atas base system tanpa mencampurnya, persis seperti yang kita pelajari di episode 2. Mari kita mulai dari konsepnya.
pkgsrc adalah framework build package NetBSD yang juga berjalan di banyak sistem lain: Linux, macOS, FreeBSD, Solaris, dan lainnya. Inilah yang membuat NetBSD punya kekuatan portabilitas yang merambat ke level software. Satu source tree pkgsrc berisi ribuan package yang masing-masing punya Makefile, dependensi, dan petunjuk build.
Dua cara memakai pkgsrc:
| Cara | Perintah | Kecepatan | Kapan Dipakai |
|---|---|---|---|
| Binary package | pkg_add | Cepat (unduh jadi) | Package resmi/populer |
| Build dari source | make install di /usr/pkgsrc | Lambat (kompilasi) | Package tidak ada binarynya, atau ingin custom flags |
Keduanya menghasilkan package yang sama-sama terdaftar di database pkg_install — dikelola dengan pkg_info, pkg_admin, dan pkg_delete.
Jika kalian menginstall dari repository binary NetBSD, package sudah tersedia dalam bentuk .tgz atau .tbz. Gunakan pkg_add dengan nama package:
pkg_add -v htoppkg_add: pkgconf>=2.1.0: installing 'pkgconf-2.1.0'
pkg_add: htop-3.3.0: installing 'htop-3.3.0'
pkg_add: 1 package addedPerhatikan bahwa dependensi (pkgconf) ikut terpasang otomatis. Untuk mencari package yang tersedia di repository:
pkg_info -Q htop
pkg_info -Q nmaphtop-3.3.0: Interactive process viewer
nmap-7.95: Network exploration tool and security scannerInfo
Binary repository resmi NetBSD disusun per rilis dan per arsitektur, misalnya ftp.netbsd.org/pub/pkgsrc/packages/NetBSD/amd64/11.0/. Pastikan variabel PKG_PATH mengarah ke repository yang sesuai dengan versi dan arsitektur kalian.
Inilah jalur yang paling "NetBSD": membangun package dari source. Pertama, ambil source tree pkgsrc. Cara modern adalah lewat pkgsrc-bootstrap dengan git:
cd /usr
git clone -b pkgsrc-2026Q2 --depth 1 \
https://github.com/NetBSD/pkgsrc.git pkgsrcKemudian untuk membangun sebuah package, pindah ke direktori package dan jalankan make:
cd /usr/pkgsrc/sysutils/htop
make install clean=> Checksum OK for htop-3.3.0.tar.gz.
=> Building htop-3.3.0
=> Installing dependencies: ncurses>=6.0
...
=> Installing htop-3.3.0Build dari source memakan waktu, tetapi memberi kendali penuh: kalian bisa mengatur konfigurasi build, menerapkan patch, dan memastikan binary dioptimalkan untuk mesin kalian. Ini filosofi yang sama dengan build.sh di episode 10 — NetBSD menekankan transparansi.
Hasil build bisa dibungkus menjadi binary package agar bisa dipasang di mesin lain:
make package=> Creating binary package /usr/pkgsrc/packages/All/htop-3.3.0.tgzBinary package itu lalu bisa dipindahkan ke mesin lain dan dipasang dengan pkg_add. Ini alur kerja yang umum untuk menyebarkan software ke banyak server NetBSD yang identik.
pkg_infohtop-3.3.0 Interactive process viewer
pkgconf-2.1.0 Package compiler and linker metadata toolkitUntuk melihat detail satu package — termasuk file yang diinstall dan dependensinya:
pkg_info -v htop
pkg_info -f htoppkg_delete htop
pkg_delete -R htopOpsi -R menghapus package beserta dependensinya yang tidak dipakai package lain.
pkg_admin adalah tool administrasi database package. Paling sering dipakai untuk memeriksa integritas package:
pkg_admin checkChecking pkgconf-2.1.0 ...
Checking htop-3.3.0 ...
All packages installed correctlypkg_admin juga bisa menampilkan dependensi (dengan pkg_admin deptree) dan memeriksa file yang hilang (pkg_admin lsall) — berguna saat audit sistem.
Mengupdate package di NetBSD bisa dilakukan dengan dua cara:
pkg_add -u — memperbarui package ke versi terbaru yang tersedia di repository:pkg_add -upkg_chk (package dari pkgsrc sendiri) — mencocokkan package terpasang dengan versi yang tersedia di source tree, lalu membangun yang tertinggal:cd /usr/pkgsrc/pkgtools/pkg_chk
make install
pkg_chk -upkg_chk -u membangun ulang semua package yang versinya lebih lama dari yang tersedia di source tree — alur paling "NetBSD" untuk menjaga sistem tetap segar.
Pada episode 4 ini, kalian telah menguasai dua jalur package management NetBSD: pkgsrc untuk membangun dari source dengan make install di /usr/pkgsrc, dan pkg_add untuk memasang binary package yang siap pakai. Kalian juga belajar mengelola package dengan pkg_info, pkg_delete, pkg_admin, serta memperbaruinya dengan pkg_add -u dan pkg_chk.
Inti yang harus dibawa pulang:
/usr/pkg terpisah dari base system.pkg_add untuk binary cepat, make install di source tree untuk kendali penuh.pkg_info (daftar), pkg_delete (hapus), pkg_admin (audit).pkg_add -u atau pkg_chk -u.make package untuk disebarkan.Di episode 5 selanjutnya kita akan mengatur penghuni sistem: user, group, dan privileges — membuat akun dengan useradd, mengelola grup di /etc/group, dan membatasi akses root dengan su, doas, dan sudo. Sampai jumpa di episode 5!