But on subsequent play-throughs, you get to be creative! Want to ignore the FHS and try putting your apps somewhere weird? Want to use a different libc or init system? Build everything around an esoteric shell? Go for maximum optimisation? It's the replayability that makes Linux from Scratch fun, and yes, totally worth working out what your own distro might look like.
If you want to just build an existing distro from scratch then they all have ways of doing that as they need to rebuild packages regularly. Eg: It’s a lot simpler to build a fedora image from scratch by using Koji/OSBuild vs LFS as Koji/OSBuild basically automate the whole LFS process.
Additionally in order to have fun with LFS you don’t really need to do the whole book. You can make your own little Linux “distro” from scratch with the kernel and statically linked busybox. Busybox comes with all the minimal utilities so you can pick and choose what you want to write and what you want to reuse.
when I was playing with this stuff the hardest part for me was getting my head around:
1. why do I need a cross-compiler if my system has a compiler already??? 2. why do I need to compile the compiler twice??
And well it turns out you don’t really need these steps but they’re required as part of the bootstrap process for GCC/glibc itself.
Or, as a base to build a distribution: you can automatize some of the process, slap a pkgsrc on top, etc.
For budding programmers, it's a great exercise: discover software, appreciate dependencies, understand components of a Linux distribution, learn how to build things from source, configure a kernel, etc.
could you say a few words on how this would avoid building and installing the required software individually? are you thinking of osdev instead?