]> Nutra Git (v1) - gamesguru/feather.git/commitdiff
init github workflows
authorgg <chown_tee@proton.me>
Tue, 13 Jan 2026 03:08:18 +0000 (22:08 -0500)
committergg <chown_tee@proton.me>
Tue, 13 Jan 2026 03:08:18 +0000 (22:08 -0500)
.github/workflows/build.yml
.github/workflows/guix.yml
.github/workflows/linux.yml [new file with mode: 0644]
.github/workflows/mac.yml [new file with mode: 0644]
.github/workflows/win.yml [new file with mode: 0644]

index 24bb494427d958a2b7b7593a4c3719faa0f1649a..00189f58b47c2fc23115eb3546f9aaf745a94331 100644 (file)
@@ -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
index 2a7097713c731220f3c10b7356e6b48a5f75ca32..269d3ba12c2ead6ec7e1cb0901c3024b8c538d7f 100644 (file)
@@ -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 (file)
index 0000000..604443f
--- /dev/null
@@ -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 (file)
index 0000000..b483b8e
--- /dev/null
@@ -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 (file)
index 0000000..dda9009
--- /dev/null
@@ -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