Skip to content

Latest commit

 

History

History
49 lines (32 loc) · 1.5 KB

README.md

File metadata and controls

49 lines (32 loc) · 1.5 KB

🚀 Bootstrap

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!

Installation

Installing from USB installation medium (Arch Linux)

Install Arch Linux via SSH

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)"

After rebooting

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)"

After loading a graphical environment

Installs the Dashlane browser extension for password management and authenticates the GitHub CLI.

~/.local/share/bootstrap/auth.sh

Dumping configuration

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