4 ms·
What a coincidence, I was reading the GNU Mes project's doc today that's very relevant: https://www.gnu.org/software/mes/manual/mes.html https://www.gnu.org/sof
by yegle 3y ago
What a coincidence, I was reading the GNU Mes project's doc today that's very relevant: https://www.gnu.org/software/mes/manual/mes.html https://www.gnu.org/software/mes/manual/mes.html
- legobmw99 3y agoReminds me of https://elephly.net/posts/2017-01-09-bootstrapping-haskell-part-1.html https://elephly.net/posts/2017-01-09-bootstrapping-haskell-p... The difficulty of bootstrapping GHC
- userbinator 3y agoI thought of the term "bootstrap pilgrimage" years ago to concisely refer to such projects --- both to highlight the journey of learning they give, and to refer to the fact that not everyone may have the time nor skill to embark on one.
- shepherdjerred 3y agoI've always struggled to find a succinct way to describe the benefits of installing Arch Linux. "bootstrap pilgrimage" is the perfect term!
- eru 3y agoArchlinux has gotten substantial easier to install in the last decade or so. I no longer get any 'bootstrap pilgrimage' feelings from it. Lots of stuff now works out of the box, even. But I guess, I'm too used to it, too?
- shepherdjerred 3y agoI haven't installed it since ~2016/2017, so my knowledge might be outdated. If you use one of the arch-based distros with a GUI, then you're right that it's very easy to install. If you follow the Wiki though, I think you still learn quite a bit: https://wiki.archlinux.org/title/installation_guide https://wiki.archlinux.org/title/installation_guide
- eru 3y agoI am following that guide whenever I do a new install. I've never used one of those GUI enabled installers for Arch. I started with Arch around 2010, and last did a fresh install on a new computer a few months ago. Yes, you can still learn quite a bit from the guide if you are new to it. But it's gotten a lot easier over the years. I remember eg X and wifi used to be a bit of a pain, but now they mostly just work. Thanks to UEFI, you can also boot directly into your kernel, and no longer need to muck around with an extra boot manager like grub or syslinux. (Assuming your computer's UEFI implementation is not too buggy.)
- thaliaarchi 3y agoI like that term. I've tried a couple of bootstrap pilgrimages. For a job, we needed Go on FreeBSD 8, which entailed a local patch to revert pipe2 to pipe in Go, and building from source. That was my first bootstrap. Go, as Russ mentions, is easy to bootstrap, and I've done it a couple of other times. I've tried to bootstrap Rust, from its old compiler written in OCaml, but that one is trickier. It has not been maintained like Go's bootstrap compiler and the bootstrap chain has long since been broken. Furthermore, rustc is only guaranteed to be able to be buildable with the previous release. As far as I can tell, no one has built rustboot in many years. I like doing software archaeology, so I'll probably try again with that project sometime. mrustc takes another approach, closer to the aforementioned GNU Mes, in that it's a reimplementation of Rust, intended for bootstrapping rustc. https://github.com/thepowersgang/mrustc https://github.com/thepowersgang/mrustc
- Smaug123 3y agoRelevant is https://github.com/NixOS/nixpkgs/pull/85542 https://github.com/NixOS/nixpkgs/pull/85542 , a (very stale) PR that uses mrustc to get straight to Rust 1.29 and then walks the chain.
- SSLy 3y agonowadays you can skip straight to 1.54, that's relatively fresh
- SSLy 3y agoI believe Guix has shiny and clean rust bootstrap using mrustc, no?
- Smaug123 3y agoOh nice - https://github.com/Millak/guix/blob/00747316ee0e1a7962ffe226c727776ba7a8163b/gnu/packages/rust.scm#L152 https://github.com/Millak/guix/blob/00747316ee0e1a7962ffe226...
- FeepingCreature 3y ago
- pabs3 3y agoSee also the Bootstrappable Builds project, especially their stage0 projects: https://bootstrappable.org/ https://bootstrappable.org/ https://github.com/oriansj/stage0 https://github.com/oriansj/stage0 https://github.com/oriansj/stage0-posix/ https://github.com/oriansj/stage0-posix/