Linux From Scratch or LFS is a project that provides and maintains a set of instructions of how to build your own Linux system from scratch. I am always curious to understand how things work ‘under the hood’, and since I’m a daily Linux user i decided to take on the challenge to try and complete building Linux From Scratch.
Not your ordinary Linux distro
Some people think that LFS is similar to other minimal Linux distros like gentoo, however there’s a big difference between installing a complete distribution and building your own system. When doing LFS you don’t have a luxury of using a package manager, so you have to take care of compiling, testing and installing all of the required software and it’s dependencies yourself. In fact you first have to compile the compiler which you use to compile the cross tool chain which will be used to compile the software for the LFS system.
Some people, especially beginners also misunderstand the technical difficulty of LFS. If you know basic command line commands and can read fluently in English you’re definitely prepared to build complete building LFS. All of the steps are really well documented and explained in the instructions, so this is more of follow the instructions closely rather than solve complex problem type of thing. It is time consuming though - it took me 15-20 hours in total to complete the build throughout a few days.
I wouldn’t say i have gained much knowledge that i can apply on a day to day basis, however i definitely feel more comfortable building software from source. Also i have gained some perspective on how much work distro maintainers has to go through and i now feel much more respect for them. All in all if you have time to spend on this - definitely go for it! You will learn a thing or two and the feeling of booting into the system that you have made from scratch makes it all worth it.