Linux from Scratch

(linuxfromscratch.org)

86 points | by sippingabonedry 2 hours ago

13 comments

  • rando103747202 1 hour ago
    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.

    • binarin 1 hour ago
      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 :)
    • necovek 20 minutes ago
      As pointed out already, LFS is a cookbook, and you learn most by having an idea about how you want to tune your Linux system.

      So at points you want to dive deeper, you do — and go off the beaten path.

      It requires a desire not just to understand how bits and pieces fit together, but how you can make them work even better for yourself and what is and is not customizable?

      Arguably, even if building it today is easier — back when I did it in 2000, you sometimes struggled to find where the canonical source code of the package is, not to mention compilation errors, linking errors, etc. Only then did you get to configuring the init RC system, choosing between them (no systemd yet), etc.

      But a requirement is — IMO — that you are strongly opinionated about how a system should serve you, and look for opportunities to tune it.

    • sixtyj 47 minutes ago
      LFS is known but it is really more a cookbook than explanatory principles.

      Principles can be studied from “Operating Systems: Three Easy Pieces“ book - https://pages.cs.wisc.edu/~remzi/OSTEP/

      Rob Love wrote the book “Linux Kernel Development”. https://rlove.org/

      And then continue with reading LFS.

    • myaccountonhn 21 minutes ago
      Setting up Oasis <https://github.com/oasislinux/oasis> taught me more than LFS personally. Everything being statically compiled makes it less magic.
    • nullify88 45 minutes ago
      I learned a lot doing Gentoo stage 1. I was also following the guide like a recipe, but at the time I hadn't been exposed to the underlying machinery that is often automated, abstracted away, or done for me already. It was also a good test on how well I could follow instructions and later on apply my own customisations. Like lego.
    • kaashmonee 40 minutes ago
      I second this a thousand million times. But with AI, i can't help but admit i find myself indulging in building things backwards, now that i can try a couple different approaches simultaneously for it.
    • r3trohack3r 1 hour ago
      I liked KISS for this

      It was like automated LFS from git

      FreeBSD’s Makefile system is also in this ballpark

    • zsoltkacsandi 14 minutes ago
      > LFS takes the wrong approach in my opinion.

      Shameless plug: I started a series of blog posts exactly because this. https://serversfor.dev/linux-inside-out/

      Unfortunately due to some cervical spine issues and a surgery I wasn't able to finish it, but I am planning to pick it up and continue.

    • gigatexal 1 hour ago
      Compiling the packages doesn’t teach much it’s all the glue in between. No? It’s the startup scripts and the configs and creating a kernel and all the things.

      It’s on my list of things to do when I have some free time

    • self_awareness 53 minutes ago
      You know, you could also just read about each step to learn more. I mean if you feel you're following a baking recipe, you can just... read about it more. And then have LFS as a simple way to experiment if you want to change anything or not. Also, technically you don't need to have a bootloader installed on your main hard drive if you already have it on another disk.

      I mean, eh... last time I checked, this was Hacker news. Yesterday, there was an Ask HN topic on how to enable dark mode on HN. Is this the new hacker culture? Complaining that the resources merely point in some direction instead of specifying details?

  • lukeify 1 hour ago
    You can tell it's written by real Linux users because the landing page UX doesn't make it immediately obvious where to even start reading.
    • myaccountonhn 11 minutes ago
      My journey was: Start off by clicking LFS among the links, and then "Read online" in the sidebar, and then being lost. I see a header, "Current Stable" but I can't see the link to the actual book. I only see the errata, the security advisory and a link labelled... stable LFS systemd? Maybe it's that one? Yes, yes it is.
    • voxelghost 54 minutes ago
      It is indeed glorious.
    • partyficial 1 hour ago
      it's like their brain is unaware of the concept of a timeline
    • esseph 45 minutes ago
      ... At the top? You're expected to read all of it! :)
    • khantto 1 hour ago
      [dead]
    • boomlinde 1 hour ago
      Took me half a second to realize I would probably start with "LFS :: Linux From Scratch is the main book, the base from which all other projects are derived."
      • lukeify 31 minutes ago
        You mean the link to a page which _also_ doesn't have the main book?
  • Celeo 1 hour ago
    From the news page:

    > Bruce Dubbs - 2026/09/01

    > The Linux From Scratch community announces the release of LFS Version 13.1.

  • bmenrigh 1 hour ago
    For a long time (probably 2002-2010) I really wanted to do LFS. But I've been on Gentoo since 2004 which, over the last ~22 years, has probably exposed me to almost everything LFS would have, plus a lot more it wouldn't have. I still wish I'd did it way back when. I probably would stumbled through fewer issues had I.
  • aboardRat4 1 hour ago
    What's the news? This manual has been with us since forever.
    • steve-atx-7600 1 hour ago
      I'm glad to see its still being maintained after more than 25 years since I last used it.
  • haunter 1 hour ago
    The last release of the no longer maintained sysvinit version is here (the default is systemd now) https://www.linuxfromscratch.org/lfs/downloads/12.4/
  • lrvick 1 hour ago
    We did that, but in containers. https://stagex.tools/
  • lioeters 1 hour ago
    List of (not all Linux) distributions that can be bootstrapped from source:

    https://github.com/vasi/bootstrappable-distros

  • charcircuit 12 minutes ago
    This whole project wastes time that could be spent learning operating system design and it spends it telling users to download files and run ./configure; make; make install 100 times.
  • cientifico 46 minutes ago
    The fastest way to learn and remember what Linux is about
  • halyconWays 1 hour ago
    I did LFS once, a long long time ago (days of RedHat 7.3, I'd say, 2002), and it was quite educational! It's a good way to learn the fundamentals of what comprises an actual Linux system
  • dang 54 minutes ago
    Related. Others?

    Linux from Scratch - https://news.ycombinator.com/item?id=46709727 - Jan 2026 (103 comments)

    Linux from Scratch - https://news.ycombinator.com/item?id=41747966 - Oct 2024 (159 comments)

    Beyond Linux from Scratch - https://news.ycombinator.com/item?id=39547118 - Feb 2024 (17 comments)

    Linux from Scratch Version 12.0 - https://news.ycombinator.com/item?id=37648808 - Sept 2023 (28 comments)

    Linux from Scratch - https://news.ycombinator.com/item?id=33734685 - Nov 2022 (9 comments)

    Linux from Scratch - https://news.ycombinator.com/item?id=30496018 - Feb 2022 (96 comments)

    Linux from Scratch - https://news.ycombinator.com/item?id=29949311 - Jan 2022 (9 comments)

    Linux from Scratch with Training Wheels - https://news.ycombinator.com/item?id=28820602 - Oct 2021 (41 comments)

    Linux from Scratch 10.0 - https://news.ycombinator.com/item?id=24350738 - Sept 2020 (49 comments)

    Linux from Scratch - https://news.ycombinator.com/item?id=24238015 - Aug 2020 (86 comments)

    Major Proposed Changes to Linux From Scratch - https://news.ycombinator.com/item?id=23787526 - July 2020 (93 comments)

    Linux from Scratch - https://news.ycombinator.com/item?id=20168343 - June 2019 (15 comments)

    Ask HN: Is the Linux From Scratch project still relevant? - https://news.ycombinator.com/item?id=20149111 - June 2019 (7 comments)

    Linux from Scratch - https://news.ycombinator.com/item?id=16823110 - April 2018 (1 comment)

    Linux from Scratch Version 8.2 released - https://news.ycombinator.com/item?id=16510333 - March 2018 (2 comments)

    Linux from Scratch – build your own Linux distro - https://news.ycombinator.com/item?id=11829373 - June 2016 (57 comments)

    Linux from Scratch - https://news.ycombinator.com/item?id=8392057 - Sept 2014 (1 comment)

    Welcome to Linux From Scratch - https://news.ycombinator.com/item?id=4488162 - Sept 2012 (71 comments)

    Linux From Scratch 7.1 Published - 3.2.6 Kernel + GCC 4.6.2 - https://news.ycombinator.com/item?id=3677350 - March 2012 (13 comments)

    Linux From Scratch 7 Released - https://news.ycombinator.com/item?id=3171448 - Oct 2011 (27 comments)

    Ask HN: Linux from Scratch.. Should I try it? - https://news.ycombinator.com/item?id=1779665 - Oct 2010 (58 comments)

    How to build custom Linux from source code - https://news.ycombinator.com/item?id=743843 - Aug 2009 (1 comment)

  • bellowsgulch 23 minutes ago
    LFS is really, really bad. Also, reading the Linux kernel documentation to understand how to do it right is infuriating because it too is really, really bad.