Files
mikkeli 1dc836dca5 chore: point the placeholder homepage at the org wiki
The Cargo homepage feeds Plugin::URL, which hosts can show to users, so
the placeholder should be somewhere reachable rather than a github.com URL
that never existed.

This retires YOUR-USERNAME and YOUR-PLUGIN-NAME as canonical values, which
is the self-arming STALE mechanism working as designed: both were skipped
while they were part of HOMEPAGE and became live checks the moment they
were not. Both pass, since the whole URL was replaced.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WHt4DykxXaQnyaJfyS8KCn
2026-09-04 16:14:32 +09:00

100 lines
4.2 KiB
Plaintext

# 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 ------------------------------------------------------------
# Defined before the values so the defaults below can use them.
# Package name: lowercased, every run of non-alphanumerics becomes one
# underscore. Cargo accepts hyphens too and maps them to underscores for the
# built artifact, which nih_plug_xtask already handles; underscores are used to
# match the Rust convention.
_derive_pkg() {
printf '%s' "$1" | tr '[:upper:]' '[:lower:]' \
| sed -e 's/[^a-z0-9]\{1,\}/_/g' -e 's/^_//' -e 's/_$//'
}
# Rust type name: CamelCase, non-alphanumerics dropped.
_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="Plugin Name"
VENDOR="Your Name"
EMAIL="your@email.com"
# Cargo's authors entry names whoever wrote it, which is not always the vendor:
# an org ships the plugin, a person authored it. Defaults to VENDOR when the two
# are the same, which is the common case for a one-person project.
# AUTHOR="Your Name"
HOMEPAGE="https://wiki.novoyuuparosk.org"
DESCRIPTION="A minimal NIH-plug audio plugin"
# What the plugin does *now*. No codename, no "prototype", no "v2 rewrite" -
# hosts show this to users who never knew any of that. check-branding.sh
# enforces the mechanical half by rejecting retired names and the repo codename.
CLAP_DESCRIPTION="Your plugin description"
# --- frozen identity ---------------------------------------------------------
# Hosts key saved projects and presets off these two. Change either and every
# existing session silently loses the plugin: the track comes up empty, with no
# error. Choose once before the first release, then never again.
# brand-plugin.sh refuses to move them without --allow-identity-change.
CLAP_ID="com.your-domain.plugin-name"
VST3_CLASS_ID="Unique16CharId!!"
# --- fixed at repo creation --------------------------------------------------
# The repository's own name. Deliberately NOT renamed when the plugin is: the
# repo keeps its development codename while the plugin gets a product name.
# Recorded only so it can be kept out of user-facing text.
CODENAME="nih-plug-template"
# Where the two Rust types are defined. A plugin whose params outgrow lib.rs
# points PARAMS_FILE at src/params.rs.
LIB_FILE="src/lib.rs"
PARAMS_FILE="src/lib.rs"
# --- derived unless overridden -----------------------------------------------
# Set one only when the derivation is wrong or rejected - a name like
# "206 Prototype" derives to "206_prototype", which cargo refuses because a
# package name cannot start with a digit.
#
# This template overrides three of them, which a real plugin usually will not:
# its package and type names are the template's own rather than derived from a
# product name. Delete these three lines after renaming and the derivations
# from PLUGIN_NAME take over.
PKG="plugin_name"
STRUCT="PluginName"
PARAMS_STRUCT="PluginNameParams"
# DISPLAY="Plugin Name" # 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 -------------------------------------------------------
# Must no longer appear in tracked files. An entry is skipped while it is still
# part of a canonical value above and arms the moment it stops being one, so a
# rename is self-checking in both directions. brand-plugin.sh appends here.
STALE="nih_plug_template
MyPlugin
PluginParams
A minimal NIH-plug audio plugin
Your plugin description
Plugin Name
Your Name
your@email.com
com.your-domain.plugin-name
Unique16CharId!!
YOUR-USERNAME
YOUR-PLUGIN-NAME
your-domain
https://github.com/YOUR-USERNAME/YOUR-PLUGIN-NAME
nih_plug_template
PluginParams
MyPlugin"