Repository Custom
T4n OS mendukung repositori kustom, baik lokal maupun remote.
Proyek Void Linux tidak mendukung repositori pihak ketiga manapun. Hanya tambahkan repositori kustom jika Anda benar-benar memahami risikonya dan percaya penuh dengan sumbernya.
Menambahkan Repositori
Buat file .conf di /etc/xbps.d/ dengan isi:
repository=<URL>
Format URL yang didukung:
| Tipe | Format | Contoh |
|---|---|---|
| Direktori lokal | /absolute/path atau file:///absolute/path | repository=/home/user/myrepo |
| HTTP/HTTPS | http:// atau https:// | repository=https://mirror.example.com/repo |
| FTP | ftp:// | repository=ftp://ftp.example.com/repo |
Contoh:
# Remote
echo 'repository=https://my.domain.com/repo' | sudo tee /etc/xbps.d/10-myrepo.conf
# Lokal
echo 'repository=/home/user/myrepo' | sudo tee /etc/xbps.d/10-myrepo.conf
Setelah menambah repositori, sinkronkan indeks:
sudo xbps-install -S
Prioritas Repositori
Repositori dibaca berdasarkan urutan abjad nama file. Gunakan prefix angka untuk mengatur prioritas:
| File | Prioritas |
|---|---|
00-local.conf | Tertinggi |
10-custom.conf | Sedang |
20-void-repo.conf | Rendah |
File yang terdaftar lebih awal dicari terlebih dahulu. Jika paket ditemukan, repositori berikutnya dilewati untuk paket tersebut.
Beberapa repositori dalam satu file dibaca dari atas ke bawah:
# /etc/xbps.d/99-custom-repos.conf
repository=/home/user/local-repo
repository=https://internal.example.com/repo
Repositori Remote: Wajib Ditandatangani
Repositori remote wajib memiliki signature — xbps-install akan menolak paket dari repositori remote yang tidak ditandatangani.
Langkah Membuat Signed Repository
Generate kunci RSA:
# Dengan ssh-keygen
ssh-keygen -t rsa -b 4096 -m PEM -f private.pem
# Atau dengan openssl
openssl genrsa -out private.pem 4096
Siapkan dan tandatangani repositori:
mkdir -p ~/myrepo
cp /path/to/*.xbps ~/myrepo/
# Inisialisasi signature repositori
xbps-rindex --privkey private.pem --sign --signedby "Nama <email@example.com>" ~/myrepo
# Tandatangani setiap paket
xbps-rindex --privkey private.pem --sign-pkg ~/myrepo/*.xbps
private.pemadalah kunci privat — jangan disebarkan.private.pem.pubadalah kunci publik yang perlu didistribusikan ke pengguna.
Paket yang ditambahkan di masa depan harus ditandatangani ulang secara manual.
Manajemen Repositori
Lihat repositori yang aktif:
xbps-query -L
Nonaktifkan sementara tanpa menghapus:
sudo mv /etc/xbps.d/10-myrepo.conf /etc/xbps.d/10-myrepo.conf.disabled
Hapus permanen:
sudo rm /etc/xbps.d/10-myrepo.conf
sudo xbps-install -S
Setelah menghapus repositori, cek dan bersihkan paket yang menjadi orphan:
xbps-query -O
sudo xbps-remove -O
Risiko Keamanan
| Risiko | Penjelasan |
|---|---|
| Malware | Repositori tidak resmi bisa menyisipkan kode berbahaya |
| Konflik dependensi | Paket dari sumber berbeda mungkin tidak kompatibel satu sama lain |
| Ketidakstabilan sistem | Paket yang tidak teruji bisa merusak sistem |
| Tidak ada dukungan | Jika sistem rusak karena repositori kustom, komunitas Void tidak membantu |
Praktik yang disarankan:
- Hanya gunakan repositori dari sumber yang benar-benar dipercaya.
- Verifikasi signature pada repositori remote.
- Uji di container atau VM sebelum digunakan di sistem utama.
- Backup sistem sebelum menambahkan repositori kustom.