CI: invoke Chez via a scheme wrapper, not a symlink
Chez derives its boot-file name from argv0, so a symlink named chez looks for a nonexistent chez.boot (CI failed at the first gate step). Replace the symlink with a wrapper that exec's scheme, preserving argv0 so the boot files resolve.
This commit is contained in:
parent
39efb29134
commit
dd0e0b55cc
1 changed files with 5 additions and 2 deletions
7
.github/workflows/tests.yml
vendored
7
.github/workflows/tests.yml
vendored
|
|
@ -18,9 +18,12 @@ jobs:
|
|||
run: |
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y chezscheme
|
||||
# the gate invokes `chez`; Debian/Ubuntu installs it as `scheme`
|
||||
# the gate invokes `chez`; Debian/Ubuntu installs it as `scheme`. A symlink
|
||||
# won't do — Chez derives its boot-file name from argv0, so `chez` would look
|
||||
# for a nonexistent chez.boot. A wrapper that exec's `scheme` keeps argv0.
|
||||
if ! command -v chez >/dev/null 2>&1; then
|
||||
sudo ln -s "$(command -v scheme)" /usr/local/bin/chez
|
||||
printf '#!/bin/sh\nexec scheme "$@"\n' | sudo tee /usr/local/bin/chez >/dev/null
|
||||
sudo chmod +x /usr/local/bin/chez
|
||||
fi
|
||||
chez --version || true
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue