From da6d31677de16eae07570418ca1ba4022e1a7c76 Mon Sep 17 00:00:00 2001 From: Schnitzel5 Date: Fri, 10 Jan 2025 20:55:24 +0100 Subject: [PATCH 1/4] updated release.yml --- .github/workflows/release.yml | 332 +++++++++++++++++----------------- 1 file changed, 164 insertions(+), 168 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 9d670e4..02d77a8 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -16,7 +16,6 @@ jobs: contents: write runs-on: ubuntu-latest steps: - - name: checkout branch uses: actions/checkout@v4 @@ -34,9 +33,16 @@ jobs: distribution: "temurin" java-version: "17" + - name: Setup cmake + uses: jwlawson/actions-setup-cmake@v2 + with: + cmake-version: '3.18.1' + + - name: Setup ninja + uses: seanmiddleditch/gha-setup-ninja@master + - name: Install the CLI tool run: cargo install 'flutter_rust_bridge_codegen' - - name: Setup Android keystore run: | @@ -65,7 +71,6 @@ jobs: artifacts: "build/app/outputs/flutter-apk/Mangayomi-*.apk" allowUpdates: true - build-and-release-ios-ipa: permissions: contents: write @@ -117,7 +122,6 @@ jobs: contents: write runs-on: macos-latest steps: - - name: checkout branch uses: actions/checkout@v4 @@ -156,198 +160,190 @@ jobs: artifacts: "/Users/runner/work/mangayomi/mangayomi/*.dmg" allowUpdates: true + build-and-release-windows-zip: + permissions: + contents: write + runs-on: windows-latest + steps: + - name: checkout branch + uses: actions/checkout@v4 - # build-and-release-windows-zip: - # permissions: - # contents: write - # runs-on: windows-latest - # steps: - - # - name: checkout branch - # uses: actions/checkout@v4 + - name: setup flutter + uses: subosito/flutter-action@v2 + with: + channel: 'stable' - # - name: setup flutter - # uses: subosito/flutter-action@v2 - # with: - # channel: 'stable' + - name: Setup Rust toolchain + uses: dtolnay/rust-toolchain@stable - # - name: Setup Rust toolchain - # uses: dtolnay/rust-toolchain@stable - - # - name: Install the CLI tool - # run: cargo install 'flutter_rust_bridge_codegen' + - name: Install the CLI tool + run: cargo install 'flutter_rust_bridge_codegen' - # - name: flutter_rust_bridge_codegen - # run: flutter_rust_bridge_codegen generate + - name: flutter_rust_bridge_codegen + run: flutter_rust_bridge_codegen generate - # - name: flutter pub get - # run: flutter pub get + - name: flutter pub get + run: flutter pub get - # - name: build windows - # run: | - # flutter build windows - # Compress-Archive $DestDir build\windows\Mangayomi-${{ github.ref_name }}-windows.zip + - name: build windows + run: | + flutter build windows + Compress-Archive $DestDir build\windows\Mangayomi-${{ github.ref_name }}-windows.zip - # - name: upload artifact windows zip - # uses: actions/upload-artifact@v3 - # with: - # path: build\windows\Mangayomi-*.zip + - name: upload artifact windows zip + uses: actions/upload-artifact@v3 + with: + path: build\windows\Mangayomi-*.zip - # - name: release package windows zip - # uses: ncipollo/release-action@v1 - # with: - # artifacts: build\windows\Mangayomi-*.zip - # allowUpdates: true + - name: release package windows zip + uses: ncipollo/release-action@v1 + with: + artifacts: build\windows\Mangayomi-*.zip + allowUpdates: true - # build-and-release-linux-zip: - # permissions: - # contents: write - # runs-on: ubuntu-latest - # steps: + build-and-release-linux-zip: + permissions: + contents: write + runs-on: ubuntu-latest + steps: + - name: checkout branch + uses: actions/checkout@v4 + + - name: Install dependencies + run: | + sudo apt-get update + sudo apt-get install webkit2gtk-4.1 clang cmake ninja-build pkg-config libgtk-3-dev mpv libmpv-dev dpkg-dev + + - name: setup flutter + uses: subosito/flutter-action@v2 + with: + channel: 'stable' + + - name: Setup Rust toolchain + uses: dtolnay/rust-toolchain@stable + + - name: Install the CLI tool + run: cargo install 'flutter_rust_bridge_codegen' + + - name: flutter pub get + run: flutter pub get + + - name: build linux + run: flutter build linux + - name: Zip + uses: thedoctor0/zip-release@master + with: + type: "zip" + filename: Mangayomi-${{ github.ref_name }}-linux.zip + directory: build/linux/x64/release/bundle - # - name: checkout branch - # uses: actions/checkout@v4 + - name: upload artifact linux zip + uses: actions/upload-artifact@v3 + with: + path: build/linux/x64/release/bundle/Mangayomi-*.zip + - name: release packages linux zip + uses: ncipollo/release-action@v1 + with: + artifacts: build/linux/x64/release/bundle/Mangayomi-*.zip + allowUpdates: true - # - name: Install dependencies - # run: | - # sudo apt-get update - # sudo apt-get install webkit2gtk-4.1 clang cmake ninja-build pkg-config libgtk-3-dev mpv libmpv-dev dpkg-dev + build-and-release-linux-deb: + permissions: + contents: write + runs-on: ubuntu-latest + steps: + - name: checkout branch + uses: actions/checkout@v4 - # - name: setup flutter - # uses: subosito/flutter-action@v2 - # with: - # channel: 'stable' + - name: Install dependencies + run: | + sudo apt-get update + sudo apt-get install webkit2gtk-4.1 clang cmake ninja-build pkg-config libgtk-3-dev mpv libmpv-dev dpkg-dev libfuse2 - # - name: Setup Rust toolchain - # uses: dtolnay/rust-toolchain@stable + - name: setup flutter + uses: subosito/flutter-action@v2 + with: + channel: 'stable' - # - name: Install the CLI tool - # run: cargo install 'flutter_rust_bridge_codegen' + - name: Setup Rust toolchain + uses: dtolnay/rust-toolchain@stable + + - name: Install the CLI tool + run: cargo install 'flutter_rust_bridge_codegen' + - name: flutter pub get + run: flutter pub get - # - name: flutter pub get - # run: flutter pub get + - name: Enable dart_distributor + run: dart pub global activate flutter_distributor - # - name: build linux - # run: flutter build linux --verbose - # - name: Zip - # uses: thedoctor0/zip-release@master - # with: - # type: "zip" - # filename: Mangayomi-${{ github.ref_name }}-linux.zip - # directory: build/linux/x64/release/bundle - - # - name: upload artifact linux zip - # uses: actions/upload-artifact@v3 - # with: - # path: build/linux/x64/release/bundle/Mangayomi-*.zip - # - name: release packages linux zip - # uses: ncipollo/release-action@v1 - # with: - # artifacts: build/linux/x64/release/bundle/Mangayomi-*.zip - # allowUpdates: true + - name: Update PATH + run: echo 'export PATH="$PATH:$HOME/.pub-cache/bin"' >> ~/.bashrc + - name: Build deb package + run: flutter_distributor package --platform linux --targets deb - # build-and-release-linux-deb: - # permissions: - # contents: write - # runs-on: ubuntu-latest - # steps: - - # - name: checkout branch - # uses: actions/checkout@v4 + - name: Move deb file + run: mv $(find dist -type f -name "mangayomi*.deb") dist/Mangayomi-${{ github.ref_name }}-linux.deb - # - name: Install dependencies - # run: | - # sudo apt-get update - # sudo apt-get install webkit2gtk-4.1 clang cmake ninja-build pkg-config libgtk-3-dev mpv libmpv-dev dpkg-dev libfuse2 + - name: upload artifact linux deb + uses: actions/upload-artifact@v3 + with: + path: dist/Mangayomi-*.deb - # - name: setup flutter - # uses: subosito/flutter-action@v2 - # with: - # channel: 'stable' + - name: Release package deb + uses: ncipollo/release-action@v1 + with: + artifacts: dist/Mangayomi-*.deb + allowUpdates: true - # - name: Setup Rust toolchain - # uses: dtolnay/rust-toolchain@stable + build-and-release-linux-appimage: + permissions: + contents: write + runs-on: ubuntu-latest + steps: + - name: checkout branch + uses: actions/checkout@v4 - # - name: Install the CLI tool - # run: cargo install 'flutter_rust_bridge_codegen' + - name: Install dependencies + run: | + sudo apt-get update + sudo apt-get install webkit2gtk-4.1 clang cmake ninja-build pkg-config libgtk-3-dev mpv libmpv-dev dpkg-dev libfuse2 + + - name: setup flutter + uses: subosito/flutter-action@v2 + with: + channel: 'stable' + + - name: Setup Rust toolchain + uses: dtolnay/rust-toolchain@stable + + - name: Install the CLI tool + run: cargo install 'flutter_rust_bridge_codegen' - # - name: flutter pub get - # run: flutter pub get + - name: flutter pub get + run: flutter pub get - # - name: Enable dart_distributor - # run: dart pub global activate flutter_distributor + - name: Enable dart_distributor + run: dart pub global activate flutter_distributor - # - name: Update PATH - # run: echo 'export PATH="$PATH:$HOME/.pub-cache/bin"' >> ~/.bashrc + - name: Update PATH + run: echo 'export PATH="$PATH:$HOME/.pub-cache/bin"' >> ~/.bashrc - # - name: Build deb package - # run: flutter_distributor package --platform linux --targets deb + - name: Build AppImage package + run: flutter_distributor package --platform linux --targets appimage - # - name: Move deb file - # run: mv $(find dist -type f -name "mangayomi*.deb") dist/Mangayomi-${{ github.ref_name }}-linux.deb + - name: Move AppImage file + run: mv $(find dist -type f -name "mangayomi*.AppImage") dist/Mangayomi-${{ github.ref_name }}-linux.AppImage - # - name: upload artifact linux deb - # uses: actions/upload-artifact@v3 - # with: - # path: dist/Mangayomi-*.deb + - name: upload artifact linux AppImage + uses: actions/upload-artifact@v3 + with: + path: dist/Mangayomi-*.AppImage - # - name: Release package deb - # uses: ncipollo/release-action@v1 - # with: - # artifacts: dist/Mangayomi-*.deb - # allowUpdates: true - - - # build-and-release-linux-appimage: - # permissions: - # contents: write - # runs-on: ubuntu-latest - # steps: - - # - name: checkout branch - # uses: actions/checkout@v4 - - # - name: Install dependencies - # run: | - # sudo apt-get update - # sudo apt-get install webkit2gtk-4.1 clang cmake ninja-build pkg-config libgtk-3-dev mpv libmpv-dev dpkg-dev libfuse2 - - # - name: setup flutter - # uses: subosito/flutter-action@v2 - # with: - # channel: 'stable' - - # - name: Setup Rust toolchain - # uses: dtolnay/rust-toolchain@stable - - # - name: Install the CLI tool - # run: cargo install 'flutter_rust_bridge_codegen' - - # - name: flutter pub get - # run: flutter pub get - - # - name: Enable dart_distributor - # run: dart pub global activate flutter_distributor - - # - name: Update PATH - # run: echo 'export PATH="$PATH:$HOME/.pub-cache/bin"' >> ~/.bashrc - - # - name: Build AppImage package - # run: flutter_distributor package --platform linux --targets deb - - # - name: Move AppImage file - # run: mv $(find dist -type f -name "mangayomi*.AppImage") dist/Mangayomi-${{ github.ref_name }}-linux.AppImage - - # - name: upload artifact linux AppImage - # uses: actions/upload-artifact@v3 - # with: - # path: dist/Mangayomi-*.AppImage - - # - name: Release package AppImage - # uses: ncipollo/release-action@v1 - # with: - # artifacts: dist/Mangayomi-*.AppImage - # allowUpdates: true \ No newline at end of file + - name: Release package AppImage + uses: ncipollo/release-action@v1 + with: + artifacts: dist/Mangayomi-*.AppImage + allowUpdates: true From 0a870a042314e6a1ac394b6408585061f469a850 Mon Sep 17 00:00:00 2001 From: Schnitzel5 Date: Fri, 10 Jan 2025 21:28:34 +0100 Subject: [PATCH 2/4] update release.yml --- .github/workflows/release.yml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 02d77a8..9d9be72 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -188,7 +188,7 @@ jobs: - name: build windows run: | flutter build windows - Compress-Archive $DestDir build\windows\Mangayomi-${{ github.ref_name }}-windows.zip + Compress-Archive build\windows\x64\runner\Release\mangayomi.exe build\windows\Mangayomi-${{ github.ref_name }}-windows.zip - name: upload artifact windows zip uses: actions/upload-artifact@v3 @@ -309,7 +309,10 @@ jobs: - name: Install dependencies run: | sudo apt-get update - sudo apt-get install webkit2gtk-4.1 clang cmake ninja-build pkg-config libgtk-3-dev mpv libmpv-dev dpkg-dev libfuse2 + sudo apt-get install webkit2gtk-4.1 clang cmake ninja-build pkg-config libgtk-3-dev mpv libmpv-dev dpkg-dev libfuse2 locate + wget -O appimagetool "https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-x86_64.AppImage" + chmod +x appimagetool + sudo mv appimagetool /usr/local/bin/ - name: setup flutter uses: subosito/flutter-action@v2 From 0c026a5ca35b30ccd44a2a0a0e428908ff3a6ed9 Mon Sep 17 00:00:00 2001 From: Schnitzel5 Date: Fri, 10 Jan 2025 22:17:43 +0100 Subject: [PATCH 3/4] updated release.yml --- .github/workflows/release.yml | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 9d9be72..6d501de 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -185,20 +185,25 @@ jobs: - name: flutter pub get run: flutter pub get + - name: Enable dart_distributor + run: dart pub global activate flutter_distributor + + - name: Update PATH + run: echo 'export PATH="$PATH:$HOME/.pub-cache/bin"' >> ~/.bashrc + - name: build windows run: | - flutter build windows - Compress-Archive build\windows\x64\runner\Release\mangayomi.exe build\windows\Mangayomi-${{ github.ref_name }}-windows.zip + flutter_distributor package --platform windows --targets zip --artifact-name 'Mangayomi-${{ github.ref_name }}-windows.zip' - name: upload artifact windows zip uses: actions/upload-artifact@v3 with: - path: build\windows\Mangayomi-*.zip + path: Mangayomi-*.zip - name: release package windows zip uses: ncipollo/release-action@v1 with: - artifacts: build\windows\Mangayomi-*.zip + artifacts: Mangayomi-*.zip allowUpdates: true From 8ac10709c446f779825d032757ea7f53574ea2c5 Mon Sep 17 00:00:00 2001 From: Schnitzel5 Date: Fri, 10 Jan 2025 23:48:48 +0100 Subject: [PATCH 4/4] update release.yml --- .github/workflows/release.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 6d501de..4de2468 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -198,12 +198,12 @@ jobs: - name: upload artifact windows zip uses: actions/upload-artifact@v3 with: - path: Mangayomi-*.zip + path: dist/**/Mangayomi-*.zip - name: release package windows zip uses: ncipollo/release-action@v1 with: - artifacts: Mangayomi-*.zip + artifacts: dist/**/Mangayomi-*.zip allowUpdates: true