Skip to content

Commit 9ea9baa

Browse files
authored
Merge pull request #50 from openclaw/chore/modernize-install-sh
chore: modernize install.sh with gum UI, spinners, and CI test matrix
2 parents 476ec4e + 3121ae3 commit 9ea9baa

File tree

6 files changed

+879
-193
lines changed

6 files changed

+879
-193
lines changed
Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
name: Install Matrix
2+
3+
on:
4+
pull_request:
5+
push:
6+
branches: [main]
7+
workflow_dispatch:
8+
inputs:
9+
mode:
10+
description: Matrix mode
11+
required: true
12+
default: dry-run
13+
type: choice
14+
options:
15+
- dry-run
16+
- full
17+
gum:
18+
description: Enable gum UI in matrix runs (may produce control codes in logs)
19+
required: true
20+
default: false
21+
type: boolean
22+
23+
jobs:
24+
linux-install-matrix:
25+
runs-on: ubuntu-latest
26+
strategy:
27+
fail-fast: false
28+
matrix:
29+
image:
30+
- ubuntu:22.04
31+
- ubuntu:24.04
32+
- debian:12
33+
- fedora:40
34+
35+
steps:
36+
- name: Checkout
37+
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v4
38+
39+
- name: Run matrix (push/pr)
40+
if: github.event_name != 'workflow_dispatch'
41+
run: bash scripts/test-install-matrix.sh --mode dry-run --image "${{ matrix.image }}" --no-gum
42+
43+
- name: Run matrix (manual)
44+
if: github.event_name == 'workflow_dispatch'
45+
run: |
46+
if [[ "${{ inputs.gum }}" == "true" ]]; then
47+
GUM_FLAG="--gum"
48+
else
49+
GUM_FLAG="--no-gum"
50+
fi
51+
bash scripts/test-install-matrix.sh --mode "${{ inputs.mode }}" --image "${{ matrix.image }}" "$GUM_FLAG"

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,3 +31,6 @@ yarn-debug.log*
3131
yarn-error.log*
3232
.vercel
3333
.env*.local
34+
35+
# Local files
36+
.local/

CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
# Changelog
22

3+
## 2026-02-10
4+
5+
- Installer: modernize `install.sh` UX with staged progress, quieter command output, optional gum UI controls (`--gum`, `--no-gum`, `OPENCLAW_USE_GUM`, `CLAWDBOT_USE_GUM`), and verified-only temporary gum bootstrap (#50, thanks @sebslight).
6+
- CI: add Linux installer matrix workflow and runner script for dry-run/full validation across distro images (#50, thanks @sebslight).
7+
38
## 2026-01-27
49

510
- Home page: keep testimonial links clickable while skipping keyboard focus (#18, thanks @wilfriedladenhauf).

README.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,11 @@ The landing page hosts installer scripts:
4242
- **macOS/Linux (CLI only, no onboarding)**: `curl -fsSL --proto '=https' --tlsv1.2 https://clawd.bot/install-cli.sh | bash`
4343
- **Windows**: `iwr -useb https://clawd.bot/install.ps1 | iex`
4444

45+
Installer UI controls (macOS/Linux `install.sh`):
46+
- Pass `--gum` to force gum UI when supported, or `--no-gum` to disable gum output.
47+
- Set `OPENCLAW_USE_GUM=auto|1|0` to control gum behavior in automation.
48+
- Compatibility alias: `CLAWDBOT_USE_GUM` (mapped to `OPENCLAW_USE_GUM`).
49+
4550
These scripts:
4651
1. Install Homebrew (macOS) or detect package managers (Windows)
4752
2. Install Node.js 22+ if needed

0 commit comments

Comments
 (0)