fix-check-installed-packages
bootstrap_dev_env
A Go-based bootstrap tool that installs a development environment across
macOS, Debian/Ubuntu, RHEL/Fedora, and Arch Linux on x86_64 and aarch64.
It installs system packages, optional Flatpak GUI apps, and a set of custom
third-party tools (Go, Neovim, Zig, NVM, pyenv, oh-my-zsh, Firecracker on
Linux).
Install
Download the pre-built binary for your platform and make it executable.
Using curl:
curl -Lo bootstrap_environment "https://github.com/JMR-dev/bootstrap_dev_env/releases/latest/download/bootstrap_environment-$(uname -s | tr '[:upper:]' '[:lower:]')-$(uname -m | sed 's/x86_64/amd64/; s/aarch64/arm64/; s/arm64/arm64/')"
chmod +x bootstrap_environment
Using wget:
wget -O bootstrap_environment "https://github.com/JMR-dev/bootstrap_dev_env/releases/latest/download/bootstrap_environment-$(uname -s | tr '[:upper:]' '[:lower:]')-$(uname -m | sed 's/x86_64/amd64/; s/aarch64/arm64/; s/arm64/arm64/')"
chmod +x bootstrap_environment
Usage
# Linux (do NOT use sudo on macOS — Homebrew refuses to run as root)
sudo ./bootstrap_environment [--only system|flatpak|custom] [--gui]
# macOS
./bootstrap_environment [--only system|custom] [--gui] [--no-vm]
Flags:
--only— restrict to one section (system,flatpak, orcustom).--gui— include GUI applications and the Flatpak section. Default is headless: both are skipped.--no-vm— macOS only: skip provisioning the Fedora-on-QEMU/VirtualBox VM that backs thefirecracker()zsh wrapper.
Package lists live in packages.go. Edit and rebuild.
Build from Source
If you prefer to build the tool yourself, or if you are making custom modifications:
-
Clone the repository:
git clone https://github.com/JMR-dev/bootstrap_dev_env.git cd bootstrap_dev_env -
Build for the current host platform:
make build # builds ./bootstrap_environment for the host
To cross-compile binaries for all supported targets at once:
make build-all # writes dist/bootstrap_environment-{linux,darwin}-{amd64,arm64}
Description
Bootstrap tool for setting up dev/workstation environments for several different POSIX operating systems and workloads
6.5 MiB