Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
74 commits
Select commit Hold shift + click to select a range
2eb97ac
feat: migrate tool installation to tool-installer (three-layer archit…
CNCSMonster May 27, 2026
5fbc98c
ci: add full apply tests for all 6 modules + comprehensive verification
CNCSMonster May 27, 2026
50752c8
fix(ci): install manager prerequisites (mise, node, uv) before apply …
CNCSMonster May 27, 2026
598a060
fix: remove build-base dependency from editors module
CNCSMonster May 27, 2026
480f6da
fix: helix bin path, remove cross-module depends, fix mise PATH in CI
CNCSMonster May 27, 2026
684d10c
fix: support {version} placeholder in bin field for github-release
CNCSMonster May 27, 2026
7f35154
fix(ci): combine install and verify for languages, activate mise in s…
CNCSMonster May 27, 2026
c120182
fix(ci): pre-install npm LSP servers, fix mise shims PATH for languages
CNCSMonster May 27, 2026
b075671
fix: remove stale zellij sha256, fix marksman asset name (x64 not x86…
CNCSMonster May 27, 2026
60d337c
fix: marksman bin path must match asset name for single-file binary
CNCSMonster May 27, 2026
d747d41
fix(ci): pre-install npm LSP servers in full-install job
CNCSMonster May 27, 2026
ec8fe9f
feat: enable binstall_first for all 29 cargo-install tools
CNCSMonster May 28, 2026
d6fa4f2
fix: update vendor tool-installer to support binstall_first
CNCSMonster May 28, 2026
c777b3e
fix: update vendor tool-installer with binstall timeout fix
CNCSMonster May 28, 2026
667b419
fix: update vendor with 30s binstall timeout
CNCSMonster May 28, 2026
f53220c
revert: remove binstall_first from cargo-install manifest entries
CNCSMonster May 28, 2026
9f883cc
ci: add rust-cache to speed up cargo build times
CNCSMonster May 28, 2026
ea86343
feat: re-enable binstall_first for cargo-install tools
CNCSMonster May 30, 2026
5e2f355
fix: update vendor with binstall_first token inheritance
CNCSMonster May 30, 2026
65e1579
feat: use vendor rustup-init.sh for build-base installation
CNCSMonster May 31, 2026
c8d8fa3
fix(install): reorder cargo-binstall before cargo-tools, starship via…
CNCSMonster May 31, 2026
44ab4b7
fix(install): review fixes - dead code, CI verify, shell cleanup
CNCSMonster Jun 1, 2026
b5196c8
fix(vendor): support v-prefixed GitHub release tags for pinned versions
CNCSMonster Jun 1, 2026
38e4de6
fix(vendor): repack tool-installer preserving shebang line
CNCSMonster Jun 1, 2026
60ddef7
fix(setup-new.sh): make one-command setup work end-to-end
CNCSMonster Jun 3, 2026
0665c74
fix(ci): macOS vendor binary check + pyright allow_fail
CNCSMonster Jun 4, 2026
095709d
fix(setup-new.sh): macOS xdotter fallback + deploy guard
CNCSMonster Jun 4, 2026
0a67638
fix(manifest): add rustup-install macos strategy
CNCSMonster Jun 4, 2026
ea3b3ce
fix(ci): add rust macos strategy + limit CI to ubuntu
CNCSMonster Jun 4, 2026
137c1d6
refactor(vendor): remove cargo-binstall binary, update tool-installer
CNCSMonster Jun 6, 2026
a2fcda5
fix(vendor): update tool-installer to upstream 15d5bb3
CNCSMonster Jun 6, 2026
e1e8cf3
fix(manifest): mark tree-sitter-cli as allow_fail
CNCSMonster Jun 6, 2026
5108b38
fix: mark tree-sitter-cli as allow_fail in tools.toml
CNCSMonster Jun 6, 2026
999d976
feat(cargo-tools): enable binstall retry and fallback for tree-sitter…
CNCSMonster Jun 6, 2026
162b8e0
fix(cargo-tools): enable binstall retry/fallback for tree-sitter-grep…
CNCSMonster Jun 6, 2026
987edc2
fix(lsp): mark typescript-lsp as allow_fail
CNCSMonster Jun 6, 2026
d6267d3
fix(cargo-tools): mark tree-sitter-grep and tree-sitter-show-ast as a…
CNCSMonster Jun 6, 2026
3065482
fix(lsp): mark yaml-lsp and bash-lsp as allow_fail
CNCSMonster Jun 6, 2026
59c2507
fix(bootstrap,verify): add base tools + fix mise hook-env
CNCSMonster Jun 6, 2026
1435616
fix(env): use mise hook-env instead of activate for non-interactive
CNCSMonster Jun 6, 2026
2a2e1d3
fix(rustup): use official source in CI to avoid rsproxy timeout
CNCSMonster Jun 6, 2026
536df2b
fix(tool-installer): mise check respects installed field
CNCSMonster Jun 6, 2026
6096d39
ci: rename runner-verify to E2E Full Install for clarity
CNCSMonster Jun 6, 2026
18bf9f1
feat(bootstrap,post): add WezTerm and LLVM/clangd installation
CNCSMonster Jun 6, 2026
f589ad0
vendor(tool-installer): add cargo-install retry + mise installed check
CNCSMonster Jun 6, 2026
95442e2
security(manifest): add SHA256 for all GitHub Release tools
CNCSMonster Jun 6, 2026
7d93b6d
security(manifest): add aarch64 SHA256 for all GitHub Release tools
CNCSMonster Jun 7, 2026
189d706
feat(macos): add .macos strategies for all tools + CI runner
CNCSMonster Jun 7, 2026
ba2ad76
fix(manifest): add v? prefix to yq version_probe regex
CNCSMonster Jun 7, 2026
bd265d8
ci(debug): patch tool-installer to print actual SHA256 on mismatch
CNCSMonster Jun 7, 2026
6764851
fix(tools): bump starship/zellij/yq to latest to match manifest SHA256s
CNCSMonster Jun 7, 2026
0795ebe
ci(debug): warn-only checksum + fix zellij linux x86_64 hash
CNCSMonster Jun 7, 2026
7013865
revert: remove debug checksum patch from tool-installer
CNCSMonster Jun 7, 2026
b34fa61
refactor: move language runtime install to mise script job
CNCSMonster Jun 7, 2026
05e6c4e
ci(debug): warn-only checksum to collect macOS mismatches
CNCSMonster Jun 7, 2026
3d4a669
fix(manifest): correct zls and lua-lsp macOS aarch64 SHA256s
CNCSMonster Jun 7, 2026
db70356
fix(tools): rename mise-install module to languages for CI workflow c…
CNCSMonster Jun 7, 2026
b269bbd
fix(setup): restore interactive sudo for non-NOPASSWD users
CNCSMonster Jun 8, 2026
5a39568
refactor: merge layer0-bootstrap.sh into setup-new.sh
CNCSMonster Jun 8, 2026
7d0e928
fix(setup): use install -m 755 instead of cp + chmod for vendor binaries
CNCSMonster Jun 8, 2026
682a5ee
feat(setup): move system packages and WezTerm to tool-installer
CNCSMonster Jun 8, 2026
e9ae628
feat(setup): move fonts to tool-installer (fonts module)
CNCSMonster Jun 8, 2026
e297bf1
fix(scripts): remove 'local' keyword from top-level shell code
CNCSMonster Jun 8, 2026
2d01eb0
fix(manifest): correct zls version_probe regex
CNCSMonster Jun 8, 2026
aca1be9
ci: add re-install job to verify idempotency
CNCSMonster Jun 8, 2026
f66e9f5
feat(tool-installer): SHA256 mismatch triggers fallback to next mirror
CNCSMonster Jun 8, 2026
69e5d8a
fix: harden Layer 2 scripts and update tool-installer binary
CNCSMonster Jun 9, 2026
bb1a1e7
fix(scripts): 修复字体/lua-lsp/Yazi插件安装问题
CNCSMonster Jun 10, 2026
9774eff
fix(setup-new): robust _ensure_tool_installer with multi-level fallback
CNCSMonster Jun 10, 2026
2e63d4e
fix(shell): split mise config into env.sh (hook-env) + inter.sh (acti…
CNCSMonster Jun 11, 2026
7ce88a5
fix(ci): allow mise --version to fail in cargo-tools verify step
CNCSMonster Jun 12, 2026
e4db423
fix(ci): clean stale cargo metadata before cargo-binstall, remove fal…
CNCSMonster Jun 13, 2026
4fd3566
ci: add macOS matrix to full-install and re-install jobs
CNCSMonster Jun 13, 2026
21e3099
fix(brew): add --yes to brew install in setup scripts
CNCSMonster Jun 14, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 20 additions & 10 deletions .github/workflows/runner-verify.yml
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
name: Setup Verification (Runner Direct)
name: E2E Full Install

# 直接在 GitHub runner 上运行 setup.sh,无需 Docker 构建
# 目的:快速验证 setup.sh 在干净 Ubuntu 环境中能正常执行
# 端到端完整安装测试:在干净 GitHub runner 上一键运行 setup-new.sh
# 覆盖 Layer 0 (bootstrap) + Layer 1 (deploy + install) + Layer 2 (post)
# 并验证所有关键工具是否正确安装
#
# 对比 Docker 构建方式:
# - Docker 构建平均耗时:~32 分钟(成功)/ ~6 分钟(失败)
# - Runner 直接运行预计:~15-20 分钟(跳过镜像构建,runner 已有基础工具)
# - Runner 直接运行预计:~10-15 分钟(跳过镜像构建,runner 已有基础工具)

on:
push:
Expand All @@ -24,7 +25,7 @@ jobs:
matrix:
os: [ubuntu-latest, macos-latest]
fail-fast: false
name: Verify setup.sh on ${{ matrix.os }}
name: E2E full install on ${{ matrix.os }}
runs-on: ${{ matrix.os }}
timeout-minutes: ${{ matrix.os == 'macos-latest' && 120 || 60 }}
permissions:
Expand All @@ -46,14 +47,17 @@ jobs:
- name: Checkout
uses: actions/checkout@v6

- name: Run setup.sh
- name: Disable GitHub mirrors for CI
run: perl -pi -e 's/^github_mirrors/#github_mirrors/' manifest.toml

- name: Run full install (setup-new.sh)
run: |
chmod +x ./setup.sh
./setup.sh
chmod +x ./setup-new.sh
./setup-new.sh

- name: Verify installation
- name: Verify all installed tools
run: |
# 加载 dotfiles 环境变量(setup.sh 已部署符号链接)
# 加载 dotfiles 环境变量(setup-new.sh 已部署符号链接)
export PATH="$HOME/.cargo/bin:$HOME/.local/bin:$PATH"

if [ -f "./scripts/verify-docker-build.sh" ]; then
Expand All @@ -70,3 +74,9 @@ jobs:
fi
done
fi

- name: Verify mise [env] in interactive shell
run: |
export PATH="$HOME/.cargo/bin:$HOME/.local/bin:$PATH"
# 模拟新登录交互式 shell,验证 [env] 变量是否被正确注入
zsh -lic 'echo "STEP_API_KEY=${STEP_API_KEY:-(未设置)}"'
Loading
Loading