LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux From Scratch (https://www.linuxquestions.org/questions/linux-from-scratch-13/)
-   -   Doubts regarding LFS (https://www.linuxquestions.org/questions/linux-from-scratch-13/doubts-regarding-lfs-4175701742/)

bob123sd 10-09-2021 10:17 AM

Doubts regarding LFS
 
I am a very new Linux user, but I want to build an LFS based distro.
The thing is after building LFS I want to actually use it as my main distro.
So, this means using a package system.
But I have no idea I should use. Should I use Slackware package system or Crux or NetBSD or Guix or Nix or Keith's or lfs-me?
I am looking for a package system which is easy to use and minimal.
I also want to use btrfs as the file system and runit as the init system.
Also, can I automate applying security patches for LFS?
Also, I would like to know any tips regarding making LFS managment easier?

wpeckham 10-09-2021 10:22 AM

Quote:

Originally Posted by bob123sd (Post 6290483)
I am a very new Linux user, but I want to build an LFS based distro.
The thing is after building LFS I want to actually use it as my main distro.
So, this means using a package system.
But I have no idea I should use. Should I use Slackware package system or Crux or NetBSD or Guix or Nix or Keith's or lfs-me?
I am looking for a package system which is easy to use and minimal.
I also want to use btrfs as the file system and runit as the init system.
Also, can I automate applying security patches for LFS?
Also, I would like to know any tips regarding making LFS managment easier?

You are wrong. If you want a packaging system then you do not REALLY want to build from scratch. In LFS the packages are the source code release archives (which CAN, at some late point in the build, become GIT repos!). Not that you cannot DO what you describe, you CAN! Just that I question why you would WANT to. If you want to end with a package manager, why not just start with a distro that supports a package manager in the first place?


This is particularly important for new users. LFS is really best for users who have some significant experience, and some experience either coding their own applications or at LEAST building applications from source code packages. While the instructions are excellent, it is not really designed for someone new to the FOSS development environment. Also, to get to a complete and functional system that runs the way you want requires a significant investment in time and effort: make sure you are ready to take advantage of that investment. (IF you are ready, it certainly CAN be worth it. First, you need to learn the background information so that you have the basis to learn what LFS (and BLFS) has to TEACH you!)


Otherwise you find yourself in the position of the kid with a brand new drivers license, who decides he will now build his own car from scratch. That MAY end well, but is doing things the hard way and the odds really suck!

hendrickxm 10-09-2021 10:54 AM

Adding pkgtools is really easy. Same with pkgutils, lfs-me, porg and probably a few others.
Using a package manager is not the same as using binaries, if you want to use existing packages then LFS is not the right choice.
You can rebuild a package with patches applied. How you want to automate the process is up to you.
You can also automate the process of building all the software you need from source without a package manager and rebuild your complete distro each X months.
Or start from an existing (LFS-based) distro and add software to it.
Up to you.

bob123sd 10-09-2021 11:36 AM

I just like the idea of building something with my own hands, even if it will be inferior to other distros.

bob123sd 10-09-2021 11:37 AM

Quote:

Originally Posted by hendrickxm (Post 6290491)
Adding pkgtools is really easy. Same with pkgutils, lfs-me, porg and probably a few others.
Using a package manager is not the same as using binaries, if you want to use existing packages then LFS is not the right choice.
You can rebuild a package with patches applied. How you want to automate the process is up to you.
You can also automate the process of building all the software you need from source without a package manager and rebuild your complete distro each X months.
Or start from an existing (LFS-based) distro and add software to it.
Up to you.

Are you talking about the ALFS project?

bob123sd 10-09-2021 11:38 AM

Also, I do like source based package management much better than binaries.

hendrickxm 10-09-2021 11:47 AM

(jh)ALFS was not the first thing that came to mind.
I never used it, I did try lfscript but that hasn't been updated in a while and the site is down.
I was talking about scripting the process of building LFS, however you want to do it.
Step 1 in trying LFS is building it and making it a useable distro. Step 2 is figuring out a way to do it better and implementing it by doing it all over again.

business_kid 10-09-2021 12:09 PM

From my dalliance with LFS
  • ALFS was always going out of date and it was hard to find, and fix. By the time the fix went up, it too was out of date.
  • HLFS while a great idea that bit the dust at an early stage. No hardening expert devs.
  • Devs are always in short supply. While many like to build the book, very few like to write the book, and rewrite it, and rewrite it, etc.
  • Patches are always a disaster area, and a time vacuum.

I agree 100% that if you want packages, you don't want LFS. You want LFS to get used to compiling stuff, and sorting yourself out when your compile lands jammy side down.

Slackware, Arch, and a few others are LFS-type distros with package managers. The OP sounds like a sucker for punishment and self flagellation. Try Arch, @OP!

bob123sd 10-09-2021 12:15 PM

Also, Can anyone give me any tips to make management of LFS easier such as (Usage of ZFS for snapshots in case any thing goes wrong) etc

bob123sd 10-09-2021 12:16 PM

I would also like to know if it is feasible to make a installtion iso of my distro. So, I can install my packages on any pc.

hazel 10-09-2021 12:42 PM

I used to have an LFS system that contained most of the software I used regularly and I used it as my working distro for several years, building the new LFS from the old one as new versions came out. It was nice, sleek, minimalistic. But you can't do that any more. LFS now includes such a lot of bloat and bumf (rust for heaven's sake!) that you can't build what you need.

bob123sd 10-10-2021 07:00 AM

Okay, I will not use it main distro and rather as a side project.
I have 2 more doubts:
Is it possible to make an installation ISO so that I can install on it any pc.
Are there any tips in order to make management of LFS any easier, like using ZFS for snapshots etc.

Keith Hedger 10-10-2021 07:53 AM

Quote:

Originally Posted by hazel (Post 6290531)
... LFS now includes such a lot of bloat and bumf (rust for heaven's sake!) that you can't build what you need.

LFS does NOT depend on rust! only some packages ( on my system that is thunderbird cbindgen librsvg js ) this has nothing to do with LFS or any other distro this is down to the devs who produce these apps/libs, for instance librsvg used to be an optional dependency for GIMP it is now required that is down to the GIMP devs!

I use LFS/BLFS as my main distro, have done for years and also use it in various SBC's fro media players, servers etc. It's just as stable and reliable as any other distro, including Slackware ( and I used to be a slacker! ).

hazel 10-10-2021 08:58 AM

The point is that we need a lot of this software if we are to use LFS as a main distro rather than a toy. Let me give an example which was the last straw for me:

A lot of things depend on polkit. In particular, polkit, elogind and pam are quite closely interlocked these days and things like cups depend on the combo. Polkit in turn depends on javascript and for this LFS uses the spidermonkey code inside the Firefox tarball. But to build it, you need rust!

At this point I went on strike and started looking for an alternative source of that particular JS package. I saw that Slackware-14 has an earlier version, so I looked in Slackware-current and they had the version that LFS-11 uses. So I installed it by hand. It rather goes against the point of LFS, but I'm too old (and not enough of a software expert!) to work out ways of building these things in LFS without their recommended dependencies.

I'm not blaming the LFS devs; I'm sorry if it came over that way. Obviously they have to follow and put up with what comes down from upstream. But bloat is bloat, whosever fault it is.

Keith Hedger 10-10-2021 09:12 AM

its only bloat if u let it other than js i dont have ANY mozzila products as they take way too mahy resources to compile/run ( 6G+ memory/swap to ljnk firefox ), and rust i install as a binary in /opt rather than try to compile it.

I dont understand u Hazel u always post on the LFS sub forum but always slag LFS off as being a toy or to complicated to keep updated.


All times are GMT -5. The time now is 03:12 PM.