| 111 | 111 | | - uses: actions/upload-artifact@v4 |
| 112 | 112 | | with: |
| 113 | 113 | | name: desktop-linux |
| 114 | + | overwrite: true |
| 114 | 115 | | path: target/desktop-release/${{ needs.version.outputs.version }}/ |
| 115 | 116 | | |
| 116 | 117 | | windows: |
| ⋯ |
| 148 | 149 | | - uses: actions/upload-artifact@v4 |
| 149 | 150 | | with: |
| 150 | 151 | | name: desktop-windows |
| 152 | + | overwrite: true |
| 151 | 153 | | path: target/desktop-release/${{ needs.version.outputs.version }}/ |
| 152 | 154 | | |
| 153 | 155 | | windows_cross: |
| ⋯ |
| 167 | 169 | | run: | |
| 168 | 170 | | ok=0 |
| 169 | 171 | | for try in 1 2 3; do |
| 170 | | − | if sudo apt-get update && sudo apt-get install -y build-essential curl wget file libssl-dev nsis lld llvm; then ok=1; break; fi |
| 172 | + | if sudo apt-get update && sudo apt-get install -y build-essential curl wget file libssl-dev nsis clang lld llvm; then ok=1; break; fi |
| 171 | 173 | | sudo apt-get clean; sleep 15 |
| 172 | 174 | | done |
| 173 | 175 | | [ "$ok" = 1 ] |
| 176 | + | # cargo-xwin compiles C (ring's, among others) with clang-cl and |
| 177 | + | # links with lld-link and llvm-lib, which Debian installs under |
| 178 | + | # versioned names only (clang-cl-19 in /usr/lib/llvm-19/bin). |
| 179 | + | for tool in clang-cl lld-link llvm-lib; do |
| 180 | + | command -v "$tool" >/dev/null && continue |
| 181 | + | found="$(ls /usr/lib/llvm-*/bin/"$tool" 2>/dev/null | sort -V | tail -1)" |
| 182 | + | [ -n "$found" ] || { echo "::error::$tool is not installed"; exit 1; } |
| 183 | + | sudo ln -sf "$found" "/usr/local/bin/$tool" |
| 184 | + | done |
| 174 | 185 | | cargo install --locked cargo-xwin |
| 175 | 186 | | - uses: actions/cache@v4 |
| 176 | 187 | | with: |
| ⋯ |
| 199 | 210 | | - uses: actions/upload-artifact@v4 |
| 200 | 211 | | with: |
| 201 | 212 | | name: desktop-windows |
| 213 | + | overwrite: true |
| 202 | 214 | | path: target/desktop-release/${{ needs.version.outputs.version }}/ |
| 203 | 215 | | |
| 204 | 216 | | macos: |
| ⋯ |
| 230 | 242 | | - uses: actions/upload-artifact@v4 |
| 231 | 243 | | with: |
| 232 | 244 | | name: desktop-macos |
| 245 | + | overwrite: true |
| 233 | 246 | | path: target/desktop-release/${{ needs.version.outputs.version }}/ |
| 234 | 247 | | |
| 235 | 248 | | publish: |