From b7d9436ceef0b660e53ec9dcd82e4ed6893bea27 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Rapha=C3=ABl=20Forment?=
Date: Sat, 7 Mar 2026 14:17:58 +0100
Subject: [PATCH] Feat: move out of GitHub, remove GitHub references
---
.github/workflows/assemble-macos.yml | 135 --------------------
.github/workflows/build-cross.yml | 49 -------
.github/workflows/build-linux.yml | 131 -------------------
.github/workflows/build-macos.yml | 127 ------------------
.github/workflows/build-plugins-linux.yml | 56 --------
.github/workflows/build-plugins-macos.yml | 66 ----------
.github/workflows/build-plugins-rpi.yml | 59 ---------
.github/workflows/build-plugins-windows.yml | 59 ---------
.github/workflows/build-plugins.yml | 18 ---
.github/workflows/build-windows.yml | 134 -------------------
.github/workflows/ci.yml | 28 ----
.github/workflows/pages.yml | 59 ---------
.github/workflows/release.yml | 107 ----------------
BUILDING.md | 2 +-
Cargo.toml | 2 +-
README.md | 2 +-
nsis/cagire.nsi | 2 +-
website/src/pages/index.astro | 4 +-
18 files changed, 6 insertions(+), 1034 deletions(-)
delete mode 100644 .github/workflows/assemble-macos.yml
delete mode 100644 .github/workflows/build-cross.yml
delete mode 100644 .github/workflows/build-linux.yml
delete mode 100644 .github/workflows/build-macos.yml
delete mode 100644 .github/workflows/build-plugins-linux.yml
delete mode 100644 .github/workflows/build-plugins-macos.yml
delete mode 100644 .github/workflows/build-plugins-rpi.yml
delete mode 100644 .github/workflows/build-plugins-windows.yml
delete mode 100644 .github/workflows/build-plugins.yml
delete mode 100644 .github/workflows/build-windows.yml
delete mode 100644 .github/workflows/ci.yml
delete mode 100644 .github/workflows/pages.yml
delete mode 100644 .github/workflows/release.yml
diff --git a/.github/workflows/assemble-macos.yml b/.github/workflows/assemble-macos.yml
deleted file mode 100644
index 2752f5d..0000000
--- a/.github/workflows/assemble-macos.yml
+++ /dev/null
@@ -1,135 +0,0 @@
-name: Assemble macOS Universal
-
-on:
- workflow_call:
-
-jobs:
- assemble:
- runs-on: macos-14
- timeout-minutes: 10
-
- steps:
- - name: Download macOS artifacts
- uses: actions/download-artifact@v4
- with:
- pattern: cagire-macos-*
- path: artifacts
-
- - name: Create universal CLI binary
- run: |
- lipo -create \
- artifacts/cagire-macos-x86_64/cagire \
- artifacts/cagire-macos-aarch64/cagire \
- -output cagire
- chmod +x cagire
- lipo -info cagire
-
- - name: Create universal app bundle
- run: |
- cd artifacts/cagire-macos-aarch64-desktop
- unzip Cagire.app.zip
- cd ../cagire-macos-x86_64-desktop
- unzip Cagire.app.zip
- cd ../..
- cp -R artifacts/cagire-macos-aarch64-desktop/Cagire.app Cagire.app
- lipo -create \
- artifacts/cagire-macos-x86_64-desktop/Cagire.app/Contents/MacOS/cagire-desktop \
- artifacts/cagire-macos-aarch64-desktop/Cagire.app/Contents/MacOS/cagire-desktop \
- -output Cagire.app/Contents/MacOS/cagire-desktop
- lipo -info Cagire.app/Contents/MacOS/cagire-desktop
- zip -r Cagire.app.zip Cagire.app
-
- - name: Create universal CLAP plugin
- run: |
- mkdir -p cagire-plugins.clap/Contents/MacOS
- cp artifacts/cagire-macos-aarch64-clap/cagire-plugins.clap/Contents/Info.plist \
- cagire-plugins.clap/Contents/ 2>/dev/null || true
- cp artifacts/cagire-macos-aarch64-clap/cagire-plugins.clap/Contents/PkgInfo \
- cagire-plugins.clap/Contents/ 2>/dev/null || true
- lipo -create \
- artifacts/cagire-macos-x86_64-clap/cagire-plugins.clap/Contents/MacOS/cagire-plugins \
- artifacts/cagire-macos-aarch64-clap/cagire-plugins.clap/Contents/MacOS/cagire-plugins \
- -output cagire-plugins.clap/Contents/MacOS/cagire-plugins
- lipo -info cagire-plugins.clap/Contents/MacOS/cagire-plugins
-
- - name: Create universal VST3 plugin
- run: |
- mkdir -p cagire-plugins.vst3/Contents/MacOS
- cp -R artifacts/cagire-macos-aarch64-vst3/cagire-plugins.vst3/Contents/Info.plist \
- cagire-plugins.vst3/Contents/ 2>/dev/null || true
- cp artifacts/cagire-macos-aarch64-vst3/cagire-plugins.vst3/Contents/PkgInfo \
- cagire-plugins.vst3/Contents/ 2>/dev/null || true
- cp -R artifacts/cagire-macos-aarch64-vst3/cagire-plugins.vst3/Contents/Resources \
- cagire-plugins.vst3/Contents/ 2>/dev/null || true
- lipo -create \
- artifacts/cagire-macos-x86_64-vst3/cagire-plugins.vst3/Contents/MacOS/cagire-plugins \
- artifacts/cagire-macos-aarch64-vst3/cagire-plugins.vst3/Contents/MacOS/cagire-plugins \
- -output cagire-plugins.vst3/Contents/MacOS/cagire-plugins
- lipo -info cagire-plugins.vst3/Contents/MacOS/cagire-plugins
-
- - uses: actions/checkout@v4
- with:
- sparse-checkout: |
- assets/DMG-README.txt
- scripts/make-dmg.sh
- clean: false
-
- - name: Create DMG
- run: |
- chmod +x scripts/make-dmg.sh
- scripts/make-dmg.sh Cagire.app .
-
- - name: Build .pkg installer
- run: |
- VERSION="${GITHUB_REF_NAME#v}"
- mkdir -p pkg-root/Applications pkg-root/usr/local/bin
- cp -R Cagire.app pkg-root/Applications/
- cp cagire pkg-root/usr/local/bin/
- pkgbuild --analyze --root pkg-root component.plist
- plutil -replace BundleIsRelocatable -bool NO component.plist
- pkgbuild --root pkg-root --identifier com.sova.cagire \
- --version "$VERSION" --install-location / \
- --component-plist component.plist \
- "Cagire-${VERSION}-universal.pkg"
-
- - name: Upload universal CLI
- uses: actions/upload-artifact@v4
- with:
- name: cagire-macos-universal
- path: cagire
-
- - name: Upload universal app bundle
- uses: actions/upload-artifact@v4
- with:
- name: cagire-macos-universal-desktop
- path: Cagire.app.zip
-
- - name: Prepare universal plugin staging
- run: |
- mkdir -p staging/clap staging/vst3
- cp -R cagire-plugins.clap staging/clap/
- cp -R cagire-plugins.vst3 staging/vst3/
-
- - name: Upload universal CLAP plugin
- uses: actions/upload-artifact@v4
- with:
- name: cagire-macos-universal-clap
- path: staging/clap/
-
- - name: Upload universal VST3 plugin
- uses: actions/upload-artifact@v4
- with:
- name: cagire-macos-universal-vst3
- path: staging/vst3/
-
- - name: Upload DMG
- uses: actions/upload-artifact@v4
- with:
- name: cagire-macos-universal-dmg
- path: Cagire-*.dmg
-
- - name: Upload .pkg installer
- uses: actions/upload-artifact@v4
- with:
- name: cagire-macos-universal-pkg
- path: Cagire-*-universal.pkg
diff --git a/.github/workflows/build-cross.yml b/.github/workflows/build-cross.yml
deleted file mode 100644
index 26d3b67..0000000
--- a/.github/workflows/build-cross.yml
+++ /dev/null
@@ -1,49 +0,0 @@
-name: Build Cross (Linux ARM64)
-
-on:
- workflow_call:
- workflow_dispatch:
-
-env:
- CARGO_TERM_COLOR: always
-
-jobs:
- build:
- runs-on: ubuntu-latest
- timeout-minutes: 60
-
- steps:
- - uses: actions/checkout@v4
- with:
- submodules: recursive
-
- - name: Install Rust toolchain
- uses: dtolnay/rust-toolchain@stable
- with:
- targets: aarch64-unknown-linux-gnu
-
- - name: Cache Rust dependencies
- uses: Swatinem/rust-cache@v2
- with:
- key: aarch64-unknown-linux-gnu
-
- - name: Install cross
- run: cargo install cross --git https://github.com/cross-rs/cross
-
- - name: Build
- run: cross build --release --target aarch64-unknown-linux-gnu
-
- - name: Build desktop
- run: cross build --release --features desktop --bin cagire-desktop --target aarch64-unknown-linux-gnu
-
- - name: Upload CLI artifact
- uses: actions/upload-artifact@v4
- with:
- name: cagire-linux-aarch64
- path: target/aarch64-unknown-linux-gnu/release/cagire
-
- - name: Upload desktop artifact
- uses: actions/upload-artifact@v4
- with:
- name: cagire-linux-aarch64-desktop
- path: target/aarch64-unknown-linux-gnu/release/cagire-desktop
diff --git a/.github/workflows/build-linux.yml b/.github/workflows/build-linux.yml
deleted file mode 100644
index c8449ad..0000000
--- a/.github/workflows/build-linux.yml
+++ /dev/null
@@ -1,131 +0,0 @@
-name: Build Linux
-
-on:
- workflow_call:
- inputs:
- run-tests:
- type: boolean
- default: false
- run-clippy:
- type: boolean
- default: false
- build-packages:
- type: boolean
- default: false
- workflow_dispatch:
- inputs:
- run-tests:
- type: boolean
- default: true
- run-clippy:
- type: boolean
- default: true
- build-packages:
- type: boolean
- default: false
-
-env:
- CARGO_TERM_COLOR: always
-
-jobs:
- build:
- runs-on: ubuntu-latest
- timeout-minutes: 60
-
- steps:
- - uses: actions/checkout@v4
- with:
- submodules: recursive
-
- - name: Install Rust toolchain
- uses: dtolnay/rust-toolchain@stable
- with:
- targets: x86_64-unknown-linux-gnu
- components: clippy
-
- - name: Cache Rust dependencies
- uses: Swatinem/rust-cache@v2
- with:
- key: x86_64-unknown-linux-gnu
-
- - name: Install dependencies
- run: |
- sudo apt-get update
- sudo apt-get install -y build-essential cmake pkg-config libasound2-dev libclang-dev libjack-dev \
- libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev libxkbcommon-dev libssl-dev libgl1-mesa-dev \
- libx11-dev libx11-xcb-dev libxcursor-dev libxrandr-dev libxi-dev libwayland-dev
-
- - name: Build
- run: cargo build --release --target x86_64-unknown-linux-gnu
-
- - name: Build desktop
- run: cargo build --release --features desktop --bin cagire-desktop --target x86_64-unknown-linux-gnu
-
- - name: Test
- if: inputs.run-tests
- run: cargo test --target x86_64-unknown-linux-gnu
-
- - name: Clippy
- if: inputs.run-clippy
- run: cargo clippy --target x86_64-unknown-linux-gnu -- -D warnings
-
- - name: Install cargo-bundle
- if: inputs.build-packages
- run: cargo install cargo-bundle
-
- - name: Bundle desktop app
- if: inputs.build-packages
- run: cargo bundle --release --features desktop --bin cagire-desktop --target x86_64-unknown-linux-gnu
-
- - name: Build AppImages
- if: inputs.build-packages
- run: |
- mkdir -p target/releases
- scripts/make-appimage.sh target/x86_64-unknown-linux-gnu/release/cagire x86_64 target/releases
- scripts/make-appimage.sh target/x86_64-unknown-linux-gnu/release/cagire-desktop x86_64 target/releases
-
- - name: Bundle CLAP plugin
- if: inputs.build-packages
- run: cargo xtask bundle cagire-plugins --release --target x86_64-unknown-linux-gnu
-
- - name: Upload CLI artifact
- if: inputs.build-packages
- uses: actions/upload-artifact@v4
- with:
- name: cagire-linux-x86_64
- path: target/x86_64-unknown-linux-gnu/release/cagire
-
- - name: Upload desktop artifact
- if: inputs.build-packages
- uses: actions/upload-artifact@v4
- with:
- name: cagire-linux-x86_64-desktop
- path: target/x86_64-unknown-linux-gnu/release/bundle/deb/*.deb
-
- - name: Upload AppImage artifacts
- if: inputs.build-packages
- uses: actions/upload-artifact@v4
- with:
- name: cagire-linux-x86_64-appimage
- path: target/releases/*.AppImage
-
- - name: Prepare plugin artifacts
- if: inputs.build-packages
- run: |
- mkdir -p staging/clap staging/vst3
- cp -R target/bundled/cagire-plugins.clap staging/clap/
- cp -R target/bundled/cagire-plugins.vst3 staging/vst3/
-
- - name: Upload CLAP artifact
- if: inputs.build-packages
- uses: actions/upload-artifact@v4
- with:
- name: cagire-linux-x86_64-clap
- path: staging/clap/
-
- - name: Upload VST3 artifact
- if: inputs.build-packages
- uses: actions/upload-artifact@v4
- with:
- name: cagire-linux-x86_64-vst3
- path: staging/vst3/
diff --git a/.github/workflows/build-macos.yml b/.github/workflows/build-macos.yml
deleted file mode 100644
index e7d738a..0000000
--- a/.github/workflows/build-macos.yml
+++ /dev/null
@@ -1,127 +0,0 @@
-name: Build macOS
-
-on:
- workflow_call:
- inputs:
- run-tests:
- type: boolean
- default: false
- run-clippy:
- type: boolean
- default: false
- build-packages:
- type: boolean
- default: false
- matrix:
- type: string
- default: '[{"os":"macos-14","target":"aarch64-apple-darwin","artifact":"cagire-macos-aarch64"}]'
- workflow_dispatch:
- inputs:
- run-tests:
- type: boolean
- default: true
- run-clippy:
- type: boolean
- default: true
- build-packages:
- type: boolean
- default: false
- matrix:
- type: string
- default: '[{"os":"macos-14","target":"aarch64-apple-darwin","artifact":"cagire-macos-aarch64"}]'
-
-env:
- CARGO_TERM_COLOR: always
- MACOSX_DEPLOYMENT_TARGET: "12.0"
-
-jobs:
- build:
- strategy:
- fail-fast: false
- matrix:
- include: ${{ fromJSON(inputs.matrix) }}
-
- runs-on: ${{ matrix.os }}
- timeout-minutes: 60
-
- steps:
- - uses: actions/checkout@v4
- with:
- submodules: recursive
-
- - name: Install Rust toolchain
- uses: dtolnay/rust-toolchain@stable
- with:
- targets: ${{ matrix.target }}
- components: clippy
-
- - name: Cache Rust dependencies
- uses: Swatinem/rust-cache@v2
- with:
- key: ${{ matrix.target }}
-
- - name: Install dependencies
- run: brew list cmake &>/dev/null || brew install cmake
-
- - name: Build
- run: cargo build --release --target ${{ matrix.target }}
-
- - name: Build desktop
- run: cargo build --release --features desktop --bin cagire-desktop --target ${{ matrix.target }}
-
- - name: Test
- if: inputs.run-tests
- run: cargo test --target ${{ matrix.target }}
-
- - name: Clippy
- if: inputs.run-clippy
- run: cargo clippy --target ${{ matrix.target }} -- -D warnings
-
- - name: Bundle desktop app
- if: inputs.build-packages
- run: scripts/make-app-bundle.sh ${{ matrix.target }}
-
- - name: Bundle CLAP plugin
- if: inputs.build-packages
- run: cargo xtask bundle cagire-plugins --release --target ${{ matrix.target }}
-
- - name: Zip macOS app bundle
- if: inputs.build-packages
- run: |
- cd target/${{ matrix.target }}/release/bundle/osx
- zip -r Cagire.app.zip Cagire.app
-
- - name: Upload CLI artifact
- if: inputs.build-packages
- uses: actions/upload-artifact@v4
- with:
- name: ${{ matrix.artifact }}
- path: target/${{ matrix.target }}/release/cagire
-
- - name: Upload desktop artifact
- if: inputs.build-packages
- uses: actions/upload-artifact@v4
- with:
- name: ${{ matrix.artifact }}-desktop
- path: target/${{ matrix.target }}/release/bundle/osx/Cagire.app.zip
-
- - name: Prepare plugin artifacts
- if: inputs.build-packages
- run: |
- mkdir -p staging/clap staging/vst3
- cp -R target/bundled/cagire-plugins.clap staging/clap/
- cp -R target/bundled/cagire-plugins.vst3 staging/vst3/
-
- - name: Upload CLAP artifact
- if: inputs.build-packages
- uses: actions/upload-artifact@v4
- with:
- name: ${{ matrix.artifact }}-clap
- path: staging/clap/
-
- - name: Upload VST3 artifact
- if: inputs.build-packages
- uses: actions/upload-artifact@v4
- with:
- name: ${{ matrix.artifact }}-vst3
- path: staging/vst3/
diff --git a/.github/workflows/build-plugins-linux.yml b/.github/workflows/build-plugins-linux.yml
deleted file mode 100644
index 50ec0a4..0000000
--- a/.github/workflows/build-plugins-linux.yml
+++ /dev/null
@@ -1,56 +0,0 @@
-name: Build Plugins Linux
-
-on:
- workflow_call:
- workflow_dispatch:
-
-env:
- CARGO_TERM_COLOR: always
-
-jobs:
- build:
- runs-on: ubuntu-latest
- timeout-minutes: 60
-
- steps:
- - uses: actions/checkout@v4
- with:
- submodules: recursive
-
- - name: Install Rust toolchain
- uses: dtolnay/rust-toolchain@stable
- with:
- targets: x86_64-unknown-linux-gnu
-
- - name: Cache Rust dependencies
- uses: Swatinem/rust-cache@v2
- with:
- key: x86_64-unknown-linux-gnu-plugins
-
- - name: Install dependencies
- run: |
- sudo apt-get update
- sudo apt-get install -y build-essential cmake pkg-config libasound2-dev libclang-dev libjack-dev \
- libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev libxkbcommon-dev libssl-dev libgl1-mesa-dev \
- libx11-dev libx11-xcb-dev libxcursor-dev libxrandr-dev libxi-dev libwayland-dev
-
- - name: Build plugins
- run: cargo xtask bundle cagire-plugins --release --target x86_64-unknown-linux-gnu
-
- - name: Prepare plugin artifacts
- run: |
- mkdir -p staging/clap staging/vst3
- cp -R target/bundled/cagire-plugins.clap staging/clap/
- cp -R target/bundled/cagire-plugins.vst3 staging/vst3/
-
- - name: Upload CLAP artifact
- uses: actions/upload-artifact@v4
- with:
- name: plugins-linux-x86_64-clap
- path: staging/clap/
-
- - name: Upload VST3 artifact
- uses: actions/upload-artifact@v4
- with:
- name: plugins-linux-x86_64-vst3
- path: staging/vst3/
diff --git a/.github/workflows/build-plugins-macos.yml b/.github/workflows/build-plugins-macos.yml
deleted file mode 100644
index 8b46fe8..0000000
--- a/.github/workflows/build-plugins-macos.yml
+++ /dev/null
@@ -1,66 +0,0 @@
-name: Build Plugins macOS
-
-on:
- workflow_call:
- inputs:
- matrix:
- type: string
- default: '[{"os":"macos-14","target":"aarch64-apple-darwin","artifact":"plugins-macos-aarch64"},{"os":"macos-15-intel","target":"x86_64-apple-darwin","artifact":"plugins-macos-x86_64"}]'
- workflow_dispatch:
- inputs:
- matrix:
- type: string
- default: '[{"os":"macos-14","target":"aarch64-apple-darwin","artifact":"plugins-macos-aarch64"}]'
-
-env:
- CARGO_TERM_COLOR: always
- MACOSX_DEPLOYMENT_TARGET: "12.0"
-
-jobs:
- build:
- strategy:
- fail-fast: false
- matrix:
- include: ${{ fromJSON(inputs.matrix) }}
-
- runs-on: ${{ matrix.os }}
- timeout-minutes: 60
-
- steps:
- - uses: actions/checkout@v4
- with:
- submodules: recursive
-
- - name: Install Rust toolchain
- uses: dtolnay/rust-toolchain@stable
- with:
- targets: ${{ matrix.target }}
-
- - name: Cache Rust dependencies
- uses: Swatinem/rust-cache@v2
- with:
- key: ${{ matrix.target }}-plugins
-
- - name: Install dependencies
- run: brew list cmake &>/dev/null || brew install cmake
-
- - name: Build plugins
- run: cargo xtask bundle cagire-plugins --release --target ${{ matrix.target }}
-
- - name: Prepare plugin artifacts
- run: |
- mkdir -p staging/clap staging/vst3
- cp -R target/bundled/cagire-plugins.clap staging/clap/
- cp -R target/bundled/cagire-plugins.vst3 staging/vst3/
-
- - name: Upload CLAP artifact
- uses: actions/upload-artifact@v4
- with:
- name: ${{ matrix.artifact }}-clap
- path: staging/clap/
-
- - name: Upload VST3 artifact
- uses: actions/upload-artifact@v4
- with:
- name: ${{ matrix.artifact }}-vst3
- path: staging/vst3/
diff --git a/.github/workflows/build-plugins-rpi.yml b/.github/workflows/build-plugins-rpi.yml
deleted file mode 100644
index 9e07d41..0000000
--- a/.github/workflows/build-plugins-rpi.yml
+++ /dev/null
@@ -1,59 +0,0 @@
-name: Build Plugins RPi
-
-on:
- workflow_call:
- workflow_dispatch:
-
-env:
- CARGO_TERM_COLOR: always
-
-jobs:
- build:
- runs-on: ubuntu-latest
- timeout-minutes: 60
-
- steps:
- - uses: actions/checkout@v4
- with:
- submodules: recursive
-
- - name: Install Rust toolchain
- uses: dtolnay/rust-toolchain@stable
- with:
- targets: aarch64-unknown-linux-gnu
-
- - name: Cache Rust dependencies
- uses: Swatinem/rust-cache@v2
- with:
- key: aarch64-unknown-linux-gnu-plugins
-
- - name: Install cross
- run: cargo install cross --git https://github.com/cross-rs/cross
-
- - name: Build plugins
- run: cross build --release -p cagire-plugins --target aarch64-unknown-linux-gnu
-
- - name: Prepare plugin artifacts
- run: |
- mkdir -p target/bundled
- # CLAP: single .so renamed to .clap
- cp target/aarch64-unknown-linux-gnu/release/libcagire_plugins.so target/bundled/cagire-plugins.clap
- # VST3: correct directory structure
- mkdir -p "target/bundled/cagire-plugins.vst3/Contents/aarch64-linux"
- cp target/aarch64-unknown-linux-gnu/release/libcagire_plugins.so "target/bundled/cagire-plugins.vst3/Contents/aarch64-linux/cagire-plugins.so"
-
- mkdir -p staging/clap staging/vst3
- cp -R target/bundled/cagire-plugins.clap staging/clap/
- cp -R target/bundled/cagire-plugins.vst3 staging/vst3/
-
- - name: Upload CLAP artifact
- uses: actions/upload-artifact@v4
- with:
- name: plugins-linux-aarch64-clap
- path: staging/clap/
-
- - name: Upload VST3 artifact
- uses: actions/upload-artifact@v4
- with:
- name: plugins-linux-aarch64-vst3
- path: staging/vst3/
diff --git a/.github/workflows/build-plugins-windows.yml b/.github/workflows/build-plugins-windows.yml
deleted file mode 100644
index 2890daa..0000000
--- a/.github/workflows/build-plugins-windows.yml
+++ /dev/null
@@ -1,59 +0,0 @@
-name: Build Plugins Windows
-
-on:
- workflow_call:
- workflow_dispatch:
-
-env:
- CARGO_TERM_COLOR: always
-
-jobs:
- build:
- runs-on: windows-latest
- timeout-minutes: 60
-
- defaults:
- run:
- shell: bash
-
- steps:
- - uses: actions/checkout@v4
- with:
- submodules: recursive
-
- - name: Install Rust toolchain
- uses: dtolnay/rust-toolchain@stable
- with:
- targets: x86_64-pc-windows-msvc
-
- - name: Cache Rust dependencies
- uses: Swatinem/rust-cache@v2
- with:
- key: x86_64-pc-windows-msvc-plugins
-
- - name: Install dependencies
- shell: pwsh
- run: |
- choco install cmake --installargs 'ADD_CMAKE_TO_PATH=System'
- echo "C:\Program Files\CMake\bin" >> $env:GITHUB_PATH
-
- - name: Build plugins
- run: cargo xtask bundle cagire-plugins --release --target x86_64-pc-windows-msvc
-
- - name: Prepare plugin artifacts
- run: |
- mkdir -p staging/clap staging/vst3
- cp -R target/bundled/cagire-plugins.clap staging/clap/
- cp -R target/bundled/cagire-plugins.vst3 staging/vst3/
-
- - name: Upload CLAP artifact
- uses: actions/upload-artifact@v4
- with:
- name: plugins-windows-x86_64-clap
- path: staging/clap/
-
- - name: Upload VST3 artifact
- uses: actions/upload-artifact@v4
- with:
- name: plugins-windows-x86_64-vst3
- path: staging/vst3/
diff --git a/.github/workflows/build-plugins.yml b/.github/workflows/build-plugins.yml
deleted file mode 100644
index 3169a9d..0000000
--- a/.github/workflows/build-plugins.yml
+++ /dev/null
@@ -1,18 +0,0 @@
-name: Build Plugins
-
-on:
- workflow_call:
- workflow_dispatch:
-
-jobs:
- linux:
- uses: ./.github/workflows/build-plugins-linux.yml
-
- macos:
- uses: ./.github/workflows/build-plugins-macos.yml
-
- windows:
- uses: ./.github/workflows/build-plugins-windows.yml
-
- rpi:
- uses: ./.github/workflows/build-plugins-rpi.yml
diff --git a/.github/workflows/build-windows.yml b/.github/workflows/build-windows.yml
deleted file mode 100644
index 9aa25e1..0000000
--- a/.github/workflows/build-windows.yml
+++ /dev/null
@@ -1,134 +0,0 @@
-name: Build Windows
-
-on:
- workflow_call:
- inputs:
- run-tests:
- type: boolean
- default: false
- run-clippy:
- type: boolean
- default: false
- build-packages:
- type: boolean
- default: false
- workflow_dispatch:
- inputs:
- run-tests:
- type: boolean
- default: true
- run-clippy:
- type: boolean
- default: true
- build-packages:
- type: boolean
- default: true
-
-env:
- CARGO_TERM_COLOR: always
-
-jobs:
- build:
- runs-on: windows-latest
- timeout-minutes: 60
-
- steps:
- - uses: actions/checkout@v4
- with:
- submodules: recursive
-
- - name: Install Rust toolchain
- uses: dtolnay/rust-toolchain@stable
- with:
- targets: x86_64-pc-windows-msvc
- components: clippy
-
- - name: Cache Rust dependencies
- uses: Swatinem/rust-cache@v2
- with:
- key: x86_64-pc-windows-msvc
-
- - name: Install dependencies
- run: |
- choco install cmake --installargs 'ADD_CMAKE_TO_PATH=System'
- echo "C:\Program Files\CMake\bin" >> $env:GITHUB_PATH
-
- - name: Build
- run: cargo build --release --target x86_64-pc-windows-msvc
-
- - name: Build desktop
- run: cargo build --release --features desktop --bin cagire-desktop --target x86_64-pc-windows-msvc
-
- - name: Test
- if: inputs.run-tests
- run: cargo test --target x86_64-pc-windows-msvc
-
- - name: Clippy
- if: inputs.run-clippy
- run: cargo clippy --target x86_64-pc-windows-msvc -- -D warnings
-
- - name: Bundle CLAP plugin
- if: inputs.build-packages
- run: cargo xtask bundle cagire-plugins --release --target x86_64-pc-windows-msvc
-
- - name: Install NSIS
- if: inputs.build-packages
- run: choco install nsis
-
- - name: Build NSIS installer
- if: inputs.build-packages
- shell: pwsh
- run: |
- $version = (Select-String -Path Cargo.toml -Pattern '^version\s*=\s*"(.+)"' | Select-Object -First 1).Matches.Groups[1].Value
- $root = (Get-Location).Path
- $target = "x86_64-pc-windows-msvc"
- & "C:\Program Files (x86)\NSIS\makensis.exe" `
- "-DVERSION=$version" `
- "-DCLI_EXE=$root\target\$target\release\cagire.exe" `
- "-DDESKTOP_EXE=$root\target\$target\release\cagire-desktop.exe" `
- "-DICON=$root\assets\Cagire.ico" `
- "-DOUTDIR=$root\target" `
- nsis/cagire.nsi
-
- - name: Upload CLI artifact
- if: inputs.build-packages
- uses: actions/upload-artifact@v4
- with:
- name: cagire-windows-x86_64
- path: target/x86_64-pc-windows-msvc/release/cagire.exe
-
- - name: Upload desktop artifact
- if: inputs.build-packages
- uses: actions/upload-artifact@v4
- with:
- name: cagire-windows-x86_64-desktop
- path: target/x86_64-pc-windows-msvc/release/cagire-desktop.exe
-
- - name: Upload installer artifact
- if: inputs.build-packages
- uses: actions/upload-artifact@v4
- with:
- name: cagire-windows-x86_64-installer
- path: target/cagire-*-setup.exe
-
- - name: Prepare plugin artifacts
- if: inputs.build-packages
- shell: bash
- run: |
- mkdir -p staging/clap staging/vst3
- cp -R target/bundled/cagire-plugins.clap staging/clap/
- cp -R target/bundled/cagire-plugins.vst3 staging/vst3/
-
- - name: Upload CLAP artifact
- if: inputs.build-packages
- uses: actions/upload-artifact@v4
- with:
- name: cagire-windows-x86_64-clap
- path: staging/clap/
-
- - name: Upload VST3 artifact
- if: inputs.build-packages
- uses: actions/upload-artifact@v4
- with:
- name: cagire-windows-x86_64-vst3
- path: staging/vst3/
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
deleted file mode 100644
index 0201cc0..0000000
--- a/.github/workflows/ci.yml
+++ /dev/null
@@ -1,28 +0,0 @@
-name: CI
-
-on:
- push:
- tags: ['v*']
-
-concurrency:
- group: ${{ github.workflow }}-${{ github.ref }}
- cancel-in-progress: true
-
-jobs:
- linux:
- uses: ./.github/workflows/build-linux.yml
- with:
- run-tests: true
- run-clippy: true
-
- macos:
- uses: ./.github/workflows/build-macos.yml
- with:
- run-tests: true
- run-clippy: true
-
- windows:
- uses: ./.github/workflows/build-windows.yml
- with:
- run-tests: true
- run-clippy: true
diff --git a/.github/workflows/pages.yml b/.github/workflows/pages.yml
deleted file mode 100644
index 102b94b..0000000
--- a/.github/workflows/pages.yml
+++ /dev/null
@@ -1,59 +0,0 @@
-name: Deploy Website
-
-on:
- push:
- branches: [main]
- workflow_dispatch:
-
-permissions:
- contents: read
- pages: write
- id-token: write
-
-concurrency:
- group: pages
- cancel-in-progress: true
-
-jobs:
- deploy:
- if: github.server_url == 'https://github.com'
- environment:
- name: github-pages
- url: ${{ steps.deployment.outputs.page_url }}
- runs-on: ubuntu-latest
- timeout-minutes: 5
-
- steps:
- - uses: actions/checkout@v4
-
- - name: Setup pnpm
- uses: pnpm/action-setup@v4
- with:
- version: 9
-
- - name: Setup Node.js
- uses: actions/setup-node@v4
- with:
- node-version: 22
- cache: pnpm
- cache-dependency-path: website/pnpm-lock.yaml
-
- - name: Install dependencies
- run: pnpm install
- working-directory: website
-
- - name: Build
- run: pnpm build
- working-directory: website
-
- - name: Setup Pages
- uses: actions/configure-pages@v4
-
- - name: Upload artifact
- uses: actions/upload-pages-artifact@v3
- with:
- path: website/dist
-
- - name: Deploy to GitHub Pages
- id: deployment
- uses: actions/deploy-pages@v4
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
deleted file mode 100644
index 68ce2c2..0000000
--- a/.github/workflows/release.yml
+++ /dev/null
@@ -1,107 +0,0 @@
-name: Release
-
-on:
- workflow_dispatch:
- push:
- tags: ['v*']
-
-concurrency:
- group: ${{ github.workflow }}-${{ github.ref }}
- cancel-in-progress: true
-
-jobs:
- linux:
- if: github.server_url == 'https://github.com'
- uses: ./.github/workflows/build-linux.yml
- with:
- build-packages: true
-
- macos:
- if: github.server_url == 'https://github.com'
- uses: ./.github/workflows/build-macos.yml
- with:
- build-packages: true
- matrix: >-
- [
- {"os":"macos-14","target":"aarch64-apple-darwin","artifact":"cagire-macos-aarch64"},
- {"os":"macos-15-intel","target":"x86_64-apple-darwin","artifact":"cagire-macos-x86_64"}
- ]
-
- windows:
- if: github.server_url == 'https://github.com'
- uses: ./.github/workflows/build-windows.yml
- with:
- build-packages: true
-
- cross:
- if: github.server_url == 'https://github.com'
- uses: ./.github/workflows/build-cross.yml
-
- assemble-macos:
- needs: macos
- uses: ./.github/workflows/assemble-macos.yml
-
- release:
- needs: [linux, macos, windows, cross, assemble-macos]
- if: startsWith(github.ref, 'refs/tags/v') && github.server_url == 'https://github.com'
- runs-on: ubuntu-latest
- timeout-minutes: 10
- permissions:
- contents: write
-
- steps:
- - name: Download all artifacts
- uses: actions/download-artifact@v4
- with:
- path: artifacts
-
- - name: Prepare release files
- run: |
- mkdir -p release
- for dir in artifacts/*/; do
- name=$(basename "$dir")
- if [[ "$name" == "cagire-macos-universal-dmg" ]]; then
- cp "$dir"/*.dmg release/
- elif [[ "$name" == "cagire-macos-universal-pkg" ]]; then
- cp "$dir"/*.pkg release/
- elif [[ "$name" == "cagire-macos-universal-desktop" ]]; then
- cp "$dir/Cagire.app.zip" "release/cagire-macos-universal-desktop.app.zip"
- elif [[ "$name" == "cagire-macos-universal" ]]; then
- cp "$dir/cagire" "release/cagire-macos-universal"
- elif [[ "$name" == "cagire-macos-universal-clap" ]]; then
- cd "$dir" && zip -r "../../release/cagire-macos-universal-clap.zip" cagire-plugins.clap && cd ../..
- elif [[ "$name" == "cagire-macos-universal-vst3" ]]; then
- cd "$dir" && zip -r "../../release/cagire-macos-universal-vst3.zip" cagire-plugins.vst3 && cd ../..
- elif [[ "$name" == *-clap ]]; then
- base="${name%-clap}"
- cd "$dir" && zip -r "../../release/${base}-clap.zip" cagire-plugins.clap && cd ../..
- elif [[ "$name" == *-vst3 ]]; then
- base="${name%-vst3}"
- cd "$dir" && zip -r "../../release/${base}-vst3.zip" cagire-plugins.vst3 && cd ../..
- elif [[ "$name" == *-installer ]]; then
- cp "$dir"/*-setup.exe release/
- elif [[ "$name" == *-appimage ]]; then
- cp "$dir"/*.AppImage release/
- elif [[ "$name" == *-desktop ]]; then
- base="${name%-desktop}"
- if ls "$dir"/*.deb 1>/dev/null 2>&1; then
- cp "$dir"/*.deb "release/${base}-desktop.deb"
- elif [ -f "$dir/Cagire.app.zip" ]; then
- cp "$dir/Cagire.app.zip" "release/${base}-desktop.app.zip"
- elif [ -f "$dir/cagire-desktop.exe" ]; then
- cp "$dir/cagire-desktop.exe" "release/${base}-desktop.exe"
- fi
- else
- if [ -f "$dir/cagire.exe" ]; then
- cp "$dir/cagire.exe" "release/${name}.exe"
- elif [ -f "$dir/cagire" ]; then
- cp "$dir/cagire" "release/${name}"
- fi
- fi
- done
-
- - name: Create Release
- uses: softprops/action-gh-release@v2
- with:
- files: release/*
- generate_release_notes: true
diff --git a/BUILDING.md b/BUILDING.md
index 8646076..930d0d1 100644
--- a/BUILDING.md
+++ b/BUILDING.md
@@ -3,7 +3,7 @@
## Quick Start
```bash
-git clone https://github.com/Bubobubobubobubo/cagire
+git clone https://git.raphaelforment.fr/BuboBubo/cagire
cd cagire
cargo build --release
```
diff --git a/Cargo.toml b/Cargo.toml
index f71d850..358d761 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -6,7 +6,7 @@ version = "0.1.3"
edition = "2021"
authors = ["Raphaël Forment "]
license = "AGPL-3.0"
-repository = "https://github.com/Bubobubobubobubo/cagire"
+repository = "https://git.raphaelforment.fr/BuboBubo/cagire"
homepage = "https://cagire.raphaelforment.fr"
description = "Forth-based live coding music sequencer"
diff --git a/README.md b/README.md
index 2a1b8ac..2ca10c5 100644
--- a/README.md
+++ b/README.md
@@ -8,7 +8,7 @@
Website ·
- GitHub ·
+ Gitea ·
AGPL-3.0
diff --git a/nsis/cagire.nsi b/nsis/cagire.nsi
index 65db774..a44d95c 100644
--- a/nsis/cagire.nsi
+++ b/nsis/cagire.nsi
@@ -51,7 +51,7 @@ Section "Cagire (required)" SecCore
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Cagire" "Publisher" "Raphael Forment"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Cagire" "UninstallString" '"$INSTDIR\uninstall.exe"'
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Cagire" "DisplayIcon" '"$INSTDIR\cagire-desktop.exe"'
- WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Cagire" "URLInfoAbout" "https://github.com/Bubobubobubobubo/cagire"
+ WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Cagire" "URLInfoAbout" "https://git.raphaelforment.fr/BuboBubo/cagire"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Cagire" "HelpLink" "https://cagire.raphaelforment.fr"
WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Cagire" "NoModify" 1
WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Cagire" "NoRepair" 1
diff --git a/website/src/pages/index.astro b/website/src/pages/index.astro
index 8cd90e9..64f09db 100644
--- a/website/src/pages/index.astro
+++ b/website/src/pages/index.astro
@@ -91,7 +91,7 @@ const DL = 'https://dlcagire.raphaelforment.fr';
CLAP · VST3 |
- Source code and issue tracker on GitHub. You can also compile the software yourself from source!
+ Source code and issue tracker on Gitea. You can also compile the software yourself from source!
Documentation
@@ -128,7 +128,7 @@ const DL = 'https://dlcagire.raphaelforment.fr';
- BuboBubo · Audio engine: Doux · GitHub · Docs · AGPL-3.0
+ BuboBubo · Audio engine: Doux · Gitea · Docs · AGPL-3.0