Skip to content

commit 25cf195

abduznik edited this page May 23, 2026 · 1 revision

Add GitHub Actions CI workflow

Commit: 25cf1954af2957d47c7436e4acf57df46dcc1633

Author: Claude

Date: 2026-03-23

Message

Runs on every push and pull request:

  • analyze-and-test: flutter pub get, flutter analyze, flutter test
  • build-linux: full Linux release build (depends on analyze-and-test)

https://claude.ai/code/session_01FQFzjWBiTx43Q9wPq3tGfr

Why: General improvement or change to the codebase.

Files Changed

.github/workflows/ci.yml | 57 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 57 insertions(+)
  • .github/workflows/ci.yml

Diff

diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
new file mode 100644
index 0000000..0ff7e15
--- /dev/null
+++ b/.github/workflows/ci.yml
@@ -0,0 +1,57 @@
+name: CI
+
+on:
+  push:
+    branches: ["**"]
+  pull_request:
+    branches: ["**"]
+
+jobs:
+  analyze-and-test:
+    name: Analyze & Test
+    runs-on: ubuntu-latest
+
+    steps:
+      - name: Checkout
+        uses: actions/checkout@v4
+
+      - name: Set up Flutter
+        uses: subosito/flutter-action@v2
+        with:
+          channel: stable
+          cache: true
+
+      - name: Install dependencies
+        run: flutter pub get
+
+      - name: Analyze
+        run: flutter analyze --fatal-infos
+
+      - name: Run tests
+        run: flutter test
+
+  build-linux:
+    name: Build Linux
+    runs-on: ubuntu-latest
+    needs: analyze-and-test
+
+    steps:
+      - name: Checkout
+        uses: actions/checkout@v4
+
+      - name: Install Linux build dependencies
+        run: |
+          sudo apt-get update -q
+          sudo apt-get install -y clang cmake ninja-build pkg-config libgtk-3-dev liblzma-dev
+
+      - name: Set up Flutter
+        uses: subosito/flutter-action@v2
+        with:
+          channel: stable
+          cache: true
+
+      - name: Install dependencies
+        run: flutter pub get
+
+      - name: Build Linux
+        run: flutter build linux --release

Clone this wiki locally