Skip to content

Build ISO

Mihir Lad edited this page Jun 1, 2020 · 3 revisions

There are 2 ways to build a LadOS ISO:

  • Build from Scratch
  • Remaster Archiso

The first method requires an existing Arch Linux installation. The second method can theoretically be done on any linux system (not tested on other systems) as long as you have the equivalent packages.

The following packages are required to build the ISO: squashfs-tools libisoburn dosfstools lynx syslinux

The make-iso.sh script in the build/ directory of the repo will be used for both methods.

Build from Scratch

To build a LadOS iso from scratch, follow these steps:

  1. Edit any configuration files you would like to before hand in the conf/ directory. This configuration will be copied to the ISO.

  2. Navigate to the build directory from the root directory of the repo.

    $ cd build

  3. Run the make-iso.sh script and follow any on-screen prompts

    $ ./make-iso.sh interactive
    -----Make ISO-----
    1. Build from scratch
    2. Remaster ISO
    3. Image USB
    4. Exit
    Option: 1
    
    
  4. If the build is successful, the LadOS iso should be available in the build/ directory.

Remaster ISO

To remaster an archiso, follow these steps:

  1. Edit any configuration files you would like to before hand in the conf/ directory. This configuration will be copied to the ISO.

  2. Navigate to the build directory from the root directory of the repo.

    $ cd build

  3. Run the make-iso.sh script and follow any on-screen prompts

    $ ./make-iso.sh interactive
    -----Make ISO-----
    1. Build from scratch
    2. Remaster ISO
    3. Image USB
    4. Exit
    Option: 2
    -----Remaster ISO-----
    1. Download ISO
    2. Use existing ISO
    3. Go Back
    Option:
    
    
  4. Select a remaster option. You can either let the script auto-download the latest archiso or you can download any archiso yourself and specify the path to the ISO.

  5. If the build is successful, the LadOS iso should be available in the build/ directory.

Image USB

If you ran either method above non-interactively, you may not have received a prompt to image your USB with the ISO. You can image your USB with the newly built image using the following steps. CAUTION: this will wipe your USB.

  1. Navigate to the build directory from the root directory of the repo.

    $ cd build

  2. Run the make-iso.sh script

    $ ./make-iso.sh interactive
    -----Make ISO-----
    1. Build from scratch
    2. Remaster ISO
    3. Image USB
    4. Exit
    Option: 3
    
    
  3. A list of your currently attached devices in /dev will show. Specify the full path to your USB device.

Additional Build Features

The build process has additional settings/features which can be enabled to simplify the installation process.

All the steps above can be executed non-interactively by specifying commandline arguments for the execution path you would like the script to follow. Type ./make-iso.sh help from the build/ folder for more details.

Secure Boot Support

If you are currently using secure boot with shim or with custom keys, you can specify the path to your PEM-encoded private singing key and your PEM-encoded public certificate (interactively or as commandline arguments) to sign the LadOS binaries with your secure boot keys. LadOS should then boot without having to disable secure-boot.

Local Pacman Repo

If you are running the script on an existing Arch Linux installation, you can choose to create a local pacman repo of packages. This will allow you to download all the LadOS packages beforehand and store them in the ISO as cache, so during the installation process you can simply install all the packages without having to download them. This localrepo is also used to install the base packages onto the ISO during the build process.

If any of the required packages already exist in your host system's cache, those will be copied over.

You will also have the choice to pre-compile the AUR packages and include them in the repo, so they do not have to be compiled during the installation process.

This feature can significantly speed up the installation time.

Windows 10 Fonts

If you choose to install this optional feature with LadOS, it would be significantly easier to include the pre-compiled package in the ISO during the build process. You can choose to build this package and include it in the localrepo (either interactively or as a commandline argument). See the feature wiki page for configuration instructions.

Clone this wiki locally