detached 8f0bec4

fix(ci): run checks in an Arch container without sudo

commit
8f0bec442716854cb51256fe0762de1e13b5cf0f
author
brice · · 2026-10-13 20:03 UTC
parent
6ec2cf9
signature
GPG VerifiedCD88F9E564E0102646FB6077A1A07C7C7C3E349D · arch-gpg Verified for the committer email
1 file · +17 -8
M .github/workflows/ci.yml +17 -8
@@ -7,20 +7,28 @@ on:
77 jobs:
88 test:
99 runs-on: ubuntu-latest
10+ container:
11+ image: archlinux:latest
12+ options: --init
1013 steps:
14+ - run: pacman -Syu --noconfirm --needed git go make gcc wayland
1115 - uses: actions/checkout@v4
12- - uses: actions/setup-go@v5
13- with:
14- go-version: '1.27'
15- - run: sudo apt-get update && sudo apt-get install -y --no-install-recommends libwayland-server0
16+ - run: |
17+ git config --global --add safe.directory "$GITHUB_WORKSPACE"
18+ go version
19+ test "$(go env GOVERSION | cut -d. -f1-2)" = go1.27
1620 - run: make check
1721 - run: make race
1822
1923 bindings:
2024 runs-on: ubuntu-latest
25+ container:
26+ image: archlinux:latest
27+ options: --init
2128 permissions:
2229 contents: read
2330 steps:
31+ - run: pacman -Syu --noconfirm --needed git go gcc wayland
2432 - uses: actions/checkout@v4
2533 with:
2634 path: purego-libwayland
@@ -31,10 +39,11 @@ jobs:
3139 ref: main
3240 path: bindings
3341 persist-credentials: false
34- - uses: actions/setup-go@v5
35- with:
36- go-version-file: bindings/go.mod
37- - run: sudo apt-get update && sudo apt-get install -y --no-install-recommends libwayland-server0
42+ - run: |
43+ git config --global --add safe.directory "$GITHUB_WORKSPACE/purego-libwayland"
44+ git config --global --add safe.directory "$GITHUB_WORKSPACE/bindings"
45+ go version
46+ test "$(go env GOVERSION | cut -d. -f1-2)" = go1.27
3847 - name: Build and test go-wayland-bindings against this checkout
3948 working-directory: bindings
4049 run: |
@@ -7,20 +7,28 @@ on:
7 jobs:7 jobs:
8 test:8 test:
9 runs-on: ubuntu-latest9 runs-on: ubuntu-latest
10+ container:
11+ image: archlinux:latest
12+ options: --init
10 steps:13 steps:
14+ - run: pacman -Syu --noconfirm --needed git go make gcc wayland
11 - uses: actions/checkout@v415 - uses: actions/checkout@v4
12- - uses: actions/setup-go@v516+ - run: |
13- with:17+ git config --global --add safe.directory "$GITHUB_WORKSPACE"
14- go-version: '1.27'18+ go version
15- - run: sudo apt-get update && sudo apt-get install -y --no-install-recommends libwayland-server019+ test "$(go env GOVERSION | cut -d. -f1-2)" = go1.27
16 - run: make check20 - run: make check
17 - run: make race21 - run: make race
18 22
19 bindings:23 bindings:
20 runs-on: ubuntu-latest24 runs-on: ubuntu-latest
25+ container:
26+ image: archlinux:latest
27+ options: --init
21 permissions:28 permissions:
22 contents: read29 contents: read
23 steps:30 steps:
31+ - run: pacman -Syu --noconfirm --needed git go gcc wayland
24 - uses: actions/checkout@v432 - uses: actions/checkout@v4
25 with:33 with:
26 path: purego-libwayland34 path: purego-libwayland
@@ -31,10 +39,11 @@ jobs:
31 ref: main39 ref: main
32 path: bindings40 path: bindings
33 persist-credentials: false41 persist-credentials: false
34- - uses: actions/setup-go@v542+ - run: |
35- with:43+ git config --global --add safe.directory "$GITHUB_WORKSPACE/purego-libwayland"
36- go-version-file: bindings/go.mod44+ git config --global --add safe.directory "$GITHUB_WORKSPACE/bindings"
37- - run: sudo apt-get update && sudo apt-get install -y --no-install-recommends libwayland-server045+ go version
46+ test "$(go env GOVERSION | cut -d. -f1-2)" = go1.27
38 - name: Build and test go-wayland-bindings against this checkout47 - name: Build and test go-wayland-bindings against this checkout
39 working-directory: bindings48 working-directory: bindings
40 run: |49 run: |

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 1

Tags 14

↑↓ moveenter openesc close