Package manager fungsional Guix sedang dihapus dari rilis stabil dan testing Debian menyusul kerentanan keamanan dan kesulitan pemeliharaan yang semakin meningkat. Ini menandai kasus langka di mana sebuah paket ditarik dari rilis stabil Debian, menyoroti tantangan dalam memelihara perangkat lunak rolling-release dalam model distribusi tradisional.
Guix menawarkan pendekatan yang berbeda untuk manajemen paket dibandingkan dengan sistem APT Debian. Ia menyediakan upgrade transaksional, rollback, dan memungkinkan pengguna tanpa hak istimewa untuk mengelola paket. Tidak seperti package manager Nix yang serupa, Guix menggunakan implementasi Guile dari Scheme untuk definisi paket.
Kerentanan Keamanan Memicu Krisis
Proses penghapusan dimulai ketika proyek Guix mengungkapkan beberapa kerentanan keamanan pada 24 Juni 2025. Dua kerentanan kritis, CVE-2025-46415 dan CVE-2025-46416, dapat memungkinkan pengguna lokal untuk mendapatkan hak istimewa yang lebih tinggi dan memanipulasi output build. Proyek Guix memberikan instruksi mitigasi tetapi tidak merilis versi stabil baru, melainkan mengandalkan model rolling-release mereka.
Hal ini menciptakan masalah signifikan bagi maintainer paket Debian Vagrant Cascadian. Perbaikan keamanan tercampur dengan banyak perubahan upstream lainnya, membuatnya sangat sulit untuk backport hanya patch keamanan yang diperlukan tanpa memperkenalkan fitur baru yang substansial dan potensi ketidakstabilan.
Kerentanan Keamanan:
- CVE-2025-46415: Eskalasi hak akses lokal ke pengguna build
- CVE-2025-46416: Manipulasi output build dan eskalasi hak akses daemon
- Terpengaruh: Package manager Guix, Nix, dan Lix
- Patch yang diperlukan: ~50 commit antara versi 1.4.0 dan perbaikan
Beban Pemeliharaan Menjadi Tidak Berkelanjutan
Diskusi komunitas mengungkapkan tantangan yang lebih dalam yang dihadapi maintainer distribusi. Denis Carikli, yang mencoba membantu dengan backporting, menerapkan sekitar 50 patch yang melibatkan guix-daemon antara versi 1.4.0 dan perbaikan keamanan. Upaya besar ini menyoroti ketidakcocokan antara model pengembangan rolling-release Guix dan pendekatan stable-branch Debian.
Cascadian mencatat tantangan pemeliharaan tambahan, termasuk mengelola dependensi Guile dan menangani preferensi Guix untuk versi GCC yang lebih lama sementara Debian mengirimkan versi compiler yang lebih baru. Anggota komunitas telah mengidentifikasi masalah spesifik dengan kompatibilitas GCC 15, di mana inklusi header implisit dihapus, merusak build yang sebelumnya berfungsi.
Setiap kali Anda menjalankan perangkat lunak melalui proses di luar alur kerja pengembangan utama, Anda menemukan kejutan yang layak diperbaiki.
Perbandingan Dukungan Arsitektur:
- Paket Debian Guix : x86-64, Arm64, PowerPC, RISC-V, 32-bit Arm, 32-bit x86
- Binary upstream Guix : x86-64, Arm64, PowerPC, 32-bit Arm, 32-bit x86 (tanpa RISC-V)
Dampak Pengguna Terbatas
Menurut statistik popularity contest Debian, kurang dari 230 sistem saat ini memiliki Guix terinstal, mewakili kurang dari 0,09% dari sistem yang berpartisipasi. Meskipun beberapa anggota komunitas mempertanyakan akurasi statistik ini karena pengguna yang sadar privasi menonaktifkan pelaporan, angka rendah ini menunjukkan bahwa penghapusan tidak akan berdampak signifikan pada sebagian besar pengguna Debian.
Penghapusan ini mempengaruhi beberapa rilis Debian termasuk bookworm stabil saat ini dan versi testing trixie. Pengguna dengan Guix yang sudah terinstal akan terjebak dengan versi yang rentan kecuali mereka memperbarui secara manual menggunakan binari upstream.
Statistik Penggunaan:
- Laporan popcon Debian: <230 instalasi Guix
- Persentase sistem Debian: <0,09%
- Perbandingan: firefox-esr memiliki ~118.000 instalasi (44,5%)
- Catatan: Statistik mungkin tidak merepresentasikan penggunaan sebenarnya karena pengaturan privasi
Prospek Masa Depan
Proyek Guix telah mengadopsi rencana untuk rilis tahunan reguler mulai tahun 2025, tetapi ini tidak akan menyelesaikan masalah mendasar. Rilis ini masih akan bersifat kumulatif daripada menyediakan cabang stabil dengan pembaruan khusus keamanan yang dibutuhkan distribusi seperti Debian.
Pengguna masih dapat menginstal Guix menggunakan binari yang disediakan langsung oleh proyek Guix, meskipun ini mungkin meninggalkan beberapa pengguna arsitektur tanpa dukungan. Proyek Guix tidak menyediakan binari RISC-V, sementara paket Debian mendukung enam arsitektur berbeda.
Situasi ini menggambarkan ketegangan yang berkelanjutan antara model pengembangan rolling-release modern dan pendekatan packaging distribusi tradisional. Meskipun kedua model memiliki kelebihannya masing-masing, menemukan titik tengah untuk perangkat lunak kompleks seperti package manager tetap menantang.
Referensi: Removing Guix from Debian