Arch Install Scripts

My highly-specialized Arch Linux installer. This repository offers scripts for performing a clean install of Arch Linux using the official installation medium. This installer supports both BIOS and UEFI install methods automatically. The proper boot mode is automatically selected based on how the installation medium was booted.

Assumptions

This installer makes the following assumptions:

If these do not accurately describe you, perhaps this installer is not for you. However, you may still benefit from the clean, modular design of this installer. You could easily adjust parts of the script to suit your needs.

Procedure

After booting the Arch installation medium and connecting to the internet, run the following commands:

    $ pacman -Sy --needed glibc git bash
    $ git clone https://git.bancino.net/Arch.git
    $ cd Arch

This will download and install git, and then use git to fetch this installer.

Open up config.sh and adjust it as necessary. The top portion contains variables that control the behavior of the installer. The second portion defines helper functions for additional tasks you may wish to perform. The function named hook_post_install is executed inside the arch-chroot after the installer is finished. You can add your custom installation code there.

Next, run the installer:

    $ ./arch-install.sh bootstrap

The bootstrap stage will partition the disk, format and mount the partitions, install the base system, and chroot into it. It will then execute the chroot stage, which configures the system. When the chroot stage is finished, it will execute hook_post_install before exiting the chroot and umounting the partitions. When the script is finished, you'll be dropped back where you started and should be able to reboot if all went well.

If something goes wrong, the script will abort immediately. If the bootstrap stage fails, you can manually fix the issue, and then run the commands after the failing step in the script. If the chroot stage fails, chroot into the install to fix the issue:

    $ arch-chroot /mnt

Once the issue is fixed, you can manually run the rest of the install steps. If the partition is not mounted at /mnt, you can manually mount /dev/mapper/volume-arch.