Repository
Repositori adalah inti dari sistem paket XBPS. Repositori dapat bersifat lokal (di mesin sendiri) atau remote (di server internet).
Sebuah repositori berisi:
| Komponen | Penjelasan |
|---|---|
File paket (.xbps) | File paket yang sudah dikompilasi dan siap diinstall |
Tanda tangan (.sig2) | File signature untuk memverifikasi keaslian paket |
| File repodata | File $ARCH-repodata (contoh: x86_64-repodata) berisi metadata semua paket di repo |
Repositori lokal tidak wajib memiliki tanda tangan. Repositori remote wajib ditandatangani.
Struktur Repositori Void Linux
Path repositori relatif terhadap base mirror URL:
| Arsitektur & Libc | Path |
|---|---|
| x86_64 / i686 glibc | /current |
| musl | /current/musl |
| aarch64 glibc | /current/aarch64 |
Cek mirror yang aktif:
xbps-query -L
Subrepositori Resmi
Selain repositori utama yang aktif secara default, Void menyediakan beberapa repositori tambahan yang tidak aktif secara default:
| Subrepositori | Isi | Paket Aktivasi |
|---|---|---|
nonfree | Paket dengan lisensi non-free | void-repo-nonfree |
multilib | Library 32-bit untuk sistem x86_64 glibc | void-repo-multilib |
multilib/nonfree | Paket 32-bit dengan lisensi non-free | void-repo-multilib-nonfree |
debug | Simbol debugging untuk paket | void-repo-debug |
Semua paket aktivasi di atas hanya menginstall file konfigurasi ke /usr/share/xbps.d, bukan paket aplikasi.
Ringkasan perintah aktivasi:
sudo xbps-install -S void-repo-nonfree
sudo xbps-install -S void-repo-multilib
sudo xbps-install -S void-repo-multilib-nonfree
sudo xbps-install -S void-repo-debug
Selalu jalankan dengan
-Sagar indeks disinkronkan setelah repositori baru ditambahkan.
nonfree
Berisi paket dengan lisensi tidak bebas. Alasan umum suatu paket masuk ke nonfree:
| Alasan | Contoh |
|---|---|
| Lisensi proprietary meski source tersedia | Beberapa tool komersial |
| Dirilis hanya sebagai biner tanpa source | Driver NVIDIA, beberapa firmware |
| Mengandung teknologi berpaten | Beberapa codec multimedia |
sudo xbps-install -S void-repo-nonfree
xbps-query -Rs nvidia
multilib
Menyediakan paket 32-bit untuk sistem 64-bit sebagai lapisan kompatibilitas.
Prasyarat:
- Arsitektur: hanya
x86_64 - C library: hanya glibc — tidak tersedia untuk musl
sudo xbps-install -S void-repo-multilib
# Contoh install library 32-bit (misalnya untuk Steam)
sudo xbps-install -S libGL-32bit
Paket 32-bit umumnya memiliki suffix -32bit pada namanya.
multilib/nonfree
Gabungan multilib dan nonfree — berisi paket 32-bit dengan lisensi tidak bebas. Contoh: nvidia-32bit.
sudo xbps-install -S void-repo-multilib-nonfree
debug
Paket Void dikirim tanpa simbol debugging untuk menghemat ruang. Aktifkan repositori ini jika perlu debugging atau analisis core dump.
sudo xbps-install -S void-repo-debug
# Install simbol debug untuk paket tertentu
sudo xbps-install -S bash-dbg
xdbg (dari xtools)
xdbg membantu mendapatkan daftar paket debug beserta dependensinya:
sudo xbps-install -S xtools
# Lihat debug packages yang dibutuhkan
xdbg bash
# bash-dbg
# glibc-dbg
# Install sekaligus
sudo xbps-install -S $(xdbg bash)
Paket
-dbgbiasanya berukuran beberapa kali lipat dari paket aslinya. Hapus setelah selesai:sudo xbps-remove -R bash-dbg.
Konfigurasi Repositori
| Lokasi | Keterangan |
|---|---|
/usr/share/xbps.d/ | Konfigurasi default (dari paket void-repo-*) |
/etc/xbps.d/ | Konfigurasi lokal — override konfigurasi default |
File di /etc/xbps.d/ dibaca lebih awal dan memiliki prioritas lebih tinggi.
Nonaktifkan repositori tanpa menghapus paket — buat file di /etc/xbps.d/, misalnya 10-ignore-nonfree.conf:
ignorerepo=https://repo-default.voidlinux.org/current/nonfree
Cara yang lebih kasar adalah menghapus file
.confdari/usr/share/xbps.d/, tapi ini akan dikembalikan saat paketvoid-repo-*diupdate.
Catatan Penting
- Repositori
multilibtidak tersedia untuk sistem musl — hanya glibc. - Urutan prioritas repositori mengikuti urutan yang ditampilkan
xbps-query -L. Untuk override, buat file di/etc/xbps.d/. - Format file signature yang benar adalah
.sig2, bukan.sig— format.sigsudah deprecated di XBPS versi modern.