For those of you who don’t know, Linux From Scratch is a project that teaches you how to compile your own custom distro, with everything compiled from source code.
What was your experience like? Was it easier or harder than you expected? Do you run it as a daily driver or did you just do it for fun?
I tried it. Lot of fun and fustration. If You hava spare machine and few weeks to play around, do it. It boosted my knowledge and my skills a lot. I would not use it for daily driver, and never for work.
Documentation is super! If You have to do something by hand, it is one of the best source of info!
I’m from a time where there was ONLY compiling from scratch. No package managers either. Can’t say I recommend it.
You haven’t lived until you’ve installed Slackware from floppy disks and compiled the necessary network drivers into the kernel by hand. Good times, but never again.
What impressed me at the time was that it worked ; you’d pull huge amount of stuff and then waited in front of a real-life Reversed Matrix full of mysterious hieroglyphs. But Slackware would compile Ardour, Jack, Jamin and whatever else. Yeah it took a while to fetch all the libraries, but then it just did it.
Last week localsend wouldn’t compile on Arch, and took hours to fail it.
I am pretty sure I compiled the kernel once a month back when I had a Pentium 133. Looking back, compiling the kernel must have been a huge chunk of what that machine accomplished.
I’m a long time slackware user, but I joined the party some time in 99 or 00.
I never had the pleasure of installing from floppies, but I did compile my own kernels to speed up boot time. Sometimes they would boot, sometimes they wouldn’t. That was part of the fun.
I’ve been on a retro kick lately. I have a pentium 200 mmx based machine that will eventually run a floppy installed slackware. Or at least it will if I can get it to work.
I did it back in 2020 when we all had nothing better to do. Got as far as installing X11 and Openbox, and halfway through setting up the toolchain for Firefox.
It was fun - the kind of fun digging a big hole is. It’s not for everybody, but I sort of enjoyed it.
I ran it as my primary distro on my main machine for a while way back when. I don’t recommend that.
What I do recommend is going though the entire process even if it’s just in a VM. It’s incredibly educational and will teach you a ton about Linux and OS construction in general. I used to recommend it to everyone I was teaching linux/ Unix too and all the students who actually went through it and completed it now have successful IT careers. 100% an incredibly valuable teaching resource, you will look at all OS’s with new eyes after you’ve built one bit by bit from source by hand.
I did it during the gcc 3 transition. I used a very new gcc 3 (maybe even pre-release), which wasn’t at all recommended. A couple of (most?) C++ packages didn’t compile (some change having to do with namespace scope), which meant I had to fix the source of some packages (generally pretty trivial changes, usually having to prepend
namespace::to identifiers). Overall this problem was pretty rare, like it affected less than 1% of C++ files, but with things like Qt or Phoenix (or whatever Firefox was called back then), with thousands of files, I had to fix dozens of things. I guess running into problems made it more interesting and fun actually.Did I learn anything? The main thing I learned is about all the different basic packages and what sort of binaries and libraries are included in them and why you need them. Also about some important config files in
/etc. And a bit of shell experience, but I dare say I knew most of that stuff already. How much you learn depends a lot on how much you already know.Overall what I learned was not very deep knowledge, nor was it a very time-efficient way to learn. But it was a chill learning experience, goal-oriented and motivating. And it made me more comfortable and confident in my ability to figure out and fix stuff.
Also it’s obviously not practical to keep that up to date, so I switched back to a distro after a couple of months of this.
I found it was useful for learning bits and pieces of the extra knowledge around working on a Linux system. Yeah, you’re not going to learn how a kernel works or how anything about data structures. But you will learn how to apply a patch, be exposed to a lot of work with the shell, and come to appreciate the work that goes into a modern distro.
It was a lot of fun for me. I did it without a virtual machine (would not generally recommend) on a older laptop I wasn’t using anyway. I wasn’t very successful in the end however. My own built kernel couldn’t produce any vga output. I tried to fix it for a handful of nights, but in the end gave up and called it good enough :P So I might comeback to it later to fully complete an installation.
But it was good learning oppertunity. It showed that just compiling a version of the Linux kernel isn’t very complicated. It even comes with a very nice TUI to select your build options!
The kernel is what about did me in with a Gentoo install forever and a half ago, that part alone I think I fought with for a week before I got everything working
Great learning experience though, I agree
Did it about 10 years ago. Didn’t really understand half of what I was doing at the time but it was a fun way to spend a weekend 😁
I did. First page and said fuck it and left. Don’t have the energy for it. Lol
Did it to learn. Mostly because I had no wifi / internet at home during the time, but did have a burned CD and a book. Was useful, but when I started using Linux as a daily driver I went straight to Ubuntu, and later Fedora
Do recommend for learning and tinkering though.
I got through some of it then life got busy. It was a good and interesting experiences. I didn’t finish with a fully functional hand crafted artisinal home desktop, though.
The consensus seems to be: go for it for the learning experience.
I did a long LONG time ago. I don’t even remember so I’d say 20 years ago. It was very interesting. I do recommend doing it at least once… well maybe only once actually. If possible do it on a real computer, not a VM, so that you don’t get distracted and feel just a bit of risk. Obviously do NOT do it on your main computer where you have important data, just in case.
PS: I do build some things from scratch, including “big” ones like Firefox. I do it because I can prototype with them by modifying just the bits I need. I do like learning how things are made. That being said I don’t think it’s valuable as an entire system, only on a need to do basis. The true benefit IMHO is the learning, not the running system, so no, not at as a daily driver.
I have never done Linux From Scratch but I have been using Linux long enough that I remember that is how things were. Compiling the kernel was pretty routine. Getting XFree86 up and running could be true black magic though. You were literally controlling how the electron beam moved across the screen.
One of my systems is running Red Hat 5.2 ( not RHEL - the pre-Fedora Red Hat ). I think it has GCC 2.7.2 on it.
For some reason, I want to get a recent kernel and X11 running on the Red Hat 5.2 box. It would be cool to get Distrobox running on it while leaving everything else vintage. I had been thinking that LFS might be the right resource to consult. This article will hopefully kick me into gear.
TIL this is a thing. I started doing that over 30 years ago with SLS and Slackware when that was the only choice.
This was pre-PnP (also pre-JPEG!), so you had to know all the addresses, IRQs, DMA info, etc, of your hardware or you’d get… unexpected results.
makeit and they will come…After countless distros and flavours over the years, I still use Debian for servers and now use EndeavourOS for desktop/laptops.
This was pre-PnP (also pre-JPEG!), so you had to know all the addresses, IRQs, DMA info, etc, of your hardware
Thanks for that flashback. <shiver>
Yes, back in the early 00s. We toyed with making a net-bootable image with it for our computer labs, but it was really not practical. It definitely taught me a ton about systems, though.










