Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Bootstrap a Linux system from a 512 byte binary seed with 170 steps (github.com/fosslinux)
53 points by chubot 11 months ago | hide | past | favorite | 9 comments


Pretty amusing/scary/insane the number of times you see a chain of languages (automake, perl, python, etc) where you need version X-1 to compile X. The dangers of dog fooding new features into the core tooling.

Which is how I think Rust works? So to bootstrap Rust requires building every version since the language was self hosted.


There is also mrustc [0] which can bootstrap rust 1.54.0 and then you can continue from there.

[0] https://github.com/thepowersgang/mrustc


See also https://notgull.net/announcing-dozer/ -- removes C++ and LLVM from the stack needed to bootstrap Rust.


That’s to be expected with any bootstrapped language. What’s insane is how relatively recent a version some of the GNU tools depend on, with one version in there depending on itself!

I think it’d be a good policy for any bootstrapped tool or language’s build to depend on no later than the last released previous major version. Intermediate bootstrap levels (e.g. miniperl) are fine, as long as one can start from the previous major.



The Guix bootstrap is based on the stuff from live-bootstrap.


I think stating it this way gets the history backwards. The live bootstrap came about as a separate implementation of what had been done for Guix earlier. It then became a proving ground for new ideas, which then fed back into Guix.


It was quite educational to completely rebuild an i386 system during the a.out to ELF transition. Definitely a worthwhile exercise to learn all the autotools madness that underlies most of the Linux toolchain, but far easier than bootstrapping from nothing.

During both ia64 and amd64 bring up we were lucky enough to have emulators that allowed running new 64 bit binaries on existing 32 bit machines. qemu fills that niche today, making life easier for anyone that wants to build an entirely new architecture from scratch. Standing on the shoulders of giants...


This is madness. I love it.




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: