# archinstall Just a bare bone automated [Arch Linux](https://wiki.archlinux.org/index.php/Arch_Linux) installer *(with optional network deployment instructions based on MAC-address)*. Pre-built ISO's can be found here which autostarts this installer: https://hvornum.se/archiso/ # How-to / usecases ## Run on Live-CD (Python): # wget https://raw.githubusercontent.com/Torxed/archinstall/master/archinstall.py # pacman -S --noconfirm python; python archinstall.py --default This will install a basic Arch Linux, with minimal interaction, on the first drive it finds or on user-selected drive if many exists. *(Use `--drive=/dev/sdb` to change the desired destination to skip interaktion)* > NOTE: Follow [ArchISO](https://wiki.archlinux.org/index.php/archiso)'s guide on how to create your own ISO or use a pre-built [guided ISO](https://hvornum.se/archiso/) to skip the python installation step, or to create auto-installing ISO templates. Below is examples and a cheat sheet on how to create such a ISO *(with different flavors)*. ## Run on Live-CD (Binary) # wget https://gzip.life/archinstall # chmod +x archinstall; ./archinstall # Features * Unattended install of Arch Linux * User guided install of Arch Linux *(Like most other distros have)* * YubiKey support for disk and root password *(TBD / next release)* * Profile / Template based installs * Supports offline-installation of Arch Linux *(currently broken)* * Full disk encryption, locale/region settings and customizable application selection * Never creates or leave post-install/service scripts *(usually used to finalize databases etc)* # Examples: * `./archinstall --profile=workstation --drive=/dev/sda` - Installs the workstation template on the drive `/dev/sda` # [Build a Arch Linux ISO to autorun archinstall](https://github.com/Torxed/archinstall/wiki/Autorun-on-Arch-Live-CD) More options for the built ISO: ### [Unattended install of a profile](https://github.com/Torxed/archinstall/wiki/Unattended-install-of-a-profile) ### [User guided install (DEFAULT)](https://github.com/Torxed/archinstall/wiki/User-guided-installation-(DEFAULT)) ### [Custom web-server for deployment profiles](https://github.com/Torxed/archinstall/wiki/Custom-web-server-for-deployment-profiles) # [Rerunning the installation](https://github.com/Torxed/archinstall/wiki/Rerunning-the-installation) # Some parameters you can give it --drive= Which drive to install arch on, if absent, the first disk under /dev/ is used --size=100% (Default) Sets the size of the root filesystem (btrfs) --start=513MiB (Default) Sets the starting location of the root partition (TODO: /boot will take up space from 1MiB - , make sure boot is no larger than 513MiB) --password=0000 (Default) Which disk password to use, --password="" for prompt of password --password="" for setting a unique password on the YubiKey and use that as a password (NOTE: This will wipe/replace slot 1 on the YubiKey) --pwfile=/tmp/diskpw (Default) Which file to store the disk encryption password while sending it to cryptsetup --hostname=Arcinstall (Default) Sets the hostname of the box --country=SE (Default) Default mirror allocation for fetching packages. --packages='' (Default) Which additional packages to install, defaults to none. (Space separated as it's passed unchanged to `pacstrap` --user= Adds an additional username to the system (default group Wheel) --post=reboot (Default) After a successful install, reboots into the system. Use --post=stay to not reboot. --default This parameter causes the installation script to install arch unattended on the first disk --profile= For instance, --profile=workstation will install the workstation profile. --profiles-path=https://example.com/profiles Changes the default path the script looks for deployment profiles. The default path is 'https://raw.githubusercontent.com/Torxed/archinstall/master/deployments' --rerun="Name of step in profile" Enables you to skip the format, encryption and base install steps. And head straight for a step in the profile specified. (Useful for debugging a step in your profile) --localtime="Europe/Stockholm" (Default if --country=SE, otherwise GMT+0) Specify a localtime you're used to. Deployment profile structs support all the above parameters and more, for instance, custom arguments with string formatting. See [deployments/workstation.json](https://github.com/Torxed/archinstall/blob/net-deploy/deployments/workstation.json) for examples. # Contact IRC: `#archinstall@FreeNode` ## End note ![description](description.jpg)