I created this install script with the following basic principles in mind:
- Modular
- Portable
- Reusable
The primary purpose was so that I can create a linux profile where I can bring around and have the convenience of reinstalling the linux distro whenever required with the same specifications, everytime - with as little keystrokes as possible.
This first started with ArchLinux, thus currently I only have a ArchLinux install script - however, i made documentation, step-by-step installation guides for
Debian via Debootstrap (referenced from the debootstrap docs) and
Void Linux via chroot (referenced from the void linux chroot docs).
1. Before Executing
1.1. Open up the script
1.2. Change the variables
1.2.1. Populate base-installation details such as
- Device Details (Device name '/dev/sdX', Partitions etc.)
- System Details
- User Details
- Basic Profile Information
- Packages to install on base-install
1.3. Backup the script (OPTIONAL)
1.4. Ensure you have arch-chroot
- Currently - as of 2021-10-01 1422H - this utilizes arch-chroot;
- thus you will require a arch-based distro or install arch-chroot)
- I recommend using this with the latest release of the arch installer, use wget to download the script
2. Execute script and let it load
3. Done
You do not need to change the functions (unless the purpose is to modify it).
Now you can just bring this script to the next computer, rinse and repeat steps [1.4-3].
You can even place this on a shared drive and run it simultaneously on multiple computers with the same build! (please help me test that, at the moment I only had a test case of 5 VMs :^V, thank you!)
ArchLinux Installscript Template | This is the template variation - Each variable and/or Associative Arrays are labelled with the default/recommended values and what kind of value should go into it.
Optional and Required variable fields are also marked out to make usability better.
ArchLinux Installscript Pre-Built Design | This is the prebuilt variation - This has been predesigned with one of my builds in mind and has been tested to be stable (on my VM).
With this, you can look through the variables and recreate the requirements and test it out before using the template and/or modifying this to fit your requirements.