From cc1a4cf96c612c56bef8d901e1b478394724b33d Mon Sep 17 00:00:00 2001 From: Nils Pukropp Date: Mon, 3 Aug 2026 10:15:20 +0200 Subject: [PATCH] fixed ci --- .github/workflows/ci.yml | 8 ++++---- .github/workflows/release.yml | 25 +++++++++++++------------ scripts/build-windows.sh | 5 ++++- 3 files changed, 21 insertions(+), 17 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d64bbed..732858c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -13,7 +13,7 @@ jobs: name: Gate (Linux) runs-on: ubuntu-24.04 steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - uses: dtolnay/rust-toolchain@stable with: @@ -21,7 +21,7 @@ jobs: toolchain: "1.96" components: rustfmt, clippy - - uses: Swatinem/rust-cache@v2 + - uses: Swatinem/rust-cache@v2.9.1 # libmpv for pstr-player. - name: Install libmpv @@ -44,7 +44,7 @@ jobs: name: Gate (Windows cross) runs-on: ubuntu-24.04 steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - uses: dtolnay/rust-toolchain@stable with: @@ -52,7 +52,7 @@ jobs: components: clippy targets: x86_64-pc-windows-gnu - - uses: Swatinem/rust-cache@v2 + - uses: Swatinem/rust-cache@v2.9.1 - name: Install the cross toolchain run: | diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index db68f99..c94f3a6 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -26,7 +26,7 @@ jobs: name: Tag and versions runs-on: ubuntu-24.04 steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 with: fetch-depth: 0 @@ -62,7 +62,7 @@ jobs: needs: verify runs-on: ubuntu-24.04 steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - uses: dtolnay/rust-toolchain@stable with: @@ -70,7 +70,7 @@ jobs: toolchain: "1.96" components: rustfmt, clippy - - uses: Swatinem/rust-cache@v2 + - uses: Swatinem/rust-cache@v2.9.1 # rpm for rpmbuild; the .deb goes through dpkg-deb, which is preinstalled. - name: Install build dependencies @@ -87,7 +87,7 @@ jobs: - name: Build tarball, .deb and .rpm run: scripts/build.sh tarball deb rpm - - uses: actions/upload-artifact@v4 + - uses: actions/upload-artifact@v7 with: name: linux path: | @@ -105,28 +105,29 @@ jobs: needs: verify runs-on: ubuntu-24.04 steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - uses: dtolnay/rust-toolchain@stable with: toolchain: "1.96" targets: x86_64-pc-windows-gnu - - uses: Swatinem/rust-cache@v2 + - uses: Swatinem/rust-cache@v2.9.1 - # mingw-w64 for the cross compile, msitools for wixl, p7zip for the - # mpv-dev archive. + # mingw-w64 for the cross compile, wixl for the .msi — Debian and Ubuntu + # ship it apart from `msitools`, which has only the msi* tools — and + # p7zip for the mpv-dev archive. - name: Install the cross toolchain run: | sudo apt-get update - sudo apt-get install -y mingw-w64 msitools zip p7zip-full + sudo apt-get install -y mingw-w64 wixl zip p7zip-full - name: Build the portable .zip and the .msi env: GITHUB_TOKEN: ${{ github.token }} run: scripts/build-windows.sh --fetch-mpv - - uses: actions/upload-artifact@v4 + - uses: actions/upload-artifact@v7 with: name: windows path: | @@ -142,7 +143,7 @@ jobs: permissions: contents: write steps: - - uses: actions/download-artifact@v4 + - uses: actions/download-artifact@v8 with: path: artifacts merge-multiple: true @@ -153,7 +154,7 @@ jobs: sha256sum * > SHA256SUMS cat SHA256SUMS - - uses: softprops/action-gh-release@v2 + - uses: softprops/action-gh-release@v3 with: files: artifacts/* generate_release_notes: true diff --git a/scripts/build-windows.sh b/scripts/build-windows.sh index a683e1e..8fb958d 100755 --- a/scripts/build-windows.sh +++ b/scripts/build-windows.sh @@ -29,6 +29,7 @@ # # Prerequisites (Arch names; every distro has them): # mingw-w64-gcc msitools zip pacman -S mingw-w64-gcc msitools zip +# Debian/Ubuntu split wixl out of msitools: apt install mingw-w64 wixl zip # rustup target add x86_64-pc-windows-gnu # osslsigncode only for --sign @@ -265,7 +266,9 @@ make_zip() { # --------------------------------------------------------------------- msi --- make_msi() { - have wixl || die 'the .msi needs wixl (pacman -S msitools / apt install msitools)' + # Debian and Ubuntu ship wixl in its own binary package; their `msitools` + # package has the msi* tools and not this one. Arch puts both in msitools. + have wixl || die 'the .msi needs wixl (pacman -S msitools / apt install wixl)' local out="$DIST/${PKGNAME}-${VERSION}-x64.msi" log "msi -> $(basename "$out")"