Alpha - Archinstoo¶
What is archinstoo:¶
A fork of archinstall an operating system installer for archlinux.
MORE choices, LESS packages installed in end-product, LESS complex flags, and MORE hot-fixes.
Aims to make the code base more readable, maintainable and modifiable by anyone.
Tip
In the ISO, you are root by default.
Use sudo or equivalent, when from an existing system.
Setup / Usage¶
0. Get internet access
Note
Ethernet cable is plug and play.
Test: ping -c 3 google.com if this returns ttl=109 time=10.1 ms 3 times...
You can then skip wifi setup below
For Wifi:
# check devices
$ ip link
$ iwctl station wlan0 connect "SSID"
# where SSID is the name of your wifi
# where wlan0 is your device name
# case sensitive and will prompt for password
$ nmcli dev wifi connect "SSID" -a
# alternative
0.1. Prep
If on the ISO instead of a live system
pacman-key --init
pacman -Syy
pacman -S git
1. Get the source code¶
git clone https://github.com/h8d13/archinstoo
cd archinstoo/archinstoo
2. Run the code¶
python -m archinstoo [args] # try -h or --help
# some options are behind --advanced
3. Enjoy your new system(s)¶
Make your pizzas. Una pizza con funghi e prosciutto.
Tip
Alternatively: There are wrappers/helpers (which perform similar steps to 1 and 2) from the repo root:
./RUN # regular
./DEV # advanced
Modify/Extend¶
You can create any profile in
archinstoo/default_profiles/following convention, which will be imported automatically. Or modify existing ones directly. Can also see here for examples
You can make plugins easily --script list for archinstoo, anything inside scripts/ is also imported.
Available options:
[*] requires root
count
mirror
size
format [*]
guided [*] < DEFAULT
live [*]
minimal [*]
packages [*]
rescue [*]
The full structure of the project can be consulted through TREE
Core changes you can perform in installer.py and related defs (here search/find/replace is your friend).
A man page is also available man -l docs/archinstoo.1
Use cases¶
See Newb-Corner if you're just starting out with Arch.
See Headless for example server install to play minecraft/run tailscale nodes.
See Multi-Boot for example to boot multiple OSes.
See Security for hardening installs/best practices.
See Build-ISOs to create your own install mediums.
See Cachy-Kernels for swapping to their kernels post-install.
See Out-of-Tree for example install on unsupported hardware. (Older nVIDIA, Realtek, ...)
See ARM-Support for example install on Raspi 5-b.
See all other docs: .github and ArchWiki
Testing¶
Host-to-target: testing (without ISOs) Here you will need more dependencies
See historical/latest changes Changelog
The process would be the same with git clone -b <branch> <url> to test a specific fix. Usually reproduced then tested on actual/appropriate hardware.
Any help in this regard is deeply appreciated, as testing takes just as long, if not longer, than coding.
Accurate reports/PRs will be addressed in a timely manner: Issues and Contributing
Philosophy: Simplify, No backwards-compat, Move fast (even if it means breaking and fixing).
See Philosophy
See Troubleshooting
Building sources¶
The idea being to promote option 2 to use archinstoo latest non-dev. Always, since fixes are often time critical.
-
For DEV top-level
PKGBUILDhas extra tools likearchiso,pacman-contribandnvchecker. -
For non-dev see
archinstoo/PKGBUILDuses the repo without it's top part from git.
See archinstall and thanks to the many original contributors.
See mirror for a copy of this repo, not on GitHub.