One-shot setup for engineer laptops — Ubuntu 26.04 LTS.
No git needed on a fresh laptop:
curl -fsSL https://github.com/craftyshelf/provision/archive/refs/heads/main.tar.gz | tar xz
cd provision-main
sudo bash provision-engineer.shRun it while logged in as the engineer (it configures $SUDO_USER). clogs and
clogs-test in this folder are installed to /usr/local/bin automatically. The script
continues past a failed step and prints a summary at the end.
CLI: fzf, eza, fd, bat, ripgrep, jq, zoxide, zsh + oh-my-zsh (+ autosuggestions, syntax-highlighting), vim, git-gui, htop/btop. Apps (no snap): VS Code, IntelliJ IDEA CE, DBeaver CE, Brave, Chrome, Ghostty (+ JetBrainsMono Nerd Font), Postman, Bruno, Kiro IDE, Kiro CLI, NoSQLBooster, pgAdmin 4 (if the Ubuntu codename is supported), WPS Office, Docker CE. AWS: CLI v2 + session-manager-plugin + seclogin. Runtimes via mise: node, java 21 & 25, maven.
Every GUI app comes from an apt repo, an official tarball (/opt), a .deb, or an
AppImage — no snap. Two bits are version-pinned in the script and may need a bump on a
newer release: WPS_URL and NOSQLBOOSTER_VER. pgAdmin auto-skips if its apt repo has no
build for this Ubuntu codename yet.
Place these beside provision-engineer.sh before running and they'll be picked up:
wps-office*.deb— a WPS Office package downloaded once from wps.com (avoids the pinned URL)clogs.env— private clogs config (see below)
clogs ships without internal values. Provide them via env vars or ~/.config/clogs.env
(deploy that file separately — it is intentionally NOT in this public repo):
CLOGS_PROFILE=<aws-sso-profile>
CLOGS_REGION=<region>
CLOGS_LOG_GROUP_PROD=/your/prod/log-group
CLOGS_LOG_GROUP_TEST=/your/test/log-group
CLOGS_STREAM_EXCLUDE='^(prefixA\.|prefixB\.)' # optional: hide noisy streams- Log out / back in (docker group + zsh default shell)
aws configure ssokiro-cli login(Builder ID for the Kiro CLI)- Sign into browsers, IntelliJ, and Kiro