diff --git a/ToolboxStack/output/toolbox-base/Dockerfile b/ToolboxStack/output/toolbox-base/Dockerfile index 5a86002..86c3b0e 100644 --- a/ToolboxStack/output/toolbox-base/Dockerfile +++ b/ToolboxStack/output/toolbox-base/Dockerfile @@ -18,11 +18,14 @@ RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \ git \ jq \ bc \ + htop \ + btop \ locales \ openssh-client \ ripgrep \ tmux \ screen \ + entr \ fd-find \ bat \ httpie \ diff --git a/ToolboxStack/output/toolbox-base/PROMPT b/ToolboxStack/output/toolbox-base/PROMPT index 165b297..1cd94d2 100644 --- a/ToolboxStack/output/toolbox-base/PROMPT +++ b/ToolboxStack/output/toolbox-base/PROMPT @@ -7,16 +7,16 @@ Context snapshot (toolbox-base): - Mounted workspace: current repo at /workspace (rw) Current state: -- Dockerfile installs shell tooling (zsh/bash/fish with Starship & oh-my-zsh), core CLI utilities (curl, wget, git, tmux, screen, httpie, tea, bc, etc.), build-essential + headers, aqua, and mise. Aqua is pinned to specific versions for gh, lazygit, direnv, git-delta, zoxide, just, yq, xh, curlie, chezmoi, shfmt, shellcheck, hadolint; direnv/zoxide hooks are enabled for all shells (direnv logging muted). +- Dockerfile installs shell tooling (zsh/bash/fish with Starship & oh-my-zsh), core CLI utilities (curl, wget, git, tmux, screen, htop, btop, entr, httpie, tea, bc, etc.), build-essential + headers, aqua, and mise. Aqua is pinned to specific versions for gh, lazygit, direnv, git-delta, zoxide, just, yq, xh, curlie, chezmoi, shfmt, shellcheck, hadolint, uv, watchexec; direnv/zoxide hooks are enabled for all shells (direnv logging muted). - aqua-managed CLI inventory lives in README.md alongside usage notes; tea installs via direct download with checksum verification (TEA_VERSION build arg). - mise handles language/tool runtimes; activation wired into zsh, bash, and fish. - docker-compose.yml runs container with host UID/GID, `sleep infinity`, and docker socket mount; run via run.sh/build.sh. Host directories `~/.local/share/mise` and `~/.cache/mise` are mounted for persistent runtimes. - Devcontainer config ( .devcontainer/devcontainer.json ) references the compose service. -- Documentation: README.md (tooling inventory & workflow) and this PROMPT must stay current. README also notes that build.sh now uses docker buildx with a local cache directory. +- Documentation: README.md (tooling inventory & workflow) and this PROMPT must stay current, and both should stay aligned with the shared guidance in ../PROMPT. README also notes that build.sh now uses docker buildx with a local cache directory. Collaboration guidelines: 1. Default to non-destructive operations; respect existing scripts run.sh/build.sh. -2. Any tooling changes require updating README.md (inventory) and this prompt summary. +2. Any tooling changes require updating README.md (inventory) and this prompt summary, rebuilding via ./build.sh, then committing (Conventional Commits, atomic diffs) and pushing after a successful build per ../PROMPT. 3. Keep configurations reproducible: prefer aqua/mise for new CLI/runtimes over apt unless prerequisites. 4. Mention verification steps (build/test) after changes. 5. Maintain UID/GID mapping and non-root execution. diff --git a/ToolboxStack/output/toolbox-base/README.md b/ToolboxStack/output/toolbox-base/README.md index 467d8f4..ab47cc9 100644 --- a/ToolboxStack/output/toolbox-base/README.md +++ b/ToolboxStack/output/toolbox-base/README.md @@ -36,8 +36,8 @@ The compose service mounts the current repo to `/workspace` (read/write) and run |----------|---------|-------| | **Shells & Prompts** | ๐Ÿš `zsh` โ€ข ๐ŸŸ `fish` โ€ข ๐Ÿง‘โ€๐Ÿ’ป `bash` โ€ข โญ `starship` โ€ข ๐Ÿ’Ž `oh-my-zsh` | Starship prompt enabled for all shells; oh-my-zsh configured with `git` + `fzf` plugins. | | **Runtime & CLI Managers** | ๐Ÿช„ `mise` โ€ข ๐Ÿ’ง `aqua` | `mise` handles language/tool runtimes (activation wired into zsh/bash/fish); `aqua` manages standalone CLIs with config at `~/.config/aquaproj-aqua/aqua.yaml`. | -| **Core CLI Utilities** | ๐Ÿ“ฆ `curl` โ€ข ๐Ÿ“ฅ `wget` โ€ข ๐Ÿ” `ca-certificates` โ€ข ๐Ÿงญ `git` โ€ข ๐Ÿ”ง `build-essential` + headers (`pkg-config`, `libssl-dev`, `zlib1g-dev`, `libffi-dev`, `libsqlite3-dev`, `libreadline-dev`, `make`) โ€ข ๐Ÿ” `ripgrep` โ€ข ๐Ÿงญ `fzf` โ€ข ๐Ÿ“ `fd` โ€ข ๐Ÿ“– `bat` โ€ข ๐Ÿ”— `openssh-client` โ€ข ๐Ÿงต `tmux` โ€ข ๐Ÿ–ฅ๏ธ `screen` โ€ข ๐Ÿ“Š `jq` โ€ข ๐ŸŒ `httpie` โ€ข โ˜• `tea` โ€ข ๐Ÿงฎ `bc` | Provides ergonomic defaults plus toolchain deps for compiling runtimes (no global language installs). | -| **Aqua-Managed CLIs** | ๐Ÿ™ `gh` โ€ข ๐ŸŒ€ `lazygit` โ€ข ๐Ÿช„ `direnv` โ€ข ๐ŸŽจ `git-delta` โ€ข ๐Ÿงญ `zoxide` โ€ข ๐Ÿงฐ `just` โ€ข ๐Ÿงพ `yq` โ€ข โšก `xh` โ€ข ๐ŸŒ `curlie` โ€ข ๐Ÿ  `chezmoi` โ€ข ๐Ÿ› ๏ธ `shfmt` โ€ข โœ… `shellcheck` โ€ข ๐Ÿณ `hadolint` | Extend via `~/.config/aquaproj-aqua/aqua.yaml` and run `aqua install`. Direnv logging is muted and hooks for direnv/zoxide are pre-configured for zsh, bash, and fish. | +| **Core CLI Utilities** | ๐Ÿ“ฆ `curl` โ€ข ๐Ÿ“ฅ `wget` โ€ข ๐Ÿ” `ca-certificates` โ€ข ๐Ÿงญ `git` โ€ข ๐Ÿ”ง `build-essential` + headers (`pkg-config`, `libssl-dev`, `zlib1g-dev`, `libffi-dev`, `libsqlite3-dev`, `libreadline-dev`, `make`) โ€ข ๐Ÿ” `ripgrep` โ€ข ๐Ÿงญ `fzf` โ€ข ๐Ÿ“ `fd` โ€ข ๐Ÿ“– `bat` โ€ข ๐Ÿ”— `openssh-client` โ€ข ๐Ÿงต `tmux` โ€ข ๐Ÿ–ฅ๏ธ `screen` โ€ข ๐Ÿ“ˆ `htop` โ€ข ๐Ÿ“‰ `btop` โ€ข โ™ป๏ธ `entr` โ€ข ๐Ÿ“Š `jq` โ€ข ๐ŸŒ `httpie` โ€ข โ˜• `tea` โ€ข ๐Ÿงฎ `bc` | Provides ergonomic defaults plus toolchain deps for compiling runtimes (no global language installs). | +| **Aqua-Managed CLIs** | ๐Ÿ™ `gh` โ€ข ๐ŸŒ€ `lazygit` โ€ข ๐Ÿช„ `direnv` โ€ข ๐ŸŽจ `git-delta` โ€ข ๐Ÿงญ `zoxide` โ€ข ๐Ÿงฐ `just` โ€ข ๐Ÿงพ `yq` โ€ข โšก `xh` โ€ข ๐ŸŒ `curlie` โ€ข ๐Ÿ  `chezmoi` โ€ข ๐Ÿ› ๏ธ `shfmt` โ€ข โœ… `shellcheck` โ€ข ๐Ÿณ `hadolint` โ€ข ๐Ÿ `uv` โ€ข ๐Ÿ” `watchexec` | Extend via `~/.config/aquaproj-aqua/aqua.yaml` and run `aqua install`. Direnv logging is muted and hooks for direnv/zoxide are pre-configured for zsh, bash, and fish. | | **Container Workflow** | ๐Ÿณ Docker socket mount (`/var/run/docker.sock`) | Enables Docker CLIs inside the container; host Docker daemon required. | | **Runtime Environment** | ๐Ÿ‘ค Non-root user `toolbox` (UID/GID mapped) โ€ข ๐Ÿ—‚๏ธ `/workspace` mount | Maintains host permissions and isolates artifacts under `artifacts/ToolboxStack/toolbox-base`. | diff --git a/ToolboxStack/output/toolbox-base/aqua.yaml b/ToolboxStack/output/toolbox-base/aqua.yaml index 4f5fcd7..4d8da33 100644 --- a/ToolboxStack/output/toolbox-base/aqua.yaml +++ b/ToolboxStack/output/toolbox-base/aqua.yaml @@ -1,7 +1,7 @@ version: 1.0.0 registries: - type: standard - ref: v4.200.0 + ref: v4.431.0 packages: - name: cli/cli@v2.82.1 - name: jesseduffield/lazygit@v0.55.1 @@ -16,3 +16,5 @@ packages: - name: mvdan/sh@v3.12.0 - name: koalaman/shellcheck@v0.11.0 - name: hadolint/hadolint@v2.14.0 + - name: astral-sh/uv@v0.9.5 + - name: watchexec/watchexec@v2.3.2