# arch-zbm Helper script to install Arch Linux with ZFSBootMenu from within a running Arch live CD ISO image # Prep The script expects minimal prep on your end. Please make sure that before execution at least one of the following conditions are met. - Your machine has exactly one partition with partition type code `BF00` ("Solaris root") # How to run this? - Boot an Arch Linux live CD ISO image - Run: ``` curl -s https://quico.space/hygienic-books/config-jetbrains-ides/raw/branch/master/colors.scheme.xml | bash ``` # Steps The scripts takes the following installation steps. 1. Install ZFS with [github.com/eoli3n/archiso-zfs](https://github.com/eoli3n/archiso-zfs) # Post-run manual steps When all is said and done you're goig to want to at least touch these points in your new Arch Linux install: * Hostname: We chose a pseudo-randomly generated 8-character string with `pwgen` * Unprivileged user accounts: The OS was installed only with a `root` account * Passwords * ZFS: The password for all datasets underneath `zpool` is `password`. * Local `root` account: The local `root` account's password is `password`. * Arch User Repository (AUR) helper: We installed [paru](https://github.com/Morganamilo/paru) as our AUR helper, we installed from GitHub via `makepkg -si`. You may want to replace that by an AUR native installation e.g. by doing `paru paru`. # Assumptions # Development ## Conventional commits This project uses [Conventional Commits](https://www.conventionalcommits.org/) for its commit messages. ### Commit types Commit _types_ besides `fix` and `feat` are: * `build`: Project structure, directory layout, build instructions for roll-out * `refactor`: Keeping functionality while streamlining or otherwise improving function flow * `test`: Working on test coverage * `docs`: Documentation for project or components ### Commit scopes The following _scopes_ are known for this project. A Conventional Commits commit message may optionally use one of the following scopes or none: * `iso`: Changing Arch Linux ISO CD * `zbm`: Adjusting ZFSBootMenu's behavior * `zfs`: A change to how ZFS interacts with the system, either a pool or a dataset * `os`: Getting an perating system set up to correctly work in a ZFS boot environment * `meta`: Affects the project's repo layout, readme content, file names etc.