AOCL > Tree [59b3b26]

/aocl.txt/

..
View Raw
The text of the AuraGem Opensource Copyleft License itself is:
Copyright © 2025 Christian Lee Seibold. All rights reserved.

Permission is hereby granted to copy and distribute verbatim copies of this license document. Modification of this license document is forbidden, as specified in Section 6 of this license.

The name "AuraGem Opensource Copyleft License™" may only be used to refer to this license and may not be used to refer to any modified version of this license or any other license.

---

# AuraGem Opensource Copyleft License (AOCL)

## Preamble

The AuraGem Opensource Copyleft License (AOCL) is designed to provide a balanced approach to copyleft that ensures modifications to source code remain open while enabling flexible integration through linking interfaces, UIs, standard library usage, and data exchange.

AOCL protects the rights of creators through attribution requirements and patent provisions while addressing modern software delivery methods, including network services (e.g., SaaS).

By distinguishing between Derivative and Dependent works, the license balances copyleft with flexibility. Derivative works are subject to copyleft under the AOCL license. Dependent Works can be licensed independently from the AOCL-licensed Software being depended on. This allows AOCL-licensed Software to be used as a library for static linking, dynamic linking, FFI, or standard inclusion as a library without modification, which is common in programming languages like Rust and Golang.

Unlike other open source licenses, AOCL is a fixed version without automatic version upgrading, removing confusion about which version applies to a given software, whether derivatives can or cannot utilize "later versions" of this license, and ensuring all modifications to software under this license can be upstreamed without additional restrictions placed on those modifications.

This license represents a middle ground that is more protective than permissive licenses and more pragmatic than traditional strong copyleft licenses, allowing the software to be used in widely diverse contexts with appropriate attribution and patent protections, and maintaining a consistent set of obligations that cannot change over time without the explicit permission of the Original Authors or Copyright Holders of the software. By choosing this license, you contribute to a collaborative ecosystem that balances freedom, recognition, and practical adoption.

## License Terms

### 1. Definitions

1.1 **"Software"** refers to the original work of authorship in any form (including both Source Code and binary forms), including any modifications, enhancements, or derivative works thereof, that is distributed under this license.

For clarity, the term "Software" by itself refers specifically to the work licensed under this license, and does not include other programs that use, interact with, or incorporate the Software through methods described as exclusions in Section 1.6, though such programs remain subject to specific provisions of this license as explicitly stated herein.

1.2 **"You"** refers to the individual or entity exercising the rights granted under this license.

1.3 **"Source Code"** refers to the preferred form of the Software for making modifications.


1.4 Definitions of Software Interaction and Modification

   a) "Modification" means any change to the Software that requires copyright permission, other than making an exact copy. This includes, but is not limited to:
      - Altering existing code or documentation
      - Adding new functionality to existing code
      - Removing or changing features
      - Translating the Software to a different programming language

   b) "Enhancement" means a Modification that adds new functionality while preserving existing functionality. This includes:
      - Adding new features
      - Improving performance
      - Extending compatibility
      - Adding new interfaces

   c) "Addition" means:
      - New code that becomes technically required for the Software to compile or function, where such requirement did not exist in the original Software; or
      - Integration of the Software's code with other code in a way that creates mutual dependencies between them.

      An Addition creates a technical dependency when the Software is modified to require the new code for its basic operation or compilation.

   d) "Uses" means:
      - Executing the compiled Software
      - Calling the Software's compiled interfaces, including using FFI
      - Loading the Software as a runtime dependency
      - Accessing the Software's binary services

      without modifying the Software itself.

   e) "Incorporates" means:
      - Including the Software's source code in a build process
      - Linking against the Software's code (statically or dynamically)
      - Embedding the Software's code into another work
      - Bundling the Software's code with another work

      without modifying the original code.

   f) "Interacts with" means any of the following interactions with the Software, without modifying it:
      1. API Usage:
         - Calling exposed APIs, functions, or interfaces
         - Using published protocols or service endpoints

      2. Process and System:
         - Inter-process communication (IPC)
         - Operating system process management
         - System signals and environment interaction

      3. Data Communication:
         - Network protocols and sockets
         - File operations and streams
         - Shared memory and message queues
         - Standard input/output

   Each form of interaction must use documented interfaces or standard system mechanisms.

1.5 "Derivative Work" means any work that, given the definitions in Section 1.4:
   a) Contains, is based on, or is derived from the Software through Modification, Enhancement, or Addition; or
   b) Incorporates any part of the Software's source code with modifications; or
   c) Would require permission under copyright law from the Original Authors or Copyright Holders due to modification or adaptation of the Software.

1.6 "Dependent Work" means any work that, diven the definitions in Section 1.4:
   a) Uses or Interacts with the Software without modification; or
   b) Incorporates the the unmodified Software through compilation, linking, or other standard integration methods; or
   c) Relies on the Software's functionality through well-defined interfaces without modifying the Software itself.

   Such Dependent Works are subject to Sections 4 (Attribution), 5 (Trademark Usage), and 8 (Network Usage) of this license, while retaining their independence in other aspects.

1.7 The following are neither Derivative nor Dependent Works:

   a) Works that are separate and independent from the Software, where "independent" means capable of functioning without any reference to or reliance on the Software, including:
      - Works merely distributed alongside the Software
      - Works aggregated with the Software on storage or distribution media
      - Works that happen to be distributed with the Software

   b) The following mechanical transformations of the unmodified Software:
      - The output of compiling the Software's Source Code
      - The result of interpreting the Software's Source Code

   c) General-purpose operating systems and runtime environments that execute the Software's binary or bytecode form without modification or enhancement specifically for the Software.

1.8 **"Prominent Notice"** refers to a notification that would be discoverable by an ordinary user during normal use of the software, including but not limited to placement in:
   a) "About" screens, help menus, or settings pages in graphical applications
   b) Startup messages, help output, or standard documentation in command-line applications
   c) API documentation, README files, or developer guides for libraries
   d) Footers, "About" pages, or terms of service for web applications
   e) Installation processes, documentation, or license files for all software

1.9 **"Original Authors, Copyright Holders, and Contributors"** refers to:
   a) "Original Authors or Copyright Holders": The individuals or entities who own the copyright to the Software, including the initial creators and any subsequent owners who have legally acquired the copyright through assignment, transfer, inheritance, or other legal means.
   b) "Contributors": Any individual or entity that has submitted a Contribution that has been Released (as defined in Section 1.11). Contributors retain copyright to their Contributions while granting licenses as specified in Section 3.2, unless explicitly transferred to the Original Authors or Copyright Holders through written agreement.

   The terms "Original Authors" and "Copyright Holders" may be used interchangeably when referring to rights and obligations under this license, while "Contributors" specifically refers to those who have made Released Contributions as defined in Section 1.11.

1.10 **"Sublicense"** refers to the act of granting to others the rights you received under this license, but under different or additional terms than those contained in this license.

1.11 **"Contribution"** means any modification, enhancement, or addition to the Software that is intentionally submitted to the Original Authors or Copyright Holders for inclusion in the Software. A Contribution is "submitted" when provided through any form of electronic, verbal, or written communication, excluding communications explicitly marked as "Not a Contribution."

For purposes of revocation rights, a Contribution is considered "Released" when it has been publicly distributed as part of the Software, whether in Source Code or binary form, through any channel including but not limited to official releases, public repositories, or distribution platforms.

1.12 **"Trademarks"** refers to any names, marks, logos, icons, designs, or other designation used by the Original Authors or Copyright Holders to identify themselves, their projects, or the Software.

### 2. Grant of Rights

2.1 You are granted the right to use, copy, modify, and distribute the Software, but not sublicense it or impose additional restrictions, provided that:

   a) For Derivative Works and direct copies of the Software:
      - A complete copy of this license must be included.
      - A prominent notice stating that the Software is licensed under the AuraGem Opensource Copyleft License must be included.

   b) For Dependent Works that use the Software, as per the exclusions in Section 1.6:
      - A copy of Sections 4, 5, and 8 of this license, or a reference to this license in full, must be included.
      - A prominent notice stating that the software incorporates elements covered by the AuraGem Opensource Copyleft License must be included.
      - A reference to where the Software's Source Code can be obtained must be included.
      - Any use of Trademarks must comply with Section 5 of this license.

   c) Any distribution you make must be made directly under the terms of this license without sublicensing. Each recipient receives their rights directly from the Original Authors or Copyright Holders, not from you as an intermediary. Contributors' rights are handled through their Contribution agreements as specified in Section 3.2.

### 3. Copyleft

3.1 Any Derivative Works of the Software must be licensed under the same terms as this license. Dependent Works are not subject to these copyleft restrictions, but the original Software Source Code must still remain under AOCL copyleft. You may not impose any additional restrictions on the rights granted by this license, nor may you sublicense the Software or any Derivative Works.

3.2 Any Contributions intentionally submitted for inclusion in the Software shall be subject to the same terms and conditions as this license, without any additional terms or conditions.

3.3 By submitting a Contribution, you confirm that you have the legal right to do so and agree that your Contribution is automatically licensed under this license. The patent licenses granted in Section 7.1 apply to your Contribution when used alone or in combination with the Software.

3.4 Right to Revoke Unreleased Contributions: You may revoke your Contribution at any time before it is Released (as defined in Section 1.11) by providing clear notice to the Original Authors or Copyright Holders through the same channel used for the original submission or through direct communication. Upon such revocation, the license grants in this license with respect to that specific unreleased Contribution are terminated. Once a Contribution has been Released as part of the Software, the license grants become irrevocable.

### 4. Attribution Notices

4.1 You must preserve all attribution notices and copyright statements included in the Software. These notices must be retained in all copies of the Software, any Derivative Works, and any Dependent Works, as defined in Sections 1.4, 1.5, and 1.6.

4.2 If you modify the Software, you must include a prominent notice stating that you have changed the Software and the date of such changes.

4.3 Use of names, trademarks, service marks, or product names of the Original Authors or Copyright Holders is governed by Section 5 (Trademark Usage), with limited permissions for attribution purposes as specified in Section 5.2.

4.4 Scope of Attribution Requirements:
   a) The attribution requirements in this section (Section 4) apply to all software that uses the Software or its Source Code in any way, even if that software is not considered a Derivative Work under Section 1.5.
   b) This means that even software that merely links to the Software, provides a user interface for the Software, or communicates with the Software through APIs must comply with all attribution requirements in Section 4.
   c) These attribution requirements are independent of the obligation to share source code, which applies only to Derivative Works as defined in Section 1.5.

### 5. Trademark Usage

5.1 This license does not grant you any right to use any Trademarks in the following ways:
   a) To identify any software other than the unmodified Software;
   b) In any manner that might cause confusion about the origin or ownership of the Software;
   c) In any manner that might state or imply endorsement by the Original Authors or Copyright Holders;
   d) In any manner that dilutes, tarnishes, or damages the reputation of the Trademarks.

5.2 Permitted Uses:
   a) You may use Trademarks solely for the purpose of describing the origin of the Software and reproducing attribution notices.
   b) You may state factually that your work is based on, compatible with, or derived from the Software.

5.3 Derivative Works:
   a) If you create a Derivative Work, you must rebrand your work to use different Trademarks that are not confusingly similar to those associated with the original Software.
   b) You must clearly state that your modified version is not the original Software.

5.4 Nothing in this license should be interpreted to prohibit the Original Authors or Copyright Holders from enforcing their trademark rights.

### 6. No Versioning

6.1 This license is a fixed license without a version number. You may not:
   a) Automatically upgrade to any new or different version of this license;
   b) Claim that the Software is available under any "later version" of this license;
   c) Modify the terms of this license when redistributing the Software or Derivative Works.

6.2 Any modifications to this license require:
   a) Explicit written consent from all copyright holders of the Software; and
   b) Clear documentation of such consent provided with any distribution.

6.3 Any attempt to change, replace, or upgrade this license without meeting the requirements in Section 6.2 constitutes a violation of this license subject to the termination and enforcement provisions in Section 9.

### 7. Patent Rights

7.1 Patent Grant:
   a) For Derivative Works: You grant a perpetual, worldwide, non-exclusive, royalty-free license to any patents you hold that are necessary to use, modify, or distribute the Software in any form.

7.2 Patent Retaliation:
   If you initiate a patent infringement claim against any party alleging that the Software infringes a patent, then your rights under this license shall terminate immediately.

### 8. Network Use

8.1 If you use the Software (in either Source Code or binary form) to provide a service over a network (including but not limited to web services, cloud services, or any other form of software as a service), you must make the following available to users of that service:
   a) The Software's Source Code as you received it
   b) The Source Code of any modifications you have made to the Software
   c) A prominent notice indicating how users can obtain this Source Code

8.2 Methods of Source Code Provision:

   a) You may fulfill the requirements in Section 8.1 by any of the following methods:
      - Providing a direct download link within your application or service
      - Including the Source Code in your application's documentation or help screens
      - Providing a clear URL in your application or service where the Source Code can be freely accessed
      - Including the Source Code in installation packages, distribution packages, or accompanying materials

   b) The Source Code must be:
      - Provided at no additional charge beyond the cost of your application or service
      - Available in a format commonly used for software development
      - Complete and corresponding to the version used in your application or service
      - Available for as long as you continue to distribute the application or provide the service

   c) You are not required to host the Source Code yourself if it's available through a package manager or online service

8.3 These requirements apply even if your application or service would otherwise qualify as a Dependent Work under Section 1.6.

8.4 You are not required to make available the Source Code of your larger application if it qualifies as a Dependent Work under Section 1.6.

8.5 The Source Code made available under Section 8.1 must be provided under the same terms as this license.

### 9. Enforcement Mechanism and Remedies for Non-Compliance

9.1 License Termination for Violations:

   a) If you fail to comply with any of the terms of this license applicable to your use of the Software (in either Source Code or binary form), your rights under this license shall terminate automatically.

   b) This termination applies to any violation of this license, including but not limited to:
      - Failure to include required notices or license sections as specified in Section 2.1
      - Violation of copyleft provisions in Section 3, including imposing additional restrictions or attempting to sublicense the Software or any Derivative Works
      - Failure to comply with attribution requirements in Section 4, even if the software is not considered a Derivative Work
      - Violation of trademark usage restrictions in Section 5
      - Violation of the versioning restrictions in Section 6
      - Violation of patent grant provisions in Section 7.1, including refusal to grant necessary patent licenses
      - Violation of patent retaliation provisions in Section 7.2 by initiating covered patent litigation
      - Failure to make Source Code available as required for network use under Section 8

9.2 You may remedy this non-compliance by:

   a) For violations involving Derivative Works:
      - Ceasing all use, copying, modification, and distribution of the Software and any Derivative Works.

   b) For violations involving Dependent Works:
      - Ceasing all interactions with the Software until the violation is corrected.

   c) In all cases:
      - Correcting the non-compliance within 30 days of becoming aware of it.
      - Notifying the Original Authors or Copyright Holders of your corrective actions.

9.3 If and only if you fully remedy the non-compliance within the specified period, your rights under this license may be reinstated. If you do not remedy the non-compliance within the specified period, you may not resume use of the Software in any way without obtaining a new license from the copyright holders.

9.4 The Original Authors or Copyright Holders may enforce this license through legal action. In the event of a breach of this license, they may seek:
   a) Injunctive relief to prevent further violations.
   b) Monetary damages for any losses incurred due to the violation.
   c) Recovery of attorney's fees and costs associated with enforcing this license.

### 10. Disclaimer of Warranty

10.1 The Software is provided "as is", without warranty of any kind, express or implied, including but not limited to the warranties of merchantability, fitness for a particular purpose, and non-infringement. In no event shall the authors or copyright holders be liable for any claim, damages, or other liability arising from the use of the Software.

### 11. Acceptance

11.1 By using, copying, modifying, distributing, or incorporating the Software (in either Source Code or binary form) in any way (including through linking, interfaces, or APIs), you accept and agree to be bound by all applicable terms of this license. This acceptance specifically includes:
   a) For all users:
      - The attribution requirements in Section 4
      - The trademark usage restrictions in Section 5
      - The network usage restrictions in Section 8
   b) For users creating Derivative Works: All provisions of this license without exception.

11.2 Your continued use of the Software in any capacity constitutes ongoing acceptance of these terms. If you do not agree to these terms, you may not use, copy, modify, distribute, or interact with the Software in any way.

11.3 By submitting a Contribution as defined in Section 1.11, you accept and agree to be bound by all terms of this license for your Contribution, subject to your right to revoke unreleased Contributions as specified in Section 3.4. Once your Contribution has been Released as part of the Software, this acceptance is irrevocable and applies to all future recipients of your Contribution, whether received directly from you or through intermediaries.

### 12. Severability

12.1 If any provision of this license is found to be unenforceable or invalid, that provision shall be limited or eliminated to the minimum extent necessary so that the remaining provisions of this license shall remain in full force and effect.

### 13. Governing Law

13.1 This license shall be governed by and construed in accordance with the laws of the State of California, United States of America, without regard to its conflict of law principles.

---

Note to projects using this license: To provide clarity regarding the revocation rights in Section 3.4, projects should maintain clear public records of releases, including dates and version information. Projects may wish to inform contributors that their contributions become irrevocable once included in a public release.