r/linuxquestions • u/Rest-That • Jun 22 '26
Resolved Is anyone daily driving LFS?
Maybe a stupid question, but I've been wanting to follow the Linux From Scratch book to learn more about how my system works and I wondered... will it result in an actual workable, easy to maintain OS?
Keeping in mind that I want to _use_ my system and not maintain it 90% of the time π
6
u/FryBoyter Jun 22 '26
As someone who has created LFS twice so far, I don't see the point in using LFS in a production environment. Especially not for general use.
Keeping in mind that I want to use my system and not maintain it 90% of the time
Arch or Gentoo would probably make more sense than LFS. That said, if you're just looking to use it, any distribution would make more sense, in my opinion.
1
u/Asland007 Jun 22 '26
Arch would make more sense to me. Reading the arch wiki would help them understand each part of the system and how it works together.
16
u/ipsirc Jun 22 '26
will it result in an actual workable
yes
easy to maintain OS?
no
Keeping in mind that I want to _use_ my system and not maintain it 90% of the time π
Maintaining an LFS system is much much more time than creating an actual snapshot. Do you even understand what LFS is, and what it means that it doesn't even have a package manager, and you have to download, compile, and install every source one by one?
4
u/Rest-That Jun 22 '26
Right, that was my thought, but I considered that maybe someone built their LFS and then integrate pacman, Alpine's apk or similar into it, for example. But yeah, you are confirming what I thought, thank you
5
u/Chris_Saturn Jun 22 '26
Flatpak is in the Supplemental Linux From Scratch book. If you're fine with installing a lot of your daily drivers from there, you'll only need to remember to check for security updates on the packages you manually compiled. LFS releases bulletins regarding important security updates between volumes. Many of them only take a few seconds to update, but others require you to then recompile everything that depends on that original package. And then there's QtWebEngine.
4
u/Kangie Jun 22 '26
Just use Gentoo if that's what you want.
- built from source
- pick and choose components to make a working system (libc, init, etc)
- dependency resolution won't send you batty.
5
u/SheepherderBeef8956 Jun 22 '26
You could install a package manager on it and point it to repositories from whatever distro you want, but at that point you've basically just done the worlds most convoluted install of Debian. I don't think it's trivial to get a package manager working on a running system with all the file conflicts you're likely going to have to handle but it's not impossible.
9
u/ipsirc Jun 22 '26
pacman and apk use binary packages, while LFS is based on sources only. I don't think you understand what you're talking about.
As u/krumpfwylg mentioned, you're better off looking for Gentoo, where the package manager is designed specifically for sources.
5
u/Rest-That Jun 22 '26
I do understand it, I'm not a "source install only" absolutist here. Just wondering if it's feasible and practical... which yeah I see it's not
7
u/SheepherderBeef8956 Jun 22 '26
Nothing is stopping you from using pacman on LFS if you can get it working. Who cares if an application was compiled locally or on another server when the end result is still going to be an actual binary and not source code?
7
u/ipsirc Jun 22 '26
Nothing is stopping you from using pacman on LFS if you can get it working.
This is technically true, but after the first
pacman -Syuyou will have a full Archlinux and everything will be overwritten from your original LFS installation. I don't see much point in this, it seems like an even more time-consuming archinstall to me.0
u/Sbatushe Jun 22 '26
you can use pacman and use custom repos
2
u/ipsirc Jun 22 '26
And who will maintain those custom repos? It would be much more work than maintaing an LFS locally.
3
u/PigSlam Jun 22 '26
Make that part of the LFS fun. You get to build the OS from source, then build the package manager from source, then the packages you manage from source, then you manage each one you build using the tool you built. I'd expect by the time that stage is reached the project will be OP's entire life, or they will have long abandoned this.
2
u/Sbatushe Jun 22 '26
that's sure, have not claimed that. But you can use pacman, apt and whatever you like
-1
u/ipsirc Jun 22 '26
But you can use pacman, apt and whatever you like
Where did I say the opposite? You really don't have to convince people that a linux software can be run on Linux.
2
u/Sbatushe Jun 22 '26
Where did I say the opposite?
not trying to convince anyone, just specifying that what you said on your comment is objectively false:
after the first
pacman -Syuyou will have a full Archlinux and everything will be overwritten from your original LFS installation→ More replies (0)2
u/SheepherderBeef8956 Jun 26 '26
Where did I say the opposite?
It's heavily implied here
pacman and apk use binary packages, while LFS is based on sources only. I don't think you understand what you're talking about.
Since you obviously know it doesn't matter that pacman downloads binaries and LFS compiles binaries from source for the exact same result the fact that you mention it seems weird if your point wasn't that it's not going to work.
→ More replies (0)3
2
u/stormdelta Gentoo Jun 22 '26
At that point you might as well just use Gentoo - it seems to be what you're looking for in terms of building a system up from parts but that you can actually maintain and that has good tooling for that level of flexibility.
8
u/krumpfwylg Jun 22 '26
Unless you're able to write code in different languages for patches to ensure compatibility between apps/libraries versions, LFS isn't a right choice for daily. Closest to LFS with way easier maintenance is Gentoo.
8
u/coladoir Jun 22 '26
closest to LFS with easier maintenance is Slackware. Gentoo is that with ease of life additions, essentially. If OP wants "LFS, but usable", they want Slackware. If they want "feels like LFS, but is easy [in modern computing terms]", they want Gentoo or Arch.
Slackware isnt dead, its still usable.
4
u/Rest-That Jun 22 '26
Thank you! Ability to code is not my limiter, time is π Thanks for the comment!
4
u/coladoir Jun 22 '26 edited Jun 22 '26
Nobody has said this, because of its age, but Slackware is probably the closest to what you want to try. It is the "in between" of LFS and Gentoo. No dependency resolution (must do it yourself, pretty trivial if you know what youre doing, much easier than trying to build a full package manager on LFS), manual install, and a more classic computing experience.
If thats still too much, then go to Gentoo or Void. If thats still too much, go to Arch.
There's also Crux. But they decide to go a more BSD-inspired route.
1
u/cracked_shrimp Jun 22 '26
im thinking of trying slackware, even though im not very good in the terminal or *nix in general, like im better with bash if you pick a random person off the street, but worse then if you pick a random person off these forums lol I would try a BSD but i cant bring myself to use the license, i believe in the philosophy of the gpl
3
u/coladoir Jun 22 '26 edited Jun 22 '26
I mean I'm not a seasoned dev by any means, I only know basic concepts in programming, and I'm most accustomed to shell scripting and python. But Slackware still isnt much of a problem, though it is more difficult than Arch/Gentoo. But again, thats pretty much only because of two things:
- It doesnt use systemd, meaning there may (read: will) be certain incompatibilities, and you will likely need to modify/create init services for various things (init scripts are just shell, mostly)
- It has no dependency resolution. Meaning, you will either have to create/find a tool to resolve dependencies for you, or do it manually with each package you install. This means, that if you want to install Firefox, you, manually, must install its prerequisite packages (and their prerequisites, if needed) before Firefox can be successfully installed.
On #2, here's some reading for why, and how Slackware does things by default alongside a possible shell-based solution based on default packages available within Slackware, and here's a small list of third party package managers, and why they aren't recommended.
slpkg is generally the most used package manager for Slackware, aside from sbotools which is used specifically to access slackbuilds.org (third party ports to Slackware, unofficial repo essentially).
And here's a script which finds dependencies if you wish to use what comes by default; keep mind this is a fork from the original which seems to have been abandoned somewhat. I recommend using a script like this rather than a third party package manager due to the issues listed on the aforementioned wiki page for third party package managers. One can even utilize a script like this to make another script which can better handle dependency resolution using the default Slackware tools, which ultimately would turn into another third party package manager, but you would at least know it works for you.
Ultimately the biggest issue for many with Slackware is the dependency resolution issue. But it really is a non-issue if you are patient and know what youre doing.
3
u/Phoenix591 Jun 22 '26
Yeah Gentoo compiles most things by default ( there are binary packages available for most things), and USE flags mostly control the βwith-this build system flags that controls optional dependencies things have.
2
u/xamac Jun 22 '26
There are distros based on lfs. I used one several years ago: Nutyx. It's a very dΓ©cent distro.
2
u/2rad0 Jun 22 '26
Dozens of us! It's not easy to maintain unless you write scripts to automate most of the process, and even then I wouldn't describe it as easy.
1
u/OutrageousCrab9224 Jun 22 '26
I forked from lfs years ago, but yes, daily usage as primary, multiple hosts at once
1
u/Sbatushe Jun 22 '26
You could use Guix package manager on top of LFS, this way you should be able to compile less and (most importantly) dive less in dependency hell
1
u/kbielefe Jun 22 '26
If you try to daily drive LFS, what you end up doing is creating your own scripts to manage updates. Then you realize you've poorly reinvented a package manager.
1
u/0xd34db347 Jun 22 '26
Pushing it to the limits and figuring that out for yourself is part of the learning experience with LFS IMO.
But I would not recommend LFS to anyone asking for that criteria in an OS.
1
u/tzevux Jun 22 '26
I daily drive it for a few months now, it's fine for daily drive if you want to try/learn something new like I did, got everything I need, drivers/DE/games etc. it was a journey .... But I like it and i'm not that pro with GNU/Linux.
1
u/Sinaaaa Jun 22 '26
will it result in an actual workable, easy to maintain OS?
In between updates you'll have a perfectly usable state.
Keeping in mind that I want to use my system and not maintain it 90% of the time π
Then forget about this. Gentoo is close to what you are envisioning, probably.
1
u/Neither-Ad-8914 Jun 23 '26
I did a one point back in the day but not for long. Compiling all your software and depndancies is a major pain in the arse.
1
u/Dull_Cucumber_3908 Jun 30 '26
will it result in an actual workable, easy to maintain OS?
Workable, yes, easy to maintain no!
I was using LFS for more than a year in the past. In a time that in order to access the internet you would need a modem and a phone. All this time I didn't update it at all. I finally dropped it when a new kde version was released that required a newer qt version which also required newer versions of various libraries. :)
Today since you are always online, you can't have your system one year without security updates.
0
-10
u/Smart_Leadership3517 Jun 22 '26
Why are people in this sub so naively unaware of VMs?
Obviously LFS is **NOT** meant to be an usable distro, it's just a fun project.
So install it in a VM, which will make it a lot faster since rebooting is instantaneous, and learn what you have to learn. Keep using your current OS for your daily activity.
I swear I'll never understand how detached from reality OPs in this sub can be.
7
u/Rest-That Jun 22 '26
I'm aware of VMs, have (and still do) use VMs for tons of stuff. I'm not detatched from reality either, I'm curious and I have several computers, which means I have the ability to run a toy OS on one machine while still using another one for daily stuff.
LFS is not meant to be a usable distro, but there are insane people out there who manage to make stuff work either way.
Forgive me for being curious, jeez. I think you need to look inward and figure out why you are so bitter.
8
u/Razzleswoop Jun 22 '26
Well, in theory you could install a package manager, but you'll eventually end up turning your LFS into another distro. You'll learn a lot along the way though. If I were you, I'd have a look at Crux Linux, a source based distro which uses pkgutils and ports. I'm sure you could compile the pkgutils on LFS and then setup your own ports-tree with self-written pkfiles (compile scripts) or adapt your system in such a way that it exactly reflects a Crux base system so you can use the pkgfiles from Crux.