Skip to content

docs: state the real licence - #2

Merged
MotherSphere merged 1 commit into
mainfrom
chore/relicense-gpl-3.0-or-later
Aug 1, 2026
Merged

docs: state the real licence#2
MotherSphere merged 1 commit into
mainfrom
chore/relicense-gpl-3.0-or-later

Conversation

@MotherSphere

Copy link
Copy Markdown
Member

The LICENSE file has always held the verbatim FSF GPL-3.0 text, inherited
byte-for-byte from jsnli/Samira. The README contradicted it outright,
claiming "MIT, matching upstream" - false twice over, since upstream Samira
is GPL-3.0 too and never was MIT. Anyone taking the README at its word would
have redistributed GPL code under permissive terms.

README.md: replace the MIT claim with GPL-3.0, and record why. Also expand the
Samira credit - calling it the "original implementation" understated a
relationship where the VDF parser, the Steamworks integration and the shape of
the Rust backend are still largely upstream's code, which is what makes the
copyleft carry forward in the first place.

package.json, src-tauri/Cargo.toml: both shipped with no license field at
all, so the only machine-readable answer was the README's wrong one. Declare
GPL-3.0 in each.

On the SPDX string: plain GPL-3.0, not GPL-3.0-or-later. Upstream ships
the bare GPLv3 text with no "or any later version" notice applied to the
program, and section 14 of that text grants the option of following a later
version only "If the Program specifies that a certain numbered version of the
GNU General Public License 'or any later version' applies to it". It does not.
The fallback in the next paragraph - "If the Program does not specify a
version number ... you may choose any version ever published" - is at best
arguable here, since shipping the v3 text does identify a version. Rather than
resolve that against the upstream author's silence, the version-neutral string
claims nothing either way.

Not touched: LICENSE itself (already the correct verbatim GPL-3.0 text, and
identical to upstream's), colony.json (the Colony manifest schema has no
licence field), the Valve Steamworks SDK note in bootstrap.rs, and the MIT
entries in package-lock.json, which are third-party dependency metadata.

The LICENSE file has always held the verbatim FSF GPL-3.0 text, inherited
byte-for-byte from jsnli/Samira. The README contradicted it outright,
claiming "MIT, matching upstream" - false twice over, since upstream Samira
is GPL-3.0 too and never was MIT. Anyone taking the README at its word would
have redistributed GPL code under permissive terms.

README.md: replace the MIT claim with GPL-3.0, and record why. Also expand the
Samira credit - calling it the "original implementation" understated a
relationship where the VDF parser, the Steamworks integration and the shape of
the Rust backend are still largely upstream's code, which is what makes the
copyleft carry forward in the first place.

package.json, src-tauri/Cargo.toml: both shipped with no `license` field at
all, so the only machine-readable answer was the README's wrong one. Declare
GPL-3.0 in each.

On the SPDX string: plain `GPL-3.0`, not `GPL-3.0-or-later`. Upstream ships
the bare GPLv3 text with no "or any later version" notice applied to the
program, and section 14 of that text grants the option of following a later
version only "If the Program specifies that a certain numbered version of the
GNU General Public License 'or any later version' applies to it". It does not.
The fallback in the next paragraph - "If the Program does not specify a
version number ... you may choose any version ever published" - is at best
arguable here, since shipping the v3 text does identify a version. Rather than
resolve that against the upstream author's silence, the version-neutral string
claims nothing either way.

Not touched: LICENSE itself (already the correct verbatim GPL-3.0 text, and
identical to upstream's), colony.json (the Colony manifest schema has no
licence field), the Valve Steamworks SDK note in bootstrap.rs, and the MIT
entries in package-lock.json, which are third-party dependency metadata.
@MotherSphere
MotherSphere merged commit a90192d into main Aug 1, 2026
7 checks passed
@MotherSphere
MotherSphere deleted the chore/relicense-gpl-3.0-or-later branch August 1, 2026 10:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant