From: gg Date: Tue, 13 Jan 2026 03:08:18 +0000 (-0500) Subject: init github workflows X-Git-Url: https://git.nutra.tk/v2?a=commitdiff_plain;h=1c444b246a7e59235154dcc7a01901e9aead02a1;p=gamesguru%2Ffeather.git init github workflows --- diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 24bb4944..00189f58 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -12,11 +12,12 @@ jobs: - name: update apt run: apt update - name: install dependencies - run: apt -y install git cmake build-essential ccache libssl-dev libunbound-dev libboost-all-dev - libqrencode-dev qt6-base-dev qt6-svg-dev qt6-websockets-dev qt6-multimedia-dev - qt6-wayland-dev libzip-dev libsodium-dev libgcrypt20-dev libx11-xcb-dev - protobuf-compiler libprotobuf-dev libhidapi-dev libzxing-dev libusb-dev - libusb-1.0-0-dev + run: + apt -y install git cmake build-essential ccache libssl-dev libunbound-dev libboost-all-dev + libqrencode-dev qt6-base-dev qt6-svg-dev qt6-websockets-dev qt6-multimedia-dev + qt6-wayland-dev libzip-dev libsodium-dev libgcrypt20-dev libx11-xcb-dev + protobuf-compiler libprotobuf-dev libhidapi-dev libzxing-dev libusb-dev + libusb-1.0-0-dev - name: configure git run: git config --global --add safe.directory '*' - uses: actions/checkout@v4 @@ -30,7 +31,7 @@ jobs: cmake --build . -j $(nproc) build-arch: - name: 'Arch Linux' + name: "Arch Linux" runs-on: ubuntu-latest container: image: archlinux:latest @@ -48,7 +49,7 @@ jobs: cmake --build build -j $(nproc) build-macos: - name: 'macOS (brew)' + name: "macOS (brew)" runs-on: macos-latest steps: - uses: actions/checkout@v4 diff --git a/.github/workflows/guix.yml b/.github/workflows/guix.yml index 2a709771..269d3ba1 100644 --- a/.github/workflows/guix.yml +++ b/.github/workflows/guix.yml @@ -112,7 +112,7 @@ jobs: - uses: actions/upload-artifact@v4 with: name: "logs" - path: '**/logs/**' + path: "**/logs/**" codesigning: runs-on: ubuntu-24.04 @@ -139,10 +139,10 @@ jobs: - uses: signpath/github-action-submit-signing-request@v1 name: "request signature" with: - api-token: '${{ secrets.SIGNPATH_API_KEY }}' - organization-id: 'd3e94749-9c69-44e9-82de-c65cb3832869' - project-slug: 'feather' - signing-policy-slug: 'release-signing' + api-token: "${{ secrets.SIGNPATH_API_KEY }}" + organization-id: "d3e94749-9c69-44e9-82de-c65cb3832869" + project-slug: "feather" + signing-policy-slug: "release-signing" artifact-configuration-slug: ${{ env.ARTIFACT_SLUG }} github-artifact-id: ${{ env.ARTIFACT_ID }} wait-for-completion: true diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml new file mode 100644 index 00000000..604443f3 --- /dev/null +++ b/.github/workflows/linux.yml @@ -0,0 +1,36 @@ +name: Linux CI + +on: + push: + tags: + - "linux-2.8.1-*" + +jobs: + build: + name: Ubuntu 24.04 + runs-on: ubuntu-latest + container: + image: ubuntu:24.04 + steps: + - name: Install dependencies + run: | + apt update + apt -y install git cmake build-essential ccache libssl-dev libunbound-dev libboost-all-dev \ + libqrencode-dev qt6-base-dev qt6-svg-dev qt6-websockets-dev qt6-multimedia-dev \ + qt6-wayland-dev libzip-dev libsodium-dev libgcrypt20-dev libx11-xcb-dev \ + protobuf-compiler libprotobuf-dev libhidapi-dev libzxing-dev libusb-dev \ + libusb-1.0-0-dev + + - name: Checkout repository + uses: actions/checkout@v4 + with: + submodules: recursive + + - name: Configure CMake + run: cmake -S . -B build -DCMAKE_BUILD_TYPE=Release + + - name: Build + run: cmake --build build -j $(nproc) + + - name: Validate Version + run: ./build/bin/feather --version diff --git a/.github/workflows/mac.yml b/.github/workflows/mac.yml new file mode 100644 index 00000000..b483b8ef --- /dev/null +++ b/.github/workflows/mac.yml @@ -0,0 +1,30 @@ +name: macOS CI + +on: + push: + tags: + - "macos-2.8.1-*" + +jobs: + build: + name: macOS (brew) + runs-on: macos-latest + steps: + - name: Checkout repository + uses: actions/checkout@v4 + with: + submodules: recursive + + - name: Install dependencies + run: | + brew update + brew install --quiet qt libsodium libzip qrencode unbound cmake boost hidapi openssl expat libunwind-headers protobuf pkg-config + + - name: Configure CMake + run: cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DWITH_SCANNER=OFF + + - name: Build + run: cmake --build build -j $(sysctl -n hw.ncpu) + + - name: Validate Version + run: ./build/bin/feather.app/Contents/MacOS/feather --version diff --git a/.github/workflows/win.yml b/.github/workflows/win.yml new file mode 100644 index 00000000..dda90099 --- /dev/null +++ b/.github/workflows/win.yml @@ -0,0 +1,50 @@ +name: Windows CI + +on: + push: + tags: + - "windows-2.8.1-*" + +jobs: + build: + name: Windows (MSYS2) + runs-on: windows-latest + steps: + - name: Checkout repository + uses: actions/checkout@v4 + with: + submodules: recursive + + - name: Setup MSYS2 + uses: msys2/setup-msys2@v2 + with: + update: true + install: >- + git + base-devel + mingw-w64-x86_64-toolchain + mingw-w64-x86_64-cmake + mingw-w64-x86_64-boost + mingw-w64-x86_64-openssl + mingw-w64-x86_64-libzip + mingw-w64-x86_64-libhidapi + mingw-w64-x86_64-protobuf + mingw-w64-x86_64-libsodium + mingw-w64-x86_64-libunbound + mingw-w64-x86_64-qrencode + mingw-w64-x86_64-qt6-base + mingw-w64-x86_64-qt6-svg + mingw-w64-x86_64-qt6-websockets + mingw-w64-x86_64-qt6-multimedia + mingw-w64-x86_64-qt6-wayland + mingw-w64-x86_64-zxing-cpp + + - name: Build + shell: msys2 {0} + run: | + cmake -G "MinGW Makefiles" -S . -B build -DCMAKE_BUILD_TYPE=Release -DWITH_SCANNER=OFF + cmake --build build -j $(nproc) + + - name: Validate Version + shell: msys2 {0} + run: ./build/bin/feather.exe --version