Get Firefox
Valid XHTML 1.0!
Valid XHTML 1.0!

LFS-Build - An Automated Linux From Scratch Builder

When I started LFS-Build, I designed it as an automated method of building a Linux system, using the documentation from the Linux From Scratch (LFS) project. For those of you not familiar with the concept of LFS, it's a vanilla Linux distribution that can be tailored for your particular use.

Where LFS-Build differs from the other ALFS (Automated Linux From Scratch) solutions, is that LFS-Build uses the actual LFS XML source to derive it's scripts from, rather than customized XML files. LFS-Build, however, is not (in theory) limited to building only the LFS project - you can create your own custom script that can be parsed through LFS-Build, and built. Although it's not functionally complete yet, the idea is that you can point LFS-Build to the directory containing the LFS book XML source files, tell it what chapters to run through, and it will generate scripts that it can build.

Sadly, I don't know if LFS-Build will ever be completed. It is horribly out of date, and would probably require a rewrite in order to build current versions of the LFS book. I implemented the XML parser myself and worked around a number of issues with the formatting of the LFS book at that time (whether these issues have been fixed or not, I don't know). Probably using an XML parser that is more complete than I have written might be an idea. I don't use LFS anymore, I'm quite happy with my Slackware-current (9.1) installation right now.

I'm leaving the code up on my website for anybody who wishes to take a look at it, and possibly use it. Maybe someday I'll take a look at getting it going again, but at the moment, I'm working on another project, which is nearing completion.

Current Status: Version 0.2.0

For more details, I encourage you to download the source code and read the CHANGELOG file.

Features

  • Builds Chapter 5 from the the LFS XML book 4.0 without any modifications
  • Features a CLI to specify program options (in 0.1.0, it was hard-coded)

(Possible/Maybe/Not Likely) Future Plans

For now, this list is quite long, but here's some features that I have planned:

  • Get Chapter 6 to compile cleanly (There are/were some errors in the XML entity listings in the book itself - I need to verify this)
  • Put in status logs for each package built (to show warnings, errors, etc.)
  • Add an NCurses menu-driven interface
  • Generate a list of files generated by the compilation (for use for package managers, etc.)

You can download LFS-Build 0.2.0 here.