Arch Linux mengambil jalan yang berbeda dari dua keluarga sebelumnya: bukan dua perintah berlapis, melainkan satu perintah bernama pacman yang sekaligus menjadi frontend dan backend. Filosofinya khas Arch — sederhana, mutakhir, dan menyerahkan kendali penuh ke tangan pengguna. Pacman tidak terpasang pada mesin Debian tempat materi ini diuji, jadi contoh perintahnya kita simak sebagai panduan; dua konfigurasi khas Arch (berkas pacman.conf dan PKGBUILD) tetap bisa kita bedah langsung karena keduanya berupa berkas teks biasa.
Rolling Release: Memasang Sekali, Membarui Selamanya #
Arch tidak punya nomor rilis seperti Debian 13 atau Fedora 40. Sistem yang dipasang hari ini akan menjadi sistem yang sama tiga tahun lagi — yang berubah hanya isi package-nya, secepat upstream merilis versi baru. Model rolling release ini mengharuskan satu kebiasaan: menjalankan pacman -Syu secara rutin untuk membarui seluruh sistem sekaligus. Membiarkan sistem basi berbulan-bulan lalu membarukan semuanya sekaligus adalah resep masalah, karena package akan saling berjarak terlalu jauh.
Operasi Utama pacman #
Huruf besar setelah tanda hubung adalah “aksi”, dan huruf kecil adalah “modifikasi aksi” — logika ini membuat perintah pacman mudah dibaca setelah terbiasa. Operasi yang paling sering dipakai:
| Tugas | Perintah |
|---|---|
| Segarkan indeks + tingkatkan seluruh sistem | pacman -Syu |
| Pasang package | pacman -S htop |
| Hapus package beserta dependensi dan konfigurasinya | pacman -Rns htop |
| Cari di repository | pacman -Ss htop |
| Cari di package terpasang | pacman -Qs htop |
| Info package terpasang | pacman -Qi htop |
| Daftar file milik package | pacman -Ql bash |
| File ini milik package mana | pacman -Qo /usr/bin/ls |
Dua huruf pertama mudah diingat: S berarti sync terhadap repository, Q berarti query ke database lokal — jadi pacman -Qi padanan dpkg -s, dan pacman -Qo padanan dpkg -S. Sebagai contoh tampilan saat membarukan sistem:
:: Synchronizing package databases...
core 131.2 KiB 2.1 MiB/s 00:00 [######################] 100%
extra 1926.4 KiB 9.8 MiB/s 00:00 [######################] 100%
:: Starting full system upgrade...
resolving dependencies...
looking for conflicting packages...
Packages (2) bash-5.2.026-2 glibc-2.39-4
Total Download Size: 12.40 MiB
:: Proceed with installation? [Y/n]Baris Packages (2) adalah ringkasan transaksi — sama seperti kontrak dependensi yang dnf tampilkan, pacman memakai format tabel yang lebih ringkas. Opsi -Rns layak diperhatikan: -R menghapus package, n menyapu dependensinya yang tak lagi terpakai, dan s menghapus konfigurasi globalnya — kombinasi yang membuat sistem Arch tetap bersih.
Membedah pacman.conf #
Perilaku pacman dikendalikan oleh /etc/pacman.conf — berkas INI sederhana. Berikut bentuk intinya, kita tiru ke berkas lokal untuk dibedah:
cat > pacman.conf <<'AKHIR'
[options]
HoldPkg = pacman glibc
CheckSpace
SigLevel = Required DatabaseOptional
ParallelDownloads = 5
[core]
Include = /etc/pacman.d/mirrorlist
[extra]
Include = /etc/pacman.d/mirrorlist
AKHIR
grep -E '^(SigLevel|CheckSpace|ParallelDownloads|\[)' pacman.confOutput yang Dihasilkan:
[options]
CheckSpace
SigLevel = Required DatabaseOptional
ParallelDownloads = 5
[core]
[extra]Tiga baris di bawah [options] adalah pengaturan yang paling sering disentuh: SigLevel menuntut tanda tangan pada package dan database (Required), CheckSpace membuat pacman memeriksa sisa disk sebelum memasang, dan ParallelDownloads mengatur berapa unduhan berjalan bersamaan. Bagian [core] dan [extra] adalah definisi repository — dua gudang resmi Arch yang alamat mirrornya diambil dari berkas terpisah lewat Include — sementara HoldPkg melarang pacman menghapus dirinya sendiri secara tak sengaja.
AUR dan makepkg #
Gudang resmi Arch luas, tetapi komunitasnya lebih luas lagi. Arch User Repository (AUR) adalah indeks package buatan komunitas berisi puluhan ribu PKGBUILD — resep yang menyusun package dari source code. Berikut resep paling sederhana yang bisa dibuat:
cat > PKGBUILD <<'AKHIR'
pkgname=salam
pkgver=1.0
pkgrel=1
pkgdesc="program salam sederhana untuk belajar AUR"
arch=('x86_64')
depends=('glibc')
source=("salam-1.0.tar.gz")
md5sums=('SKIP')
AKHIR
grep -E '^(pkgname|pkgver|pkgrel|depends)=' PKGBUILDOutput yang Dihasilkan:
pkgname=salam
pkgver=1.0
pkgrel=1
depends=('glibc')Perintah makepkg membaca resep ini, mengunduh source, membangunnya, lalu menghasilkan file .pkg.tar.zst lokal yang dipasang dengan pacman -U. Karena seluruh resep hanyalah teks yang bisa dibaca, memasang dari AUR secara teknis sama dengan mengkompilasi sendiri — hanya resepnya ditulis orang lain. Alur kerja lengkapnya didokumentasikan di wiki AUR
, dan helper seperti yay mengotomatiskan pencarian dan pembaruan AUR — tetapi keduanya tetap bukan bagian resmi Arch, jadi tetap biasakan membaca PKGBUILD sebelum memasang.
Dari satu perintah yang mengurus semuanya, kita berpindah ke keluarga terakhir: openSUSE dengan zypper, yang justru terkenal dengan resolver paling hati-hati dan konsep pattern-nya — kita temui di Chapter berikutnya
.