License: LlamaCasty is GPL-3.0-only with section 7 terms (attribution, rename modified versions, no trademark rights); icon + logo all rights reserved; LICENSE + ADDITIONAL-TERMS ship beside the exe; notices + ai.md rewritten off the paid/closed-source framing (Unit: GPL-3.0 licensing)
This commit is contained in:
@@ -619,8 +619,9 @@ This replaces the old five-seeder cluster (`Seed{Starting,Brb,Ending,Chat}Backgr
|
||||
translation was smaller than any workaround). **Verified against Google's own runtime:**
|
||||
`verify_against_mediapipe.py` feeds the same frame to MediaPipe's `ImageSegmenter` (original
|
||||
.tflite) and onnxruntime (our .onnx): max |diff| 5e-5, 100% binary agreement on two images.
|
||||
⛔ Do NOT swap in PINTO model-zoo #109 (it's ML Kit's model, extracted — not Apache provenance) or
|
||||
copy code from obs-backgroundremoval (GPL-3.0).
|
||||
⛔ Do NOT swap in PINTO model-zoo #109 (it's ML Kit's model, extracted — not Apache provenance).
|
||||
obs-backgroundremoval is GPL-3.0 — license-compatible since LlamaCasty went GPL-3.0 (2026-10-09),
|
||||
but none of its code is used; if any is ever borrowed, it needs its copyright notice kept.
|
||||
- **Contract:** input `[1,144,256,3]` RGB /255 NHWC → output `[1,144,256,1]` person probability. The
|
||||
whole frame is stretched (not cropped) to 256×144, so the mask maps back by normalized coordinates.
|
||||
- **Shipping:** `Assets/Models/selfie_segmenter_landscape.onnx` is an **EmbeddedResource** (in git,
|
||||
@@ -1660,14 +1661,28 @@ broadcast insert, prep exception), frame-pump death while live, mic-missing at s
|
||||
saved-session refresh failure (sign-out notice). Deliberately left log-only: offline license re-validation
|
||||
skip (would spam every launch). Still modal by design: SocialsDialog's slot-delete YesNo confirm.
|
||||
|
||||
### Licensing — do not violate (GA = paid product; see `THIRD-PARTY-NOTICES.txt`)
|
||||
### Licensing — do not violate (GPL-3.0 open source since 2026-10-09; see `LICENSE`, `ADDITIONAL-TERMS.md`, `THIRD-PARTY-NOTICES.txt`)
|
||||
|
||||
This product is closed-source and paid. Every third-party component must stay inside the LGPL/BSD/MIT
|
||||
guardrails below — written down so a future "quick fix" never reintroduces a GPL binary. **NEVER:**
|
||||
**LlamaCasty is free software under GPL-3.0-only** (creator ruling 2026-10-09 — free forever, public
|
||||
repo, "GPL-3 with attribution"). Copyright (C) 2026 Gramps. `ADDITIONAL-TERMS.md` carries the three
|
||||
§7 terms: **7(b)** every copy keeps "Based on LlamaCasty by Gramps — https://llamacasty.com" in its
|
||||
About screen; **7(c)** modified versions are marked and renamed; **7(e)** no trademark rights. The
|
||||
**icon + logo files** (`Assets/llamacasty-icon.png/.ico`, `Assets/llamacasty-logo.jpg`) are **all
|
||||
rights reserved, outside the GPL** — verbatim copies may carry them, forks must replace them (this is
|
||||
what keeps the merch brand protected). `LICENSE` + `ADDITIONAL-TERMS.md` ship beside the exe
|
||||
(csproj `None` items); the About panel shows `THIRD-PARTY-NOTICES.txt`, whose header carries the
|
||||
LlamaCasty license notice (GPL §5(d) "Appropriate Legal Notices"). **Source offer (§6):** the public
|
||||
repo URL — add it to the notices header + README the day the repo goes public.
|
||||
|
||||
- **Use a GPL FFmpeg build** — gyan.dev's builds are GPLv3 and ship libx264; BtbN's `gpl` variant is
|
||||
GPL too. GPL in a distributed paid product is the #1 lawsuit risk. Only BtbN `lgpl` / `lgpl-shared`
|
||||
builds are allowed.
|
||||
Every bundled component must stay GPL-3.0-compatible (MIT/BSD/Apache-2.0/LGPL/public domain all are;
|
||||
**GPL-2.0-only and proprietary are not**; Apache-2.0 is fine with GPL-3 but NOT with GPL-2). The
|
||||
rules below predate the GPL switch; where their *reason* was "proprietary product" it is noted, but
|
||||
the rule itself still stands for its other reasons. **NEVER:**
|
||||
|
||||
- **Swap the FFmpeg pin casually** — the BtbN `lgpl-shared` pin is the verified build. A GPL FFmpeg
|
||||
build would now be license-compatible (the old "GPL contaminates the paid product" reason is gone),
|
||||
but changing builds means re-verifying encoders, and libx264 carries no H.264 patent grant (Cisco's
|
||||
covers OpenH264). Keep `lgpl-shared` unless a task says otherwise.
|
||||
- **Distribute the static lgpl build** — LGPLv2.1 §6 wants relinkable object files for static linking.
|
||||
The **shared** (dynamic-DLL) build sidesteps that: compliance is "license text + source offer +
|
||||
unmodified binaries". The pin is `lgpl-shared`; when the pin is refreshed, keep the shared variant.
|
||||
@@ -1684,14 +1699,14 @@ guardrails below — written down so a future "quick fix" never reintroduces a G
|
||||
a reproducible source offer. Record the tag + variant beside the URL (TASKS.md) every time the pin moves.
|
||||
- **Use non-CC0 icon art** — the social bar's bundled SVG logo path data comes from **Simple Icons**
|
||||
(CC0 1.0, public domain — see `THIRD-PARTY-NOTICES.txt`). Replacing or adding logos must stay CC0 or
|
||||
another public-domain source; a logo asset under a copyleft or attribution license would contaminate
|
||||
the paid product. The About hub's logo is the creator's own art ("llama fortnite superman logo",
|
||||
`Assets/llama-logo.png`) — owned by us, so it carries no third-party license either.
|
||||
another public-domain source; a logo asset under an incompatible or attribution-heavy license
|
||||
would complicate every redistribution. The app's icon + logo (`Assets/llamacasty-icon.*`,
|
||||
`Assets/llamacasty-logo.jpg`) are the creator's own art — all rights reserved, outside the GPL
|
||||
(`ADDITIONAL-TERMS.md`).
|
||||
- **Ship an ML model without clean provenance** — the background-effects model (TASK 51) is Google's
|
||||
official MediaPipe Selfie Segmenter download (Apache-2.0, model card), converted by our own script.
|
||||
Model-zoo re-hosts (e.g. PINTO #109 = ML Kit's model, extracted) and GPL plugins
|
||||
(obs-backgroundremoval, GPL-3.0) are off-limits. Apache-2.0 §4 obligations (license notice + "we
|
||||
converted it") live in `THIRD-PARTY-NOTICES.txt`.
|
||||
Model-zoo re-hosts (e.g. PINTO #109 = ML Kit's model, extracted) are off-limits. Apache-2.0 §4
|
||||
obligations (license notice + "we converted it") live in `THIRD-PARTY-NOTICES.txt`.
|
||||
- **Forget the v1 license-texts gate** — `THIRD-PARTY-NOTICES.txt` links the canonical license texts; at
|
||||
**v1 (GA)** the full texts of every license it names MUST ship alongside it (TASK 4 requirement 9 is the
|
||||
release blocker). Queued early is wrong; the release pass owns it.
|
||||
|
||||
Reference in New Issue
Block a user