Hacker News new | past | comments | ask | show | jobs | submit

Linux from Scratch

https://www.linuxfromscratch.org/
LFS takes the wrong approach in my opinion. I did it once manually over a couple of days. I suppose I hoped enduring the pain of waiting for the packages to compile would somehow make me smarter. It didn’t. I didn’t learn much. It was like following a baking recipe. I know I need to add eggs and sugar in the ratio it says but I’d be damned if I could tell you why that specific ratio works.

It’s just too much to take in at once. You start by building a cross compilation toolchain but… why? And you add the bootloader dead last, even though it’s the first thing you see when you boot a Linux machine?

I reckon a better approach would be to build it step by step, only adding new things once you’ve discovered a need for them. First you get the bootloader working, then you get it to actually load the initramfs and kernel, etc… you could even create your own extremely simple initramfs first before adding dracut, etc…

This gets you to a system you can boot and play with asap. And then you can slowly start to discover why you actually need all these things through exploration and experimentation.

loading story #49709039
loading story #49709082
loading story #49708687
> It was like following a baking recipe. I know I need to add eggs and sugar in the ratio it says but I’d be damned if I could tell you why that specific ratio works.

I know a french cookbook[0] which contains not only recipes for dishes, but also for some of the intermediary ingredients, like stocks, that can now be bought at the supermarket. I feel that I’ve learned a lot by following those recipes, be it simply in the structure of french cuisine. And to me, LFS is a cookbook in a similar sense.

[0]: https://www.ferrandi-paris.com/fr/le-grand-cours-de-cuisine-... in French, sorry!

loading story #49709347
I've learned the most from LFS long time ago, when I had no internet. I had a mismatching set of Slackware and redhat source CDs, and LFS itself didn't match the versions on CDs too. Since then I can build anything and anywhere, even if it's not cooperating :)
loading story #49709411
loading story #49708924
loading story #49708476
loading story #49708283
loading story #49708685
loading story #49708491
loading story #49708523
loading story #49708990
loading story #49708734
loading story #49708308
loading story #49708436
loading story #49708141
loading story #49709234
loading story #49708234
loading story #49708089
loading story #49709469
loading story #49708341
loading story #49709198
loading story #49708175
loading story #49709137
loading story #49708143
loading story #49708972
loading story #49708327
loading story #49708428
loading story #49709295
loading story #49708488
loading story #49708132
loading story #49708758
loading story #49708658