feat: adopt the template's branding toolkit
Replaces the single check-branding.sh with the four-file toolkit from
musiikki/nih-plug-template, moved under tools/ alongside where the deploy
scripts will eventually live.
The two scripts are byte-identical to the template's; everything specific
to this plugin lives in tools/branding.conf and tools/branding-sites.tsv.
That is the point of the split: syncing an improvement is now a file copy
rather than a shell merge, which is what the last two syncs had become.
This repo's data differs from the template's in ways that exercise the
design rather than fight it: params live in src/params.rs rather than
src/lib.rs, deploy.ps1 exists so its three rows check instead of skip, and
the CI bundle command carries no --features flag because VST3 is always on
here. All of that is table data now, not forked shell.
Nothing needed overriding: PKG, STRUCT and PARAMS_STRUCT all derive
correctly from PLUGIN_NAME ("Bari 206" -> bari_206 / Bari206 /
Bari206Params). AUTHOR is pinned because this plugin separates the person
who wrote it from the organisation that vends it — a distinction the
template could not express until integrating here surfaced it.
Adopting it required two upstream fixes, both made in the template first
so the scripts stay identical: cargo AUTHOR as a value distinct from
Plugin::VENDOR, and site patterns narrowed to the smallest distinctive
fragment after this repo's rustfmt-wrapped CLAP_DESCRIPTION proved a
statement-spanning pattern cannot match correctly formatted source.
CI is repointed at tools/check-branding.sh, and its path filter widened to
tools/** — the old filter named a file that no longer exists, so a change
to the toolkit would have triggered no CI at all.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WHt4DykxXaQnyaJfyS8KCn
This commit is contained in:
@@ -0,0 +1,66 @@
|
||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
||||
# branding.conf - this plugin's canonical identity.
|
||||
#
|
||||
# Managed by tools/brand-plugin.sh, read by tools/check-branding.sh. Hand-editing
|
||||
# works and is sometimes the quickest thing, but the helper is what keeps this
|
||||
# file, the source tree and tools/branding-sites.tsv agreeing with each other.
|
||||
# Edit here and you are on the hook for running the checker afterwards.
|
||||
|
||||
# --- derivations ------------------------------------------------------------
|
||||
_derive_pkg() {
|
||||
printf '%s' "$1" | tr '[:upper:]' '[:lower:]' \
|
||||
| sed -e 's/[^a-z0-9]\{1,\}/_/g' -e 's/^_//' -e 's/_$//'
|
||||
}
|
||||
_derive_struct() {
|
||||
printf '%s' "$1" | sed -e 's/[^A-Za-z0-9]\{1,\}/ /g' \
|
||||
| awk '{for(i=1;i<=NF;i++) printf "%s%s", toupper(substr($i,1,1)), substr($i,2); print ""}'
|
||||
}
|
||||
|
||||
# --- the names ---------------------------------------------------------------
|
||||
PLUGIN_NAME="Bari 206"
|
||||
VENDOR="Novoyuuparosk"
|
||||
EMAIL="mikkeli@novoyuuparosk.org"
|
||||
AUTHOR="Mikkeli Matlock"
|
||||
HOMEPAGE="https://github.com/mikkeli/codename-206"
|
||||
DESCRIPTION="A VST3/CLAP multiband compressor/limiter with a custom gain-curve display"
|
||||
|
||||
# What the plugin does *now*. No codename, no development stage.
|
||||
CLAP_DESCRIPTION="Multiband compressor/limiter (stage 3: 3-band + 'All' channel)"
|
||||
|
||||
# --- frozen identity ---------------------------------------------------------
|
||||
# Hosts key saved projects and presets off these two. Never move them after the
|
||||
# first release: every existing session silently loses the plugin.
|
||||
CLAP_ID="org.novoyuuparosk.bari-206"
|
||||
VST3_CLASS_ID="Bari206Multiband"
|
||||
|
||||
# --- fixed at repo creation --------------------------------------------------
|
||||
# The repo keeps its development codename while the plugin carries the product
|
||||
# name. Recorded only so it can be kept out of user-facing text.
|
||||
CODENAME="codename-206"
|
||||
|
||||
LIB_FILE="src/lib.rs"
|
||||
PARAMS_FILE="src/params.rs"
|
||||
|
||||
# --- derived unless overridden -----------------------------------------------
|
||||
# PKG, STRUCT and PARAMS_STRUCT all derive correctly from PLUGIN_NAME here, so
|
||||
# none is pinned. DISPLAY defaults to PLUGIN_NAME.
|
||||
: "${AUTHOR:=$VENDOR}"
|
||||
: "${DISPLAY:=$PLUGIN_NAME}"
|
||||
: "${PKG:=$(_derive_pkg "$PLUGIN_NAME")}"
|
||||
: "${STRUCT:=$(_derive_struct "$PLUGIN_NAME")}"
|
||||
: "${PARAMS_STRUCT:=${STRUCT}Params}"
|
||||
|
||||
# --- retired spellings -------------------------------------------------------
|
||||
STALE="codename_206
|
||||
Codename 206
|
||||
Codename206
|
||||
Codename206Params
|
||||
Codename206Maxi!
|
||||
206 prototype
|
||||
com.mikkeli.codename-206
|
||||
bari_206
|
||||
Bari 206
|
||||
Bari206
|
||||
Bari206Params
|
||||
Bari206Multiband
|
||||
org.novoyuuparosk.bari-206"
|
||||
Reference in New Issue
Block a user