ADR-004: Mozilla Public License for Codebase
Status: Accepted
Date: 2025-06-23
Authors: Piotr Brzozowski
Reviewers: Piotr Brzozowski
Mozilla Public License 2.0 (MPL 2.0) is adopted for the Entirius codebase to provide file-level copyleft protection while enabling commercial use and proprietary extensions. This balances open-source community protection with business-friendly licensing for commercial adoption.
- All source files include MPL 2.0 license header
- LICENSE file in repository root contains full MPL 2.0 text
- Any modifications to MPL-licensed files must be released under MPL 2.0
- Proprietary additions can use different licenses
- Attribution preserved in all derivative works
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
- File-level copyleft: Modifications to MPL files must remain open-source
- Proprietary extensions: New files can use proprietary licenses
- Commercial use: Full commercial use and distribution permitted
- Patent protection: License includes explicit patent grant
Entirius is positioned as an open-source e-commerce AI platform that needs to balance open-source principles with commercial viability. The choice of software license directly impacts:
- Community adoption and contributions
- Commercial use and monetization strategies
- Legal obligations for users and contributors
- Integration capabilities with other software
- Long-term sustainability of the project
Key considerations:
- Open-source e-commerce platform targeting businesses
- Need for community-driven development
- Commercial services and support model planned
- Integration with various third-party systems
- Modular architecture requiring flexible licensing (ADR-001)
- Balance between openness and protecting core innovations
- Description: Permissive license allowing unrestricted use, modification, and distribution
- Pros:
- Maximum adoption potential due to minimal restrictions
- Compatible with all other licenses
- Simple and well-understood
- Encourages commercial adoption
- No copyleft requirements
- Cons:
- No protection against proprietary forks
- Contributors’ improvements may not benefit the community
- No guarantee of reciprocal contributions
- Potential for large corporations to create competing closed-source versions
- Impact on system: Maximizes adoption but reduces control over derivative works
- Description: Strong copyleft license requiring derivative works to be open-source
- Pros:
- Ensures all derivatives remain open-source
- Strong community protection
- Prevents proprietary forks
- Patent protection clauses
- Guarantees continued openness
- Cons:
- Restrictive for commercial integrations
- May discourage business adoption
- Incompatible with many proprietary systems
- Complex compliance requirements
- Potential barrier to enterprise adoption
- Impact on system: Strong protection but may limit commercial viability
- Description: Permissive license with patent protection and attribution requirements
- Pros:
- Patent protection for users
- Permissive like MIT but with legal protections
- Well-suited for enterprise adoption
- Clear contribution guidelines
- Compatible with most licenses
- Cons:
- No copyleft protection
- Allows proprietary forks
- More complex than MIT
- No guarantee of reciprocal contributions
- Impact on system: Good balance but lacks copyleft benefits
- Description: Weak copyleft license requiring modifications to licensed files to remain open-source
- Pros:
- File-level copyleft protects core improvements
- Allows proprietary additions and integrations
- Business-friendly for commercial use
- Encourages contribution of improvements
- Compatible with GPL and other licenses
- Balances openness with commercial viability
- Cons:
- More complex than permissive licenses
- Less familiar to some developers
- Compliance requires careful file management
- Weaker protection than full GPL
- Impact on system: Optimal balance for modular architecture and commercial strategy
Chosen option: Mozilla Public License 2.0 (MPL)
Key decision factors:
- Balanced approach: File-level copyleft protects core improvements while allowing proprietary extensions
- Modular compatibility: Works well with modular monolith architecture where modules can have different licensing needs
- Commercial viability: Enables commercial services and proprietary integrations without full GPL restrictions
- Community protection: Ensures improvements to core files benefit the entire community while encouraging business adoption
- Risk analysis: Moderate legal complexity balanced by clear file-level copyleft rules and wide acceptance
- Business impact: Supports both open-source community growth and commercial business models
- Compatibility: Works with various third-party components, enterprise systems, and licensing strategies
