Apakah mungkin untuk mengkompilasi dan mem-bootstrap GNU?

9

Rilis Guix baru keluar beberapa waktu lalu. Dan saya mendapat ide bahwa jika saya bisa bootstrap glibc, gcc, dan guix ke HURD dan Mach, saya dapat memiliki sistem GNU non-Linux. Tetapi saya juga memerlukan beberapa perangkat lunak seperti bash, emacs, binutils, coreutils, sistem init. Apakah ada di antara mereka yang memiliki panggilan sistem yang tergantung linux? Apakah saya dapat melakukannya seperti di LFS?

meminta racun
sumber
Lihatlah Debian Gnu + Hurd wiki.debian.org/TheHurd
ctrl-alt-delor
Saya tidak ingin apt-get diinstal, saya ingin Guix menginstal semuanya setelah gcc, glibc, dan
coreutils
Linux hanyalah sebuah kernel. Jika Anda menggunakan HURD / Mach, Anda memiliki sistem non-linux. (Memang, potongan-potongan lainnya akan berasal dari Sys V atau kemudian BSD, GNU, Plan 9 dan / atau klon / turunan * NIX lainnya, tetapi bukan Linux itu sendiri.)
Agi Hammerthief

Jawaban:

3

Beberapa tahun yang lalu, saya membuat distribusi berbasis GNU / Hurd dari awal. Anda masih dapat menemukannya dengan googling Bee GNU / Hurd .

Semua perangkat lunak GNU resmi (termasuk paket yang Anda sebutkan) harus mendukung Hurd, dan sebagian besar paket benar-benar melakukannya. Tetapi perlu diingat bahwa Hurd bukan pengganti drop-in untuk Linux, jadi Anda sebenarnya perlu melakukan kompilasi silang semua paket, atau mengompilasinya dari sistem GNU / Hurd asli, banyak dengan cara yang sama seperti jika Anda sedang membangun perangkat lunak Anda untuk arsitektur lain (mis. membangun lengan perangkat lunak pada x86).

Karena itu, saya menyarankan Anda untuk mengikuti langkah-langkah ini:

  • Instal Debian GNU / Hurd di suatu tempat (VM adalah OK) dan membiasakan diri dengannya.

  • Bangun Guix pada sistem tersebut, dan pastikan Anda benar-benar dapat membuat dan menginstal paket (Anda mungkin perlu melakukan beberapa perubahan pada itu).

  • Ubah Guix untuk dapat membuat dan mengelola SubHurds

  • Pada tahap ini, Anda harus siap untuk bootstrap sistem GNU lengkap berdasarkan Hurd di mana pun Anda inginkan. Anda hanya perlu mengkonfigurasi GRUB dengan benar sesudahnya.

Selamat melakukan peretasan!

Sergio L. Pascual
sumber
3

[PEMBARUAN] Saya baru-baru ini memberi ceramah di Fosdem tentang porting Guix ke Hurd yang dapat Anda periksa di sini. guix_to_hurd_fosdem_16

Saya yang bekerja di port Guix Hurd. Untuk benar-benar menggunakan Guix on Hurd, proses bootstrap Guix harus dimodifikasi terlebih dahulu untuk mendukung sistem GNU / Hurd. Ini berarti Guix harus dapat membangun-silang versi glibc, Gnumach dan Hurd.
Setelah bagian ini selesai, Anda harus membuat rantai alat bootstrap menggunakan glibc baru dan menghasilkan binari bootstrap. Pada titik ini, binari yang baru dibangun harus disalin ke sistem GNU / Hurd dan digunakan untuk membangun Guix pada sistem itu.

Proses bootstrap Guix

Manolis Ragkousis
sumber