de7f71fea6ed6fb41681872978cda4c275f63493
Tests that exercise error paths in errLog/warn were causing GitHub Actions to annotate test output with 'Error: R] ...' (GHA eats '[ERRO' from '[ERROR]' lines and surfaces the rest as workflow errors), making real failures hard to distinguish from expected behavior. - issues.go: route logIssue output through issueLogWriter (io.Writer, defaults to os.Stdout). errorCount/issues/notices recording is unchanged so tests still assert via errorCount. - testmain_test.go: TestMain sets issueLogWriter = io.Discard for the whole test binary. - issues_test.go: TestIssuesLogging temporarily redirects issueLogWriter to a bytes.Buffer (replacing os.Pipe stdout capture). go test -v ./... now contains zero stray '[ERROR]' lines; real test failures remain visible and 'go test' still exits non-zero on failure, failing the workflow. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
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, 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.--no-ai— skip installation of AI/LLM CLI tools (agy, claude, codex, copilot).
Package lists live in packages.go. Edit and rebuild.
Description
Bootstrap tool for setting up dev/workstation environments for several different POSIX operating systems and workloads
6.5 MiB