From 6ee5081915c194155d8a759a2ba9c100752b844a Mon Sep 17 00:00:00 2001 From: bluedotiya <75704012+ChefControl@users.noreply.github.com> Date: Tue, 27 Oct 2026 21:42:49 +0200 Subject: [PATCH 1/2] Open-source licences in Credits, and the build stops on GPL code (#149) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The build looks at which packages' code it put in the bundle, writes their licence texts to licences.txt beside the game, and lists them under Settings → Credits & Copyrights. It fails on a GPL, LGPL or AGPL licence, or one it can't read, unless the owner approved it (APPROVED in tools/licences.ts). The Electron build can hand in its own notices (Electron, Chromium, ffmpeg) as extra ones, checked the same way. Co-Authored-By: Claude Opus 5.5 --- .github/workflows/deploy.yml | 3 +- index.html | 4 + test/licences.test.ts | 71 ++++++++++++ test/node.d.ts | 10 +- tools/licences.ts | 173 +++++++++++++++++++++++++++++ tools/licences/Apache-2.0.txt | 202 ++++++++++++++++++++++++++++++++++ vite.config.ts | 3 +- 7 files changed, 462 insertions(+), 4 deletions(-) create mode 100644 test/licences.test.ts create mode 100644 tools/licences.ts create mode 100644 tools/licences/Apache-2.0.txt diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 4b1af02..480d133 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -69,7 +69,8 @@ jobs: retention-days: 30 # Stage 3 is open to players (src/flags.ts). To take it back, set 'off' and push: saves that have met Mr. Fugu # keep it on. The web game has Buy me a coffee (Ko-fi, src/flags.ts); it's off in any build that doesn't say so, - # the Steam build's included. + # the Steam build's included. The build also lists the open-source licences of what it bundled, and stops on a GPL, + # LGPL or AGPL one, or one it can't read, that the owner hasn't approved (tools/licences.ts). - run: npm run build env: VITE_STAGE3: 'on' diff --git a/index.html b/index.html index 945eff6..0863c7e 100644 --- a/index.html +++ b/index.html @@ -1511,6 +1511,10 @@

The ring's crowd

  • Murmur: “Crowd of 50-60 People #1” and “#2” by Joseph Sardin, BigSoundBank, CC0; layered and looped.
  • Applause: “Applause: 150 People” by Joseph Sardin, BigSoundBank, CC0.
  • +

    Open-source licences

    +