2727 with :
2828 components : clippy, rustfmt
2929 - name : Install Linux system dependencies
30- if : runner.os == 'Linux'
30+ if : runner.os == 'Linux' && matrix.target != 'x86_64-unknown-linux-musl'
3131 run : |
3232 for i in 1 2 3 4 5; do
3333 sudo apt-get update && break
@@ -109,7 +109,7 @@ jobs:
109109 include :
110110 # --- codewhale (cli dispatcher, canonical) ---
111111 - os : ubuntu-latest
112- target : x86_64-unknown-linux-gnu
112+ target : x86_64-unknown-linux-musl
113113 binary : codewhale
114114 artifact_name : codewhale-linux-x64
115115 - os : ubuntu-latest
@@ -134,7 +134,7 @@ jobs:
134134 artifact_name : codewhale-windows-x64.exe
135135 # --- codewhale-tui (TUI runtime, canonical) ---
136136 - os : ubuntu-latest
137- target : x86_64-unknown-linux-gnu
137+ target : x86_64-unknown-linux-musl
138138 binary : codewhale-tui
139139 artifact_name : codewhale-tui-linux-x64
140140 - os : ubuntu-latest
@@ -169,14 +169,22 @@ jobs:
169169 with :
170170 cache-bin : false
171171 - name : Install Linux system dependencies
172- if : runner.os == 'Linux'
172+ if : runner.os == 'Linux' && matrix.target != 'x86_64-unknown-linux-musl'
173173 run : |
174174 for i in 1 2 3 4 5; do
175175 sudo apt-get update && break
176176 echo "apt-get update failed (attempt $i); retrying in 15s"
177177 sleep 15
178178 done
179179 sudo apt-get install -y libdbus-1-dev pkg-config
180+ - name : Build static Linux x64 binary (musl)
181+ if : matrix.target == 'x86_64-unknown-linux-musl'
182+ shell : bash
183+ run : |
184+ sudo apt-get update
185+ sudo apt-get install -y musl-tools
186+ rustup target add x86_64-unknown-linux-musl
187+ cargo build --release --locked --target x86_64-unknown-linux-musl
180188 - name : Install RISC-V cross-compilation toolchain
181189 if : matrix.target == 'riscv64gc-unknown-linux-gnu'
182190 run : |
@@ -213,6 +221,7 @@ jobs:
213221 sudo apt-get update -o Dir::Etc::sourcelist=/etc/apt/sources.list.d/arm64.sources -o Dir::Etc::sourceparts=- -o APT::Get::List-Cleanup=0
214222 sudo apt-get install -y gcc-aarch64-linux-gnu libc6-dev-arm64-cross libdbus-1-dev:arm64 pkg-config
215223 - name : Build
224+ if : matrix.target != 'x86_64-unknown-linux-musl'
216225 shell : bash
217226 env :
218227 DEEPSEEK_BUILD_SHA : ${{ needs.resolve.outputs.sha }}
0 commit comments