From 9ce341a4a0f8dc9c961dc38891207660e3bc66c7 Mon Sep 17 00:00:00 2001 From: hariel1985 Date: Mon, 23 Mar 2026 10:30:27 +0100 Subject: [PATCH] Add Linux build to CI (Ubuntu 22.04 x64) + README download links Co-Authored-By: Claude Opus 4.6 (1M context) --- .github/workflows/build.yml | 44 ++++++++++++++++++++++++++++++++++++- README.md | 6 +++++ 2 files changed, 49 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index ef60a1e..8f1b969 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -84,9 +84,49 @@ jobs: name: InstaDrums-Standalone-macOS path: InstaDrums-Standalone-macOS.zip + build-linux: + runs-on: ubuntu-22.04 + steps: + - uses: actions/checkout@v4 + + - name: Install dependencies + run: | + sudo apt-get update + sudo apt-get install -y build-essential cmake git libasound2-dev \ + libfreetype6-dev libx11-dev libxrandr-dev libxcursor-dev \ + libxinerama-dev libwebkit2gtk-4.1-dev libcurl4-openssl-dev + + - name: Clone JUCE + run: git clone --depth 1 https://github.com/juce-framework/JUCE.git ../JUCE + + - name: Configure CMake + run: cmake -B build -DCMAKE_BUILD_TYPE=Release + + - name: Build Release + run: cmake --build build --config Release --parallel $(nproc) + + - name: Package VST3 + working-directory: build/InstaDrums_artefacts/Release + run: zip -r $GITHUB_WORKSPACE/InstaDrums-VST3-Linux-x64.zip VST3/InstaDrums.vst3 + + - name: Package Standalone + run: zip -j InstaDrums-Standalone-Linux-x64.zip build/InstaDrums_artefacts/Release/Standalone/InstaDrums + + - name: Upload VST3 + uses: actions/upload-artifact@v4 + with: + name: InstaDrums-VST3-Linux-x64 + path: InstaDrums-VST3-Linux-x64.zip + + - name: Upload Standalone + uses: actions/upload-artifact@v4 + with: + name: InstaDrums-Standalone-Linux-x64 + path: InstaDrums-Standalone-Linux-x64.zip + release: if: startsWith(github.ref, 'refs/tags/v') - needs: [build-windows, build-macos] + needs: [build-windows, build-macos, build-linux] runs-on: ubuntu-latest permissions: contents: write @@ -105,4 +145,6 @@ jobs: artifacts/InstaDrums-VST3-macOS/InstaDrums-VST3-macOS.zip artifacts/InstaDrums-AU-macOS/InstaDrums-AU-macOS.zip artifacts/InstaDrums-Standalone-macOS/InstaDrums-Standalone-macOS.zip + artifacts/InstaDrums-VST3-Linux-x64/InstaDrums-VST3-Linux-x64.zip + artifacts/InstaDrums-Standalone-Linux-x64/InstaDrums-Standalone-Linux-x64.zip generate_release_notes: true diff --git a/README.md b/README.md index 6a063d1..f2095e0 100644 --- a/README.md +++ b/README.md @@ -21,6 +21,12 @@ Free, open-source VST3 drum sampler plugin built with JUCE. | [InstaDrums-AU-macOS.zip](https://github.com/hariel1985/InstaDrums/releases/download/v1.1/InstaDrums-AU-macOS.zip) | Audio Unit — copy to `~/Library/Audio/Plug-Ins/Components/` | | [InstaDrums-Standalone-macOS.zip](https://github.com/hariel1985/InstaDrums/releases/download/v1.1/InstaDrums-Standalone-macOS.zip) | Standalone application | +### Linux (x64, built on Ubuntu 22.04) +| File | Description | +|------|-------------| +| [InstaDrums-VST3-Linux-x64.zip](https://github.com/hariel1985/InstaDrums/releases/download/v1.1/InstaDrums-VST3-Linux-x64.zip) | VST3 plugin — copy to `~/.vst3/` | +| [InstaDrums-Standalone-Linux-x64.zip](https://github.com/hariel1985/InstaDrums/releases/download/v1.1/InstaDrums-Standalone-Linux-x64.zip) | Standalone application | + > **Note:** macOS builds are Universal Binary (Apple Silicon + Intel). Not code-signed — on first launch right-click → Open to bypass Gatekeeper. ## Features