Keeps track of installed packages, enabled systemd services, selected /etc
configuration files (mostly diffs), bootloader entries, and ~/.config
files on
a per-machine basis. Currently supports Arch Linux and macOS.
THIS CODE IS BRITTLE AND UNSTABLE! USE AT YOUR OWN RISK!
After enabling network functionality (e.g. iwctl
) and setting a root password
with passwd
, you can ssh
into the machine and copy-paste the following:
bash -c "$(curl -fsSL https://raw.githubusercontent.com/loqusion/bootstrap/main/liveinstall.sh)"
For Arch, installs paru, packages, and system config files, and enables systemd services.
For macOS, installs Homebrew, Xcode Command Line Tools, and Homebrew packages.
bash -c "$(curl -fsSL https://raw.githubusercontent.com/loqusion/bootstrap/main/install.sh)"
Installs the Dashlane browser extension for password management and authenticates the GitHub CLI.
~/.local/share/bootstrap/auth.sh
Stores a list of manually installed packages, a list of enabled systemd services,
and certain system-wide configuration files like those kept in /etc
. Most of
the system-wide configuration is kept in .patch
files to accommodate upstream changes.
~/.local/share/bootstrap/dump.sh