HeadlinesBriefing favicon HeadlinesBriefing.com

Penjelasan tentang Build yang Bisa Bootstrappable di FOSSY

Hacker News •
×

Setelah tiga tahun di Portland, Oregon, konferensi tahunan Perangkat Lunak Gratis dan Sumber Terbuka (FOSSY) pindah ke Universitas British Columbia di Vancouver, Kanada. Dalam jalur "Toolchains dan Alat Pengembangan Lainnya", Timothy Sample menyajikan presentasi tentang build yang bisa bootstrappable, sebuah konsep yang kurang dikenal dibandingkan build yang dapat direproduksi. Sebuah build yang bisa bootstrappable dimulai dengan program kecil yang secara progresif membangun program yang lebih besar hingga akhirnya ruang pengguna Linux modern dapat dibangun dari benih kecil, menghasilkan kode dengan asal yang sepenuhnya dipahami.

Sample menyambut keherutan audiens karena keakraban mereka dengan topik ini. Ia mulai meneliti build yang bisa bootstrappable hampir sepuluh tahun yang lalu menggunakan GNU Guix, sebuah manajer paket fungsional yang terinspirasi oleh Nix. Kedua sistem mewakili perangkat lunak dalam bentuk "graf derivasi" yang memetakan ratusan dependensi build. Sample menggambarkan kompleksitasnya dengan contoh program Python yang memerlukan compiler C, yang kemudian memerlukan compiler lain, dan seterusnya tanpa akhir. Secara tradisional, sistem seperti Debian berhenti pada biner compiler C yang sudah diunggah sebelumnya, sementara Guix awalnya berhenti pada blob yang secara statis terhubung sebesar 250 MB dari program pengguna ruang GNU.

Tujuan inti adalah membangun sistem tanpa bergantung pada artefak yang sudah dibuat sebelumnya. Sample membandingkan kompilasi standar dengan pembuatan yoghurt yang membutuhkan kultur awal, atau penggunaan "kultur awal Dennis Ritchie yang dibawa dari Bell Labs". Tantangan ini berlaku untuk sebagian besar bahasa yang self-hosting. Build yang bisa bootstrappable bertujuan untuk menghilangkan benih biner yang tidak transparan ini, memastikan rantai pasokan perangkat lunak yang dapat diverifikasi dari nol hingga sistem modern.

Entitas Utama: Perusahaan: GNU, Nix, Debian, LWN | Orang: Timothy Sample, Dennis Ritchie | Lokasi: Universitas British Columbia, Vancouver, Kanada, Portland, Oregon, Bell Labs

Pertanyaan yang Sering Diajukan: Apa perbedaan antara build yang dapat direproduksi dan build yang bisa bootstrappable?

Build yang dapat direproduksi memastikan bahwa kode sumber yang sama menghasilkan artefak biner yang identik, sementara build yang bisa bootstrappable lebih jauh dengan menghilangkan kebutuhan akan benih biner yang sudah ada sebelumnya, membangun seluruh rangkaian alat dari sumber yang minimal dan dapat diperiksa.