Files
wadamesh/CONTRIBUTING.md
T
Kaj SchittecatandClaude Opus 4.8 a85209d68c license: relicense wadamesh under GPL-3.0-or-later + OSS scaffolding
Adopt copyleft for the touch UI so distributed builds and forks must stay open
(the Meshtastic model — concentrates community effort instead of fragmenting into
closed forks), per the project direction.

- LICENSE: MIT -> full GPL-3.0 text
- NOTICE: third-party attributions; preserves MeshCore's MIT notice (MIT is
  GPL-compatible). The MeshCore *fork* wadamesh builds against stays MIT so its
  Wi-Fi/BLE hooks remain upstreamable.
- CONTRIBUTING.md: inbound=outbound GPL, DCO sign-off, SPDX headers, one-topic
  PRs, prefer libraries, don't regress shipping boards.
- README: license + contributing sections.

GPL-3.0 (not v2) chosen for firmware: anti-tivoization keeps it user-installable,
and it's the only GPL compatible with Apache-2.0 deps (NimBLE).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Signed-off-by: Kaj Schittecat <kaj@schittecat.com>
2026-06-12 23:16:38 +02:00

51 lines
1.9 KiB
Markdown

# Contributing to wadamesh
Thanks for your interest — wadamesh is open and collaborative by design, and
contributions are very welcome.
## License of contributions
wadamesh is licensed under **GPL-3.0-or-later** (see [LICENSE](LICENSE)). By
submitting a contribution you agree that it is licensed under the same terms
(inbound = outbound). This keeps every build and fork open.
Sign off your commits to certify you wrote (or have the right to submit) the
change, per the [Developer Certificate of Origin](https://developercertificate.org/):
```
git commit -s -m "..." # adds a Signed-off-by line
```
New source files should carry an SPDX header:
```c
// SPDX-License-Identifier: GPL-3.0-or-later
```
Files derived from MeshCore keep their original **MIT** header — don't relicense
upstream code; only your own additions are GPL.
## How we work
A few principles (borrowed from how this project is built):
- **One topic per pull request.** Small, focused changes that do one thing are
easy to review and easy to revert. Open a separate PR per concern.
- **Discuss next steps, keep the actual change scoped.** It's great to note what
could come next — just don't bundle it into the same diff.
- **Prefer pulling in a library over hand-rolling.** If a maintained library
solves it, depend on it (and add it to [NOTICE](NOTICE)) rather than reinventing.
- **Don't regress what ships.** wadamesh runs on real devices; changes should keep
both boards (LilyGo T-Deck and Heltec V4 TFT) building and behaving.
## Building
The firmware is a PlatformIO project that depends on a MeshCore fork via
`lib_deps`. Build/flash instructions land in the README as the split from
meshcomod completes. In the meantime, open an issue if you'd like to help.
## Reporting issues
Bug reports and feature ideas are welcome in the issue tracker — please include
your board, firmware version, and steps to reproduce.