9c0e31d783
Apache-2.0 was the wrong declaration for two independent reasons. Enabling the `vst3` feature links vst3-sys, which is GPLv3-or-later by its own authors' choice — they describe their port as a derivative of Steinberg's SDK that "was not made in isolation", so the obligation holds regardless of any question about Steinberg's own rights. Gating the feature kept the default build clean, but plugins built from this template are intended to ship VST3, so GPL is where they land anyway. Declaring it up front is more honest than deferring the decision to every clone. Separately, parts of src/lib.rs derive from Robbert van der Helm's NIH-plug cookiecutter template and its `gain` example, both ISC. ISC's one condition is that its copyright and permission notice travel with all copies, and this repo carried neither — a compliance gap that existed regardless of the GPL question. ISC is GPL-compatible, so the notice is retained in a new NOTICE file rather than superseded. The `vst3` feature stays opt-in, but its rationale changes: it is no longer about licence compliance, only about not pulling a sizeable dependency into a CLAP-only build. The Cargo.toml comment said otherwise and would have misled the next reader. Also corrects the README's claim that you must "accept Steinberg's VST3 SDK licence". No SDK source is vendored or redistributed here, so there is nothing to accept at build time. The real constraint is vst3-sys's GPLv3, plus Steinberg's separate trademark in "VST" — a different regime from copyright that no source licence resolves. Copyright in the Irene <irene@novoyuuparosk.org> commits is held by the repository owner (an agent identity), so no third-party agreement was needed for this relicense. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01WHt4DykxXaQnyaJfyS8KCn
41 lines
1.4 KiB
TOML
41 lines
1.4 KiB
TOML
[package]
|
|
name = "nih_plug_template"
|
|
version = "0.1.0"
|
|
edition = "2021"
|
|
authors = ["Your Name <your@email.com>"]
|
|
homepage = "https://github.com/YOUR-USERNAME/YOUR-PLUGIN-NAME"
|
|
description = "A minimal NIH-plug audio plugin"
|
|
license = "GPL-3.0-or-later"
|
|
|
|
[workspace]
|
|
members = ["xtask"]
|
|
|
|
[features]
|
|
# CLAP only by default. This crate is GPL-3.0-or-later, so enabling VST3 no
|
|
# longer raises a licensing question — the gate now just keeps the default build
|
|
# light, since `vst3-sys` and its macro machinery are a sizeable dependency a
|
|
# CLAP-only plugin never needs. Flip `default` to ["vst3"] if you always want it:
|
|
# cargo xtask bundle nih_plug_template --release --features vst3
|
|
default = []
|
|
vst3 = ["nih_plug/vst3"]
|
|
|
|
[lib]
|
|
# `cdylib` is the plugin binary; `lib` (rlib) lets `cargo test` link the unit tests.
|
|
crate-type = ["cdylib", "lib"]
|
|
|
|
[dependencies]
|
|
# Pinned to the same commit as musiikki/codename-206.
|
|
# Update the `rev` when you want to update NIH-plug.
|
|
# `default-features = false` drops nih_plug's default `vst3` feature; see [features] above.
|
|
nih_plug = { git = "https://github.com/robbert-vdh/nih-plug.git", rev = "f36931f7af4646065488a9845d8f8c2f95252c23", default-features = false, features = ["assert_process_allocs"] }
|
|
nih_plug_egui = { git = "https://github.com/robbert-vdh/nih-plug.git", rev = "f36931f7af4646065488a9845d8f8c2f95252c23" }
|
|
|
|
[profile.release]
|
|
lto = "thin"
|
|
strip = "symbols"
|
|
|
|
[profile.profiling]
|
|
inherits = "release"
|
|
debug = true
|
|
strip = "none"
|