JMR-devandCopilot e14347fd31 Fix CI: pnpm PATH, Obsidian arch matcher, Arch pkg names, Fedora lazygit COPR
- post.go: export PNPM_HOME+PATH before pnpm add -g so global bins
  install correctly in the non-interactive shell. Applied to
  installNpmPackage and installPlaywright (incl. browser install).
- system.go: treat token-less Obsidian AppImage as x86_64 (upstream
  publishes "Obsidian-X.Y.Z.AppImage" with no arch suffix).
- pkgmgr.go: docker-ce-rootless-extras and vagrant are AUR-only on
  Arch → skipOverride; pipx → python-pipx on pacman.
- repos.go: new setupLazygitCoprRepo enables copr.fedorainfracloud.org/
  dejan/lazygit on Fedora; wired into repoGroups so lazygit installs.
- Tests: PNPM_HOME export (Linux+macOS), token-less Obsidian asset,
  pacman pkg overrides, COPR repo setup, updated repoGroups count.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-26 14:43:44 -05:00
2026-05-26 13:53:09 -05:00
2026-05-22 21:48:57 +00:00
2026-05-22 21:48:57 +00:00
2026-05-26 09:36:05 -05:00
2026-05-26 09:36:05 -05:00
2026-05-26 13:21:31 -05:00
2026-05-26 13:21:31 -05:00
2026-05-26 09:36:05 -05:00
2026-05-26 09:36:05 -05:00
2026-05-26 09:36:05 -05:00
2026-05-26 09:36:05 -05:00
2026-05-26 09:36:05 -05:00
2026-05-22 21:48:57 +00:00
2026-05-26 09:36:05 -05:00
2026-05-26 09:36:05 -05:00
2026-05-26 09:36:05 -05:00
2026-05-26 09:36:05 -05:00
2026-05-26 09:36:05 -05:00
2026-05-26 13:21:31 -05:00
2026-05-26 09:36:05 -05:00
2026-05-26 09:36:05 -05:00
2026-05-26 13:21:31 -05:00
2026-05-26 09:36:05 -05:00

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, agy, claude, codex, and copilot).

Install

Download the native binary for your platform from a release, or build from source:

git clone https://github.com/JMR-dev/bootstrap_dev_env.git
cd bootstrap_dev_env
make build           # builds ./bootstrap_environment for the host

To produce native binaries for all four supported targets at once:

make build-all       # writes dist/bootstrap_environment-{linux,darwin}-{amd64,arm64}

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, or custom).
  • --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 the firecracker() zsh wrapper.
  • --no-ai — skip installation of AI/LLM CLI tools (agy, claude, codex, copilot).

Package lists live in packages.go. Edit and rebuild.

S
Description
Bootstrap tool for setting up dev/workstation environments for several different POSIX operating systems and workloads
Readme
6.5 MiB
v.0.3.0
Latest
2026-06-11 16:51:42 +00:00
Languages
Go 99.7%
Makefile 0.3%