v0.22.4 #117
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CD | |
| on: | |
| workflow_dispatch: | |
| types: [created] | |
| release: | |
| types: [created] | |
| defaults: | |
| run: | |
| shell: bash | |
| jobs: | |
| build_linux_wayland_x86_64: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| submodules: true | |
| - uses: actions/setup-go@v5 | |
| with: | |
| go-version: '1.25.0' | |
| - run: echo "VERSION=$(echo ${{ github.event.release.tag_name }} | cut -c 2-)" >> $GITHUB_ENV | |
| - run: sudo apt-get update -q | |
| - run: sudo apt-get install libopenal-dev xorg-dev libgl1-mesa-dev libwayland-dev libxkbcommon-dev -y --allow-unauthenticated | |
| - run: go build -tags wayland -v | |
| - run: OS=Linux ARCH=x86_64 DISPDRIVER=wayland VERSION=$VERSION make tar | |
| - run: OS=Linux ARCH=x86_64 DISPDRIVER=wayland VERSION=$VERSION make deb | |
| - run: sha256sum Ludo-Linux-wayland-x86_64-${VERSION}.tar.gz > Ludo-Linux-wayland-x86_64-${VERSION}.tar.gz.sha256 | |
| - name: Upload Release Asset | |
| uses: alexellis/upload-assets@0.2.2 | |
| env: | |
| GITHUB_TOKEN: ${{ github.token }} | |
| with: | |
| asset_paths: '["./Ludo-*.tar.gz*", "./*.deb"]' | |
| build_linux_wayland_armhf: | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| submodules: true | |
| - uses: actions/setup-go@v5 | |
| with: | |
| go-version: '1.25.0' | |
| - run: echo "VERSION=$(echo ${{ github.event.release.tag_name }} | cut -c 2-)" >> $GITHUB_ENV | |
| - run: sudo apt update -q | |
| - run: sudo apt install binutils-multiarch | |
| - run: sudo dpkg --add-architecture armhf | |
| - run: sudo rm -rf /etc/apt/sources.list.d/*s | |
| - run: echo "" | sudo tee /etc/apt/sources.list | |
| - run: echo "deb [arch=armhf] http://ports.ubuntu.com/ubuntu-ports noble main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list | |
| - run: echo "deb [arch=armhf] http://ports.ubuntu.com/ubuntu-ports noble-updates main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list | |
| - run: echo "deb [arch=armhf] http://ports.ubuntu.com/ubuntu-ports noble-backports main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list | |
| - run: echo "deb [arch=armhf] http://ports.ubuntu.com/ubuntu-ports noble-security main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list | |
| - run: echo "deb [arch=amd64] http://us.archive.ubuntu.com/ubuntu/ noble main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list | |
| - run: echo "deb [arch=amd64] http://us.archive.ubuntu.com/ubuntu/ noble-updates main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list | |
| - run: echo "deb [arch=amd64] http://us.archive.ubuntu.com/ubuntu/ noble-backports main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list | |
| - run: echo "deb [arch=amd64] http://us.archive.ubuntu.com/ubuntu/ noble-security main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list | |
| - run: sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 6B05F25D762E3157 | |
| - run: sudo apt update -q | |
| - run: sudo apt install -f libc6-dev:armhf gcc-arm-linux-gnueabihf libopenal-dev:armhf libgl1-mesa-dev:armhf libxcursor-dev:armhf libxrandr-dev:armhf libxinerama-dev:armhf libxi-dev:armhf libwayland-dev:armhf libxkbcommon-dev:armhf -y --allow-unauthenticated | |
| - run: PKG_CONFIG_PATH=/usr/lib/arm-linux-gnueabihf/pkgconfig/ GOOS=linux GOARCH=arm GOARM=7 CGO_ENABLED=1 CC=arm-linux-gnueabihf-gcc go build -tags wayland -v | |
| - run: OS=Linux ARCH=arm DISPDRIVER=wayland VERSION=$VERSION make tar | |
| - run: OS=Linux ARCH=arm DISPDRIVER=wayland VERSION=$VERSION make deb | |
| - run: sha256sum Ludo-Linux-wayland-arm-${VERSION}.tar.gz > Ludo-Linux-wayland-arm-${VERSION}.tar.gz.sha256 | |
| - name: Upload Release Asset | |
| uses: alexellis/upload-assets@0.2.2 | |
| env: | |
| GITHUB_TOKEN: ${{ github.token }} | |
| with: | |
| asset_paths: '["./Ludo-*.tar.gz*", "./*.deb"]' | |
| build_linux_wayland_arm64: | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| submodules: true | |
| - uses: actions/setup-go@v5 | |
| with: | |
| go-version: '1.25.0' | |
| - run: echo "VERSION=$(echo ${{ github.event.release.tag_name }} | cut -c 2-)" >> $GITHUB_ENV | |
| - run: sudo apt update -q | |
| - run: sudo apt install binutils-multiarch | |
| - run: sudo dpkg --add-architecture arm64 | |
| - run: sudo rm -rf /etc/apt/sources.list.d/* | |
| - run: echo "" | sudo tee /etc/apt/sources.list | |
| - run: echo "deb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports noble main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list | |
| - run: echo "deb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports noble-updates main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list | |
| - run: echo "deb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports noble-backports main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list | |
| - run: echo "deb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports noble-security main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list | |
| - run: echo "deb [arch=amd64] http://us.archive.ubuntu.com/ubuntu/ noble main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list | |
| - run: echo "deb [arch=amd64] http://us.archive.ubuntu.com/ubuntu/ noble-updates main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list | |
| - run: echo "deb [arch=amd64] http://us.archive.ubuntu.com/ubuntu/ noble-backports main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list | |
| - run: echo "deb [arch=amd64] http://us.archive.ubuntu.com/ubuntu/ noble-security main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list | |
| - run: sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 6B05F25D762E3157 | |
| - run: sudo apt update -q | |
| - run: sudo apt install -f libc6-dev:arm64 gcc-aarch64-linux-gnu libopenal-dev:arm64 libgl1-mesa-dev:arm64 libxcursor-dev:arm64 libxrandr-dev:arm64 libxinerama-dev:arm64 libxi-dev:arm64 libwayland-dev:arm64 libxkbcommon-dev:arm64 -y --allow-unauthenticated | |
| - run: PKG_CONFIG_PATH=/usr/lib/aarch64-linux-gnu/pkgconfig/ GOOS=linux GOARCH=arm64 CGO_ENABLED=1 CC=aarch64-linux-gnu-gcc OS=Linux ARCH=arm64 DISPDRIVER=wayland VERSION=$VERSION make tar | |
| - run: PKG_CONFIG_PATH=/usr/lib/aarch64-linux-gnu/pkgconfig/ GOOS=linux GOARCH=arm64 CGO_ENABLED=1 CC=aarch64-linux-gnu-gcc OS=Linux ARCH=arm64 DISPDRIVER=wayland VERSION=$VERSION make deb | |
| - run: sha256sum Ludo-Linux-wayland-arm64-${VERSION}.tar.gz > Ludo-Linux-wayland-arm64-${VERSION}.tar.gz.sha256 | |
| - name: Upload Release Asset | |
| uses: alexellis/upload-assets@0.2.2 | |
| env: | |
| GITHUB_TOKEN: ${{ github.token }} | |
| with: | |
| asset_paths: '["./Ludo-*.tar.gz*", "./*.deb"]' | |
| build_linux_x11_x86_64: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| submodules: true | |
| - uses: actions/setup-go@v5 | |
| with: | |
| go-version: '1.25.0' | |
| - run: echo "VERSION=$(echo ${{ github.event.release.tag_name }} | cut -c 2-)" >> $GITHUB_ENV | |
| - run: sudo apt-get update -q | |
| - run: sudo apt-get install libopenal-dev xorg-dev libgl1-mesa-dev -y --allow-unauthenticated | |
| - run: go build -tags x11 -v | |
| - run: OS=Linux ARCH=x86_64 DISPDRIVER=x11 VERSION=$VERSION make tar | |
| - run: OS=Linux ARCH=x86_64 DISPDRIVER=x11 VERSION=$VERSION make deb | |
| - run: sha256sum Ludo-Linux-x11-x86_64-${VERSION}.tar.gz > Ludo-Linux-x11-x86_64-${VERSION}.tar.gz.sha256 | |
| - name: Upload Release Asset | |
| uses: alexellis/upload-assets@0.2.2 | |
| env: | |
| GITHUB_TOKEN: ${{ github.token }} | |
| with: | |
| asset_paths: '["./Ludo-*.tar.gz*", "./*.deb"]' | |
| build_linux_x11_armhf: | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| submodules: true | |
| - uses: actions/setup-go@v5 | |
| with: | |
| go-version: '1.25.0' | |
| - run: echo "VERSION=$(echo ${{ github.event.release.tag_name }} | cut -c 2-)" >> $GITHUB_ENV | |
| - run: sudo apt update -q | |
| - run: sudo apt install binutils-multiarch | |
| - run: sudo dpkg --add-architecture armhf | |
| - run: sudo rm -rf /etc/apt/sources.list.d/*s | |
| - run: echo "" | sudo tee /etc/apt/sources.list | |
| - run: echo "deb [arch=armhf] http://ports.ubuntu.com/ubuntu-ports noble main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list | |
| - run: echo "deb [arch=armhf] http://ports.ubuntu.com/ubuntu-ports noble-updates main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list | |
| - run: echo "deb [arch=armhf] http://ports.ubuntu.com/ubuntu-ports noble-backports main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list | |
| - run: echo "deb [arch=armhf] http://ports.ubuntu.com/ubuntu-ports noble-security main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list | |
| - run: echo "deb [arch=amd64] http://us.archive.ubuntu.com/ubuntu/ noble main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list | |
| - run: echo "deb [arch=amd64] http://us.archive.ubuntu.com/ubuntu/ noble-updates main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list | |
| - run: echo "deb [arch=amd64] http://us.archive.ubuntu.com/ubuntu/ noble-backports main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list | |
| - run: echo "deb [arch=amd64] http://us.archive.ubuntu.com/ubuntu/ noble-security main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list | |
| - run: sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 6B05F25D762E3157 | |
| - run: sudo apt update -q | |
| - run: sudo apt install -f libxxf86vm-dev:armhf libc6-dev:armhf gcc-arm-linux-gnueabihf libopenal-dev:armhf libgl1-mesa-dev:armhf libxcursor-dev:armhf libxrandr-dev:armhf libxinerama-dev:armhf libxi-dev:armhf -y --allow-unauthenticated | |
| - run: PKG_CONFIG_PATH=/usr/lib/arm-linux-gnueabihf/pkgconfig/ GOOS=linux GOARCH=arm GOARM=7 CGO_ENABLED=1 CC=arm-linux-gnueabihf-gcc go build -tags x11 -v | |
| - run: OS=Linux ARCH=arm DISPDRIVER=x11 VERSION=$VERSION make tar | |
| - run: OS=Linux ARCH=arm DISPDRIVER=x11 VERSION=$VERSION make deb | |
| - run: sha256sum Ludo-Linux-x11-arm-${VERSION}.tar.gz > Ludo-Linux-x11-arm-${VERSION}.tar.gz.sha256 | |
| - name: Upload Release Asset | |
| uses: alexellis/upload-assets@0.2.2 | |
| env: | |
| GITHUB_TOKEN: ${{ github.token }} | |
| with: | |
| asset_paths: '["./Ludo-*.tar.gz*", "./*.deb"]' | |
| build_linux_x11_arm64: | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| submodules: true | |
| - uses: actions/setup-go@v5 | |
| with: | |
| go-version: '1.25.0' | |
| - run: echo "VERSION=$(echo ${{ github.event.release.tag_name }} | cut -c 2-)" >> $GITHUB_ENV | |
| - run: sudo apt update -q | |
| - run: sudo apt install binutils-multiarch | |
| - run: sudo dpkg --add-architecture arm64 | |
| - run: sudo rm -rf /etc/apt/sources.list.d/* | |
| - run: echo "" | sudo tee /etc/apt/sources.list | |
| - run: echo "deb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports noble main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list | |
| - run: echo "deb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports noble-updates main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list | |
| - run: echo "deb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports noble-backports main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list | |
| - run: echo "deb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports noble-security main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list | |
| - run: echo "deb [arch=amd64] http://us.archive.ubuntu.com/ubuntu/ noble main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list | |
| - run: echo "deb [arch=amd64] http://us.archive.ubuntu.com/ubuntu/ noble-updates main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list | |
| - run: echo "deb [arch=amd64] http://us.archive.ubuntu.com/ubuntu/ noble-backports main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list | |
| - run: echo "deb [arch=amd64] http://us.archive.ubuntu.com/ubuntu/ noble-security main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list | |
| - run: sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 6B05F25D762E3157 | |
| - run: sudo apt update -q | |
| - run: sudo apt install -f libxxf86vm-dev:arm64 libc6-dev:arm64 gcc-aarch64-linux-gnu libopenal-dev:arm64 libgl1-mesa-dev:arm64 libxcursor-dev:arm64 libxrandr-dev:arm64 libxinerama-dev:arm64 libxi-dev:arm64 -y --allow-unauthenticated | |
| - run: PKG_CONFIG_PATH=/usr/lib/aarch64-linux-gnu/pkgconfig/ GOOS=linux GOARCH=arm64 CGO_ENABLED=1 CC=aarch64-linux-gnu-gcc OS=Linux ARCH=arm64 DISPDRIVER=x11 VERSION=$VERSION make tar | |
| - run: PKG_CONFIG_PATH=/usr/lib/aarch64-linux-gnu/pkgconfig/ GOOS=linux GOARCH=arm64 CGO_ENABLED=1 CC=aarch64-linux-gnu-gcc OS=Linux ARCH=arm64 DISPDRIVER=x11 VERSION=$VERSION make deb | |
| - run: sha256sum Ludo-Linux-x11-arm64-${VERSION}.tar.gz > Ludo-Linux-x11-arm64-${VERSION}.tar.gz.sha256 | |
| - name: Upload Release Asset | |
| uses: alexellis/upload-assets@0.2.2 | |
| env: | |
| GITHUB_TOKEN: ${{ github.token }} | |
| with: | |
| asset_paths: '["./Ludo-*.tar.gz*", "./*.deb"]' | |
| build_osx_x86_64: | |
| runs-on: macos-15-intel | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| submodules: true | |
| - uses: actions/setup-go@v5 | |
| with: | |
| go-version: '1.25.0' | |
| - run: echo "VERSION=$(echo ${{ github.event.release.tag_name }} | cut -c 2-)" >> $GITHUB_ENV | |
| - run: echo "/Users/runner/go/bin" >> $GITHUB_PATH | |
| - run: go install honnef.co/go/tools/cmd/staticcheck@latest | |
| - run: brew install openal-soft | |
| - run: printf '%s' '${{ secrets.OSXCERT }}' | base64 --decode > dev.p12 | |
| - run: security create-keychain -p github build.keychain | |
| - run: security default-keychain -s build.keychain | |
| - run: security unlock-keychain -p github build.keychain | |
| - run: security import dev.p12 -f pkcs12 -k build.keychain -P ${{ secrets.OSXCERTPASS }} -T /usr/bin/codesign && rm dev.p12 | |
| - run: security set-key-partition-list -S "apple-tool:,apple:,codesign:" -s -k github build.keychain | |
| - run: security list-keychains -d user -s build.keychain | |
| - run: OS=OSX ARCH=x86_64 VERSION=$VERSION make dmg | |
| - run: xcrun notarytool submit Ludo-OSX-x86_64-${VERSION}.dmg --apple-id ${{ secrets.APPLEID }} --password ${{ secrets.APPLEIDPASS }} --team-id ZE9XE938Z2 --wait | |
| - run: xcrun stapler staple Ludo-OSX-x86_64-${VERSION}.dmg | |
| - run: xcrun stapler validate Ludo-OSX-x86_64-${VERSION}.dmg | |
| - run: shasum -a 256 Ludo-OSX-x86_64-${VERSION}.dmg > Ludo-OSX-x86_64-${VERSION}.dmg.sha256 | |
| - name: Upload Release Asset | |
| uses: alexellis/upload-assets@0.2.2 | |
| env: | |
| GITHUB_TOKEN: ${{ github.token }} | |
| with: | |
| asset_paths: '["./Ludo-*.dmg*"]' | |
| build_osx_arm64: | |
| runs-on: macos-15 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| submodules: true | |
| - uses: actions/setup-go@v5 | |
| with: | |
| go-version: '1.25.0' | |
| - run: echo "VERSION=$(echo ${{ github.event.release.tag_name }} | cut -c 2-)" >> $GITHUB_ENV | |
| - run: echo "/Users/runner/go/bin" >> $GITHUB_PATH | |
| - run: go install honnef.co/go/tools/cmd/staticcheck@latest | |
| - run: brew install openal-soft | |
| - run: printf '%s' '${{ secrets.OSXCERT }}' | base64 --decode > dev.p12 | |
| - run: security create-keychain -p github build.keychain | |
| - run: security default-keychain -s build.keychain | |
| - run: security unlock-keychain -p github build.keychain | |
| - run: security import dev.p12 -f pkcs12 -k build.keychain -P ${{ secrets.OSXCERTPASS }} -T /usr/bin/codesign && rm dev.p12 | |
| - run: security set-key-partition-list -S "apple-tool:,apple:,codesign:" -s -k github build.keychain | |
| - run: security list-keychains -d user -s build.keychain | |
| - run: OS=OSX ARCH=arm64 VERSION=$VERSION make dmg | |
| - run: xcrun notarytool submit Ludo-OSX-arm64-${VERSION}.dmg --apple-id ${{ secrets.APPLEID }} --password ${{ secrets.APPLEIDPASS }} --team-id ZE9XE938Z2 --wait | |
| - run: xcrun stapler staple Ludo-OSX-arm64-${VERSION}.dmg | |
| - run: xcrun stapler validate Ludo-OSX-arm64-${VERSION}.dmg | |
| - run: shasum -a 256 Ludo-OSX-arm64-${VERSION}.dmg > Ludo-OSX-arm64-${VERSION}.dmg.sha256 | |
| - name: Upload Release Asset | |
| uses: alexellis/upload-assets@0.2.2 | |
| env: | |
| GITHUB_TOKEN: ${{ github.token }} | |
| with: | |
| asset_paths: '["./Ludo-*.dmg*"]' | |
| build_windows_x86_64: | |
| runs-on: windows-latest | |
| defaults: | |
| run: | |
| shell: msys2 {0} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| submodules: true | |
| - uses: actions/setup-go@v5 | |
| with: | |
| go-version: '1.25.0' | |
| - uses: msys2/setup-msys2@v2 | |
| with: | |
| msystem: UCRT64 | |
| update: true | |
| path-type: inherit | |
| install: >- | |
| mingw-w64-ucrt-x86_64-toolchain | |
| mingw-w64-ucrt-x86_64-openal | |
| make | |
| p7zip | |
| mingw-w64-ucrt-x86_64-rcedit | |
| - run: echo "VERSION=$(echo ${{ github.event.release.tag_name }} | cut -c 2-)" >> "$GITHUB_ENV" | |
| - run: cp /ucrt64/bin/rcedit.exe ./rcedit-x64 | |
| - run: cp /ucrt64/lib/libopenal.dll.a ./libOpenAL32.dll.a | |
| - run: echo "CGO_LDFLAGS=-L$PWD" >> "$GITHUB_ENV" | |
| - run: cp /ucrt64/bin/libgcc_s_seh-1.dll . | |
| - run: cp /ucrt64/bin/libmysofa.dll . | |
| - run: cp /ucrt64/bin/libopenal-1.dll . | |
| - run: cp /ucrt64/bin/libstdc++-6.dll . | |
| - run: cp /ucrt64/bin/libwinpthread-1.dll . | |
| - run: cp /ucrt64/bin/zlib1.dll . | |
| - run: cp /c/Windows/System32/VCRUNTIME140.dll . | |
| - run: mkdir -p ./Ludo-Windows-x86_64-${VERSION}/ | |
| - run: cp *.dll ./Ludo-Windows-x86_64-${VERSION}/ | |
| - run: OS=Windows ARCH=x86_64 VERSION=$VERSION make zip | |
| - run: sha256sum Ludo-Windows-x86_64-${VERSION}.zip > Ludo-Windows-x86_64-${VERSION}.zip.sha256 | |
| - name: Upload Release Asset | |
| uses: alexellis/upload-assets@0.2.2 | |
| env: | |
| GITHUB_TOKEN: ${{ github.token }} | |
| with: | |
| asset_paths: '["./Ludo-*.zip*"]' |