detached fac9303

ci: run every check in an Arch container

commit
fac9303b8824e930ec412535224babb2ecff9f4a
author
brice · · 2026-09-26 16:30 UTC
parent
214ff0f
signature
GPG VerifiedCD88F9E564E0102646FB6077A1A07C7C7C3E349D · arch-gpg Verified for the committer email
1 file · +15 -19
M .github/workflows/ci.yml +15 -19
@@ -7,30 +7,26 @@ concurrency:
77 group: ci-${{ github.ref }}
88 cancel-in-progress: true
99 jobs:
10+ # Arch matches the development system: libwayland, glslc and Go versions
11+ # change protocol behavior and SPIR-V bytes.
1012 check:
1113 runs-on: ubuntu-latest
14+ container: archlinux:latest
1215 steps:
13- - uses: actions/checkout@v4
14- - uses: actions/setup-go@v5
15- with:
16- go-version: '1.27'
17- # Libraries loaded at runtime through purego; lavapipe gives tests a Vulkan device.
16+ # Libraries loaded at runtime through purego; vulkan-swrast (lavapipe)
17+ # gives tests a Vulkan device; gcc is for the race detector.
1818 - run: >-
19- sudo apt-get update && sudo apt-get install -y
20- libwayland-server0 libxkbcommon0 libinput10 libseat1 libvulkan1 mesa-vulkan-drivers
21- - run: go install github.com/bnema/hexcheck/cmd/hexcheck@v0.2.0
22- - run: go install github.com/vektra/mockery/v3@v3.8.0
23- - run: go install honnef.co/go/tools/cmd/staticcheck@latest
19+ pacman -Syu --noconfirm --needed
20+ git go make gcc shaderc wayland libxkbcommon libinput seatd
21+ vulkan-icd-loader vulkan-swrast
22+ - uses: actions/checkout@v4
23+ - run: git config --global --add safe.directory "$GITHUB_WORKSPACE"
24+ - run: |
25+ go install github.com/bnema/hexcheck/cmd/hexcheck@v0.2.0
26+ go install github.com/vektra/mockery/v3@v3.8.0
27+ go install honnef.co/go/tools/cmd/staticcheck@latest
2428 - run: make check
2529 - run: make race
2630 - run: make mocks-check
27- - run: staticcheck ./...
28- # SPIR-V bytes depend on the glslc version: build with Arch's shaderc, as developers do.
29- shaders:
30- runs-on: ubuntu-latest
31- container: archlinux:latest
32- steps:
33- - run: pacman -Syu --noconfirm git go make shaderc
34- - uses: actions/checkout@v4
35- - run: git config --global --add safe.directory "$GITHUB_WORKSPACE"
3631 - run: make spv-check
32+ - run: ~/go/bin/staticcheck ./...
@@ -7,30 +7,26 @@ concurrency:
7 group: ci-${{ github.ref }}7 group: ci-${{ github.ref }}
8 cancel-in-progress: true8 cancel-in-progress: true
9 jobs:9 jobs:
10+ # Arch matches the development system: libwayland, glslc and Go versions
11+ # change protocol behavior and SPIR-V bytes.
10 check:12 check:
11 runs-on: ubuntu-latest13 runs-on: ubuntu-latest
14+ container: archlinux:latest
12 steps:15 steps:
13- - uses: actions/checkout@v416+ # Libraries loaded at runtime through purego; vulkan-swrast (lavapipe)
14- - uses: actions/setup-go@v517+ # gives tests a Vulkan device; gcc is for the race detector.
15- with:
16- go-version: '1.27'
17- # Libraries loaded at runtime through purego; lavapipe gives tests a Vulkan device.
18 - run: >-18 - run: >-
19- sudo apt-get update && sudo apt-get install -y19+ pacman -Syu --noconfirm --needed
20- libwayland-server0 libxkbcommon0 libinput10 libseat1 libvulkan1 mesa-vulkan-drivers20+ git go make gcc shaderc wayland libxkbcommon libinput seatd
21- - run: go install github.com/bnema/hexcheck/cmd/hexcheck@v0.2.021+ vulkan-icd-loader vulkan-swrast
22- - run: go install github.com/vektra/mockery/v3@v3.8.022+ - uses: actions/checkout@v4
23- - run: go install honnef.co/go/tools/cmd/staticcheck@latest23+ - run: git config --global --add safe.directory "$GITHUB_WORKSPACE"
24+ - run: |
25+ go install github.com/bnema/hexcheck/cmd/hexcheck@v0.2.0
26+ go install github.com/vektra/mockery/v3@v3.8.0
27+ go install honnef.co/go/tools/cmd/staticcheck@latest
24 - run: make check28 - run: make check
25 - run: make race29 - run: make race
26 - run: make mocks-check30 - run: make mocks-check
27- - run: staticcheck ./...
28- # SPIR-V bytes depend on the glslc version: build with Arch's shaderc, as developers do.
29- shaders:
30- runs-on: ubuntu-latest
31- container: archlinux:latest
32- steps:
33- - run: pacman -Syu --noconfirm git go make shaderc
34- - uses: actions/checkout@v4
35- - run: git config --global --add safe.directory "$GITHUB_WORKSPACE"
36 - run: make spv-check31 - run: make spv-check
32+ - run: ~/go/bin/staticcheck ./...

Keyboard shortcuts

Single-key shortcuts are on. ctrl k and esc work whatever this says.

ctrl k :
go to a section, branch, tag, file or repository
?
this list
j k
move the row cursor down / up
enter
open the row under the cursor; on Files, a directory opens or closes in place
↑ ↓ ← → home end
in the file tree (focus on a row): previous / next row, close / open a directory or go to its parent / first entry, first / last row. They never open a file
l h
on Files: open a directory or a file / close a directory or go up to its parent, then to the parent page. Elsewhere: into the side panel (on a merge request, its files) / back to the content; there j k move between its controls
g g G
first / last row
/
filter the list; on Files, find a file anywhere in the repository (esc clears, enter opens the best match)
b
switch branch or tag
g s g f g c g b g m g i g r g a
tabs: summary, files, commits, branches & tags, merge requests, issues, releases, actions (when available)
g h
home
w
wide mode: use the whole width of the screen, or not (remembered)
y
copy a permalink pinned to the commit
d u x
diff: split / unified / collapse or expand all
e E
diff: the whole file in view / every file, with the lines the hunks hide
n
merge request: next note in the diff
esc
close a dialog, leave a field

Branches 23

Tags 10

↑↓ moveenter openesc close