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:

TugasPerintah
Segarkan indeks + tingkatkan seluruh sistempacman -Syu
Pasang packagepacman -S htop
Hapus package beserta dependensi dan konfigurasinyapacman -Rns htop
Cari di repositorypacman -Ss htop
Cari di package terpasangpacman -Qs htop
Info package terpasangpacman -Qi htop
Daftar file milik packagepacman -Ql bash
File ini milik package manapacman -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:

text
:: 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:

bash
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.conf

Output yang Dihasilkan:

text
[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:

bash
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)=' PKGBUILD

Output yang Dihasilkan:

text
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 .