Main Page

From LFScript
Revision as of 17:02, 21 October 2026 by Marcel (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
(Update - 2026/10/21)
Hi! I am happy to announce that a new version of lfscript will be available later this year. I am aiming for a mid-to-late November release date.

Some highlights of the new version:
- Support for both LFS and MLFS.
- Byte-for-byte reproducible package archives (and hopefully, Live CD images).
- Maintaining support for i486 for as long as possible, using an LTS Linux kernel (probably until 2029).
- Increased host system safety (and ease of use) by running in Docker by default (but this is not a requirement)
- Sensible, readable code, made by humans.

Immediate goals:
- The focus for now will be on the LFS/MLFS base systems only, with minimal additions to allow the creation of LiveCD images.
- Releasing the LiveCD variants for x86-64, multilib and i486. Unlike previously released LiveCDs, these will be as vanilla as possible and without branding. As close to a reference implementation of LFS as possible, and, of course, able to rebuild themselves perfectly.
- Documenting everything, and setting up a page to track package reproducibility.
- Maintaining a stable release schedule.

Next year, these goals might expand to include BLFS/GLFS.

Current (pre-release) status:
- Development versions of LFS/MLFS are building without errors, and bootable on minimal QEMU VM's.
- LFS on i486 and x86-64 is stable and fully reproducible.
- Work is underway to create Live CD images

Note that the rest of this website is still out of date. However, I will update it when the new version is released.

A big thank you to everyone who has used lfscript in the past, and to those who will use it once again soon :)

-Marcel
MATE Desktop and Compiz Reloaded, built with LFScript 4

Linux From Script (or 'LFScript') is an unofficial alternative for 'Automated Linux From Scratch'. LFScript includes thoroughly tested scripts generated from the LFS and BLFS books, with which you can build a complete Linux operating system from scratch. The scripts are layed out similarly to the LFS and BLFS books, which means that if you have read the LFS books, you should have no problem editing them to customize your system in any way you want.

One difference with regular LFS (besides the automation), is that LFScript builds simple package archives (XZ compressed TAR archives) for each individual software package. Besides easy transferrence of your system, this allows for cleaner selective upgrades and pausing builds in between packages. LFScript logs all compilation and installation messages to one file per package, allowing you to quickly debug your modifcations. LFScript also includes a script to build a Live CD from your system.

Download (version 2017-05-13)


MD5 Checksums:

efe672b30dd0712c8d77a07edb1914e5  lfscript4-revision20170513.tar.xz

From the command line, you can always get the most recent version of LFScript using the following command:

wget lfscript.org/latest.tar.xz

Note that the file format has been changed to .tar.xz recently.

LFS version ~8.0: SVN-20170428 (svn 11236)
BLFS version ~8.0: 2017-04-29 (svn 18652)
LFS coverage Full. Kernel version 4.10.13
BLFS coverage Full. However, some scripts might not work straight out of the box. See the Whitelist for a list of scripts which are known to work properly.
Custom scripts beyond BLFS MATE 1.18, Compiz Reloaded 0.8.14, ability to create a Live CD. See the full list of Extra packages.
Known to work CPU architectures x86_64, i486 (with FPU). rust (a Firefox dependency) requires FXSR, and both nodejs and chromium require FXSR, SSE2 and CMOV. Other architectures may also work, but have not been tested.

What is included?

Each LFScript revision consists of a build manager (the bash script named 'lfscript'), the means to generate scripts from the LFS/BLFS books (ScriptFactory) and a set of pre-generated scripts for the LFS/BLFS versions at the time of release. The build manager has not changed substantionally in the last few years, but the scripts to build LFS and BLFS have. Most work is therefore done on ScriptFactory to maintain the ability to quickly produce a current set of buildscripts.

Even though LFScript contains scripts for all of LFS and BLFS, not all scripts are known to work properly. If some software you want is not on the list of tested scripts, you should be prepared to edit and debug the scripts for them yourself.

In addition to LFS and BLFS, some additional software (that is not in LFS or BLFS) can be built. The build instructions for these packages can also be found on this wiki (see: Extra packages).

Source code mirror service

LFScript will automatically try to download source code from our own mirror if an URL specified in the WGETLIST of a script fails. This way, the source code for all software in the most recent version of LFScript should always be available.

Getting started

If you are new to LFScript you should start by reading the Quick Start guide. You could also read some of the other Documentation.

If you run into trouble you should Ask a Question, and if you have found a bug you should report it.

Contributing

If you would like to support this project, please click the button below:

To see what your donation has been spent on, visit the Accounting page.

Get the Live CD

A recent live CD is currently not available

The "From Script" OS

The "From Script" Operating System (or fsOS for short) is developed together with LFScript and is an example of the LFS/BLFS system you can build with LFScript.

To use LFScript, your current operating system (the "host system") must meet certain requirements (as described in LFS). If you use this Live CD as your host system, you do not need to worry about these.

Additionally, using a Live CD as a host system (preferably on a virtual machine) protects the OS you use every day and allows you to experiment freely.

Download (version 4r16)

This ISO image contains both a 32-bit and a 64-bit system, and can be used to run LFScript for i486, i586, i686 and x86_64 targets (provided that the host machine CPU is capable).

Size: 296MB

MD5 checksum: 0c31ea5da1258982a1056bd0c237e79a