- Split up `gps-generic-module` into: - `gps-generic-module` that contains only interfaces/configs/bindings (Apache license) - `gps-meshtastic-module` that contains an implementation (GPL license) - Update `LICENSE.md` for changes, but also added clarifications - Added licenses to directories where they were missing - Changed license of some test projects from GPL to Apache.
3.9 KiB
License Grant
Definitions
"external apps" or "external applications" refers to applications that are built with the TactilitySDK. These applications are not part of the Tactility operating system's main firmware.
"end-users" refers to people who install and/or use Tactility software on their devices.
"subproject" refers to any project or dependency within the Tactility project.
Intentions
The intentions behind picking the licenses for the subprojects:
- Forks of the entire Tactility project required to be open source as: GPL v3.0 applies to the main firmware projects (see
Firmware/andTactility/). - It should be possible to make closed source external applications using TactilitySDK and the libraries it includes (it must exclude software with a GPL license).
- It should be possible to make closed source forks that only contain TactilityKernel, the platform implementations (
Platforms/*) and most of the device and driver implementations. As few as possible driver and device combinations should prevent this.
Summary
IMPORTANT: Make sure you double-check the license(s) of each subproject if you intend to make a derived project that is not offered with a GPL license.
IMPORTANT: This document may have inaccuracies. It mainly exists to create awareness about license differences.
The top-level projects Firmware/ and Tactility/ are licensed under GPL v3.0.
Most drivers have an Apache License v2.0, but exceptions such as Drivers/gps-meshtastic-module/ exist.
Licensing may also differ for subprojects intended for use in external applications.
All projects under Modules/ have an Apache license.
Overview
| Project | License |
|---|---|
| Tactility | GNU Public License v3.0 |
| TactilityC | Apache License v2.0 |
| TactilityFreeRTOS | Apache License v2.0 |
| TactilityKernel | Apache License v2.0 |
| Tests | (varies) |
| Devices/* | GNU Public License v3.0 |
| Drivers/* | (varies) |
| Modules/* | Apache License v2.0 |
| DevicetreeCompiler | Apache License v2.0 |
| Platforms/* | Apache License v2.0 |
Subprojects and directories in this project can contain license files.
The presence of such a license file indicates that this license applies to all the files and folders that are contained by the folder at the level where the license file resides.
Logo
The Tactility logo copyrights are owned by Ken Van Hoeylandt.
Logo usage is permitted in these scenarios:
- News, blog posts, articles and documentation that write about the official Tactility project.
- Firmwares built with unmodified source code from the official repository can be redistributed with the Tactility logo.
- Personal use for local builds that contain Tactility source code (original or modified), and aren't re-distributed online.
Logo usage is forbidden in all other scenarios unless an exception was granted by the author. For other usages or exceptions, contact me.
Practical examples:
- A blog post about Tactility can use screenshots and the logo itself when writing about Tactility
- A developer who forked Tactility to merge new features or fixes to the official Tactility repository is allowed to make builds with the logo, as long as these builds are not re-distributed to end-users.
Third Party Notices
Third-party licenses and copyrights are listed in THIRD-PARTY-NOTICES.md.
FAQ
- Q: Can I build closed source applications?
- A: If the applications were built with the Tactility SDK, then they can have a proprietary license. Applications inside the Tactility firmware can't be released with a proprietary license.