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:

TipeFormatContoh
Direktori lokal/absolute/path atau file:///absolute/pathrepository=/home/user/myrepo
HTTP/HTTPShttp:// atau https://repository=https://mirror.example.com/repo
FTPftp://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:

FilePrioritas
00-local.confTertinggi
10-custom.confSedang
20-void-repo.confRendah

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 signaturexbps-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.pem adalah kunci privat — jangan disebarkan. private.pem.pub adalah 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

RisikoPenjelasan
MalwareRepositori tidak resmi bisa menyisipkan kode berbahaya
Konflik dependensiPaket dari sumber berbeda mungkin tidak kompatibel satu sama lain
Ketidakstabilan sistemPaket yang tidak teruji bisa merusak sistem
Tidak ada dukunganJika 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.

@T4n-Labs · @Gh0sT4n