LiNomad installation script

Foreword

The goal of this project is not to provide a ready-to-use ISO, but rather a script and instructions to allow anyone to build the system on their own.

Backup your data on an external storage device before proceeding.

There is a high risk of data loss in case of software defect or mishandling. You act at your own risk.

if unsure, first try in a virtual machine.

In this documentation, any reference to setup-arch-xfce.sh can be replaced with setup-arch-hyprland.sh, depending on the desired desktop environment.

Install with the offical Arch ISO

Pre-Installation

This is a summary of the official Arch install documentation.

  1. Download the official Arch installation ISO.

  2. Flash it on an USB media - change /dev/sdx to your real USB device name - see dmesg output if unsure; beware of data loss (device will be wiped):

sudo umount /dev/sdx1
sudo dd if=archlinux-yyyy.mm.dd.iso of=/dev/sdx

You can also burn the ISO to a DVD.

  1. Boot the install media:
    • disable the secure-boot from UEFI (Unified Extensible Firmware Interface) setup,
    • boot from the USB media or DVD drive (preferably in UEFI mode).
  1. Load a keyboard layout - replace xx with your own language code - prefer the localectl command to loadkeys because it allows the installation script to automatically configure the keyboard layout and the system language:
localectl set-keymap xx
  1. Connect to the network:
ip link
  1. If necessary, partition the disk - replace /dev/sdx with your real disk - see lsblk output if unsure; it is probably going to be /dev/nvme0n1:
    • an EFI system partition is required; you likely already got one, but if you don’t, give it a size of 100M-200M and ef00 as hex code;
    • a Linux partition is required for the system root filesystem (/);
    • an optional Linux partition for user data (/home)
cgdisk /dev/sdx
  1. If the EFI system partition did not exist before, format it:
mkfs.vfat -F 32 /dev/sdx1
  1. Format and mount the installation partition - replace /dev/sdx200 with your real installation partition - see lsblk output if unsure:
mkfs.ext4 /dev/sdx200
mount /dev/sdx200 /mnt
mount --mkdir /dev/sdx1 /mnt/boot/efi
  1. If you have a separated home partition, mount it as well, after formatting it if necessary - replace /dev/sdx003 with your real home partition:
#mkfs.ext4 /dev/sdx003
mount --mkdir /dev/sdx003 /mnt/home

Installation

It is at this stage that the installation procedure differs

  1. Download the setup script:
curl -o setup-arch-xfce.sh https://linomad.fox-echo.info/downloads/setup-arch-xfce.sh
chmod +x setup-arch-xfce.sh
  1. Optionaly edit the setup script to suit your needs (i18n, username / password and packages selection)

  2. Run the script to install packages and setup the system:

./setup-arch-xfce.sh /mnt | tee setup.log

Check the log for errors; if all went well, the installed system is now ready to boot.

Install from an existing Linux system

Prerequisites

The setup-arch-xfce.sh script requires the curl, lftp, pacstrap and pacman commands.

  • Installation under Arch Linux:
pacman -Syu curl lftp arch-install-scripts
  • Installation under Debian Linux:
apt update
apt install curl lftp arch-install-scripts pacman-package-manager

Pre-Installation

The procedure to install the system from an existing Linux system is quite the same, beginning at step 6 of the pre-installation (partitionning). If you want to use your current mounted /home partition for the new system, replace step 9 by:

mount --mkdir --bind /home /mnt/home

Installation

The installation procedure is exactly the same as with the Arch install ISO.