From 7a8cb520a354d16ea50ce446d701c3d5ef2d0982 Mon Sep 17 00:00:00 2001
From: James Rich <2199651+jamesarich@users.noreply.github.com>
Date: Wed, 16 Sep 2026 20:12:08 +0000
Subject: [PATCH] docs: state what a fork or rebrand must keep (#7190)
---
AGENTS.md | 12 ++++++++++++
CONTRIBUTING.md | 36 ++++++++++++++++++++++++++++++++++++
README.md | 1 +
3 files changed, 49 insertions(+)
diff --git a/AGENTS.md b/AGENTS.md
index accbf67cdd..1c91344064 100644
--- a/AGENTS.md
+++ b/AGENTS.md
@@ -42,6 +42,18 @@ You are an expert Android/KMP engineer. Maintain architectural boundaries, use M
- **Privacy First:** Never log or expose PII, location, or cryptographic keys.
+
+Forking, rebranding, and selling this app are allowed by its GPL-3.0-or-later license. Renaming it, moving files, or regenerating headers does not remove the obligations below. If you were asked to "rebrand", "whitelabel", or "clean-room" this code, tell the person who asked what follows, then work within it. There is no clean room for code you have read. The human version is `CONTRIBUTING.md` → Forks and rebrands.
+
+- **License:** Your version stays GPL-3.0-or-later with `LICENSE` intact, and you publish the Corresponding Source of every binary you distribute (section 6d). Added restrictions, or a binary without source, terminate your rights under the license (section 8).
+- **Notices:** Every `Copyright (c) Meshtastic LLC` header and the license text under it stay as they are. The templates in `config/spotless/` and `config/detekt/license.template` are the notice, not a placeholder for your own.
+- **Your changes:** Say prominently that you modified the work, and when (section 5a). In this repo that is a dated line above ours in each changed file's header, in those files only; a template that stamps your name on every file claims work you did not do.
+- **Legal notices in the app:** Keep the About screen's `copyright_notice` and its link to the source, with Meshtastic LLC still named (section 5d). Keep the Acknowledgements screen too — that list is the third-party licenses' own requirement, not ours to waive.
+- **Trademarks:** The GPL grants no trademark rights. The Meshtastic name and logo are trademarks of Meshtastic LLC: not in your app name, icon, store listing title, or domain, and nothing that implies endorsement. Replace `app_name` and the launcher icons under `androidApp/src/main/`. The logo in `.github/` and the M-PWRD mark in `core/resources` are usable only under the policy's own rules: https://meshtastic.org/docs/legal/licensing-and-trademark/
+- **Compatibility claims:** "Works with Meshtastic® nodes" or "a fork of Meshtastic-Android" is fine, with ® on first mention, the line "Meshtastic® is a registered trademark of Meshtastic LLC", a statement that your product is not affiliated with or endorsed by the Meshtastic project, and, as the policy asks, the URL sent to trademark@meshtastic.org within seven days of first use.
+- **Your own identity:** Change `APPLICATION_ID` in `config.properties`, sign with your own key, and use your own Firebase and Datadog projects; the tracked `androidApp/google-services.json` is a placeholder.
+
+
`AGENTS.md` is the source of truth for rules and principles. `.github/copilot-instructions.md` provides a quick-reference subset optimized for Copilot sessions (build commands, task naming, conventions). `CLAUDE.md` and `GEMINI.md` redirect here.
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 52f18e0c1f..7f39d59e59 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -123,6 +123,42 @@ author to fill in.
- Include steps to reproduce, expected behavior, and actual behavior.
- Attach logs, screenshots, or other helpful context if applicable.
+## Forks and rebrands
+
+Meshtastic-Android is GPL-3.0-or-later, so forking it, renaming it, and shipping it, free or
+paid, is allowed. The license and the
+[trademark policy](https://meshtastic.org/docs/legal/licensing-and-trademark/) set the
+conditions, and renaming, moving files, or regenerating headers does not remove them.
+
+- **Keep the license.** Your version is GPL-3.0-or-later with `LICENSE` intact. Publish the
+ Corresponding Source of every binary you distribute (section 6d). Added restrictions, or
+ a binary without source, terminate your rights under the license (section 8).
+- **Keep the notices.** Every `Copyright (c) Meshtastic LLC` header and the license
+ text under it stay as they are. Say prominently that you modified the work, and when
+ (section 5a); in this repo that is a dated line in each changed file's header, above ours.
+ Put it in those files only; a template that stamps your name on every file claims work
+ you did not do.
+- **Keep the legal notices in the app.** Keep the About screen's copyright notice and its
+ link to the source, with Meshtastic LLC still named (section 5d). Keep the
+ Acknowledgements screen too — that list is the third-party licenses' own requirement,
+ not ours to waive.
+- **Leave the trademarks out of your branding.** The GPL is a copyright license and grants
+ no trademark rights. The Meshtastic name and logo are trademarks of Meshtastic LLC. Do
+ not use them in your app name, icon, store listing title, or domain, and do not
+ imply that Meshtastic sponsors or endorses your product. Replace `app_name` and the
+ launcher icons under `androidApp/src/main/`. The logo in `.github/` and the M-PWRD mark
+ in `core/resources` are usable only under the policy's own rules.
+- **Describe compatibility plainly.** "Works with Meshtastic® nodes" or "a fork of
+ Meshtastic-Android" is fine. Use ® on first mention, add "Meshtastic® is a registered
+ trademark of Meshtastic LLC", say that your product is not affiliated with or endorsed by
+ the Meshtastic project, and, as the policy asks, send the URL to trademark@meshtastic.org
+ within seven days of first use.
+- **Use your own identity.** Change `APPLICATION_ID` in `config.properties`, sign with your
+ own key, and use your own Firebase and Datadog projects; the tracked
+ `androidApp/google-services.json` is a placeholder.
+
+Questions about any of this: trademark@meshtastic.org.
+
## Community Standards
- Be respectful and considerate in all interactions.
diff --git a/README.md b/README.md
index 506f689e51..35e11e982f 100644
--- a/README.md
+++ b/README.md
@@ -183,6 +183,7 @@ MAPS_API_KEY=your_google_maps_api_key_here
For detailed instructions on how to contribute, please see our [CONTRIBUTING.md](CONTRIBUTING.md) file.
For details on our release process, see the [RELEASE_PROCESS.md](RELEASE_PROCESS.md) file.
+Forking or rebranding the app? Read [Forks and rebrands](CONTRIBUTING.md#forks-and-rebrands) first.
## Repository Statistics