License ADR
This commit is contained in:
87
reference/decisions/ADR-002-license.md
Normal file
87
reference/decisions/ADR-002-license.md
Normal file
@@ -0,0 +1,87 @@
|
||||
# ADR-002: Use the MIT License
|
||||
|
||||
* **Status:** Accepted
|
||||
* **Date:** 2026-07-29
|
||||
|
||||
## Context
|
||||
|
||||
The project is intended to be an open educational and engineering reference for designing OTA update systems on embedded Linux.
|
||||
|
||||
The repository may contain:
|
||||
|
||||
* documentation;
|
||||
* diagrams;
|
||||
* source code;
|
||||
* scripts;
|
||||
* configuration examples;
|
||||
* reference implementations;
|
||||
* test utilities;
|
||||
* failure-injection experiments.
|
||||
|
||||
The license should allow engineers to study, modify, reuse, and adapt the material in both personal and commercial projects.
|
||||
|
||||
The license should also be familiar, permissive, and easy to understand. The project does not require derivative works to remain open source.
|
||||
|
||||
## Decision
|
||||
|
||||
The repository will be licensed under the MIT License.
|
||||
|
||||
The license will apply to the repository content unless a specific file or third-party component explicitly states otherwise.
|
||||
|
||||
A standard `LICENSE` file containing the MIT License text will be included at the repository root.
|
||||
|
||||
## Alternatives Considered
|
||||
|
||||
### Apache License 2.0
|
||||
|
||||
Apache 2.0 is a permissive license that includes an explicit patent grant and patent retaliation provisions.
|
||||
|
||||
It was not selected because the project is currently an educational reference design rather than a large infrastructure framework or commercially governed software platform.
|
||||
|
||||
The additional legal complexity does not currently provide enough practical benefit over MIT.
|
||||
|
||||
### GNU General Public License
|
||||
|
||||
The GPL would require derivative works distributed under certain conditions to remain under the same license.
|
||||
|
||||
It was not selected because the project is intended to encourage broad reuse, including adoption of ideas and code in commercial embedded products.
|
||||
|
||||
A copyleft requirement could discourage some companies or engineers from using the examples.
|
||||
|
||||
### BSD 2-Clause or BSD 3-Clause License
|
||||
|
||||
The BSD licenses are permissive and would also be suitable for the project.
|
||||
|
||||
They were not selected because MIT is more familiar to many readers, concise, and already consistent with other projects maintained by the author.
|
||||
|
||||
### No Explicit License
|
||||
|
||||
Without a license, the repository would remain protected by copyright by default and other people would not have clear legal permission to reuse the material.
|
||||
|
||||
This would conflict with the educational and open-source goals of the project.
|
||||
|
||||
## Consequences
|
||||
|
||||
### Positive
|
||||
|
||||
* The project can be used in open-source and commercial environments.
|
||||
* Engineers can copy, modify, and redistribute examples.
|
||||
* The license is short and widely understood.
|
||||
* The project remains easy to adopt.
|
||||
* The license is consistent with the author’s other open-source repositories.
|
||||
* Attribution and preservation of the license notice are still required.
|
||||
|
||||
### Negative
|
||||
|
||||
* Modified versions are not required to remain open source.
|
||||
* Improvements may be used commercially without being contributed back.
|
||||
* The license does not include the explicit patent language provided by Apache 2.0.
|
||||
* The software is provided without warranty or liability protection beyond the license terms.
|
||||
|
||||
## Notes
|
||||
|
||||
The repository is a reference design and educational project.
|
||||
|
||||
The MIT License permits reuse but does not imply that the implementation is production-ready, certified, secure for every deployment, or suitable for safety-critical systems.
|
||||
|
||||
These limitations should also be explained in the repository README.
|
||||
Reference in New Issue
Block a user