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?

  • attilag@lemmy.ml
    ·
    2 months ago

    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!

  • 1984@lemmy.today
    ·
    2 months ago

    I did it, learned a lot. But it's not really a system that can be maintained very easily. You don't even have a package manager. :)

    • lemmyvore@feddit.nl
      ·
      2 months ago

      Back when I did LFS I dealt with this by giving each package an /opt prefix, symlinking their respective bin/, sbin/, lib/, man/ and so on dirs under a common place, and adding those places to the relevant system integrations (PATH, /etc/ld.so.conf etc.)

      I put together a bash script that could manage the sumlinks and pack/unpack tarballs, and also wrote metadata file and a configure/make "recipe" to each package dir. It worked surprisingly well.

      A handful of packages turned out to be hardcoding system paths so they couldn't be prefixed into /opt (without patching) but most things could.

  • Charadon@lemmy.sdf.org
    ·
    2 months ago

    I've done it before. It's not particularly difficult, just very time consuming. And at the end, you're left with a distribution that's not really that useful without repackaging everything you did into a package manager so you can do updates without borking it.

    Great as a learning tool to see how the whole GNU/Linux stack works, but not something you'd use practically.

  • Lydia_K@startrek.website
    ·
    2 months ago

    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.

  • gnuhaut@lemmy.ml
    ·
    edit-2
    2 months ago

    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.

    • pingveno@lemmy.ml
      ·
      2 months ago

      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.

  • 2xsaiko@discuss.tchncs.de
    ·
    2 months ago

    It’s definitely on my Linux bucket list. I’ve been kinda thinking about making a distro myself (specifically because I want to try some unusual and niche things in terms of system layout and package management), and that would be a good starting point.

  • utopiah@lemmy.ml
    ·
    2 months ago

    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.

    • utopiah@lemmy.ml
      ·
      2 months ago

      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.

  • UID_Zero@infosec.pub
    ·
    2 months ago

    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.

  • bloodfart@lemmy.ml
    ·
    2 months ago

    It’s a good time. I built it for a little laptop that was too small for anything else. Cross compiled the binaries on a normal computer.

  • deadcatbounce@reddthat.com
    ·
    2 months ago

    Before the ArchLinux wiki became as good as it is, people like me used the Gentoo and LFS wikis as documentation for Linux.

    There isn't quite enough time in the world for me to be able to use LFS in anger as much I would wish. We make do with source distros with source managers like Gentoo (surprise!), Funtoo and others which give the source distros users just enough helping hands of dependency management.

    Real tears would be shed were for LFS to disappear.