Appendix P: Our Approach to Open‐Source, Licensing, and Collaboration - ApertureViewer/Aperture-Opertations-Manual GitHub Wiki
Policy Summary
This document outlines Aperture Viewer's principled approach to open-source software, licensing, and collaboration. Key tenets include:
- Unyielding Commitment to Open Source: Aperture Viewer operates under the GNU Lesser General Public License v2.1 (LGPL) and champions its core freedoms.
- No Embargoes on Publicly Licensed Code: In accordance with LGPL Section 10 ("No Further Restrictions") and supportive platform policies (Linden Lab TPV Policy, GitHub ToS), Aperture Viewer does not adhere to informal embargoes or timing restrictions on the use of publicly available LGPL code. Once code is publicly licensed and published, its use is governed solely by the license terms.
- Operational Practice: Aperture Viewer will continue to utilize publicly available LGPL code from upstream and other sources in line with the freedoms granted by the license to foster innovation.
- Respect for Attribution: We are committed to proper attribution of original work through established open-source practices like commit histories and acknowledgments.
- Addressing Legitimate Concerns: We will promptly investigate any valid concerns regarding the inadvertent use of genuinely private, non-publicly licensed code.
- Call for Principled Collaboration: We advocate for a TPV community that operates with mutual respect, transparency, and steadfast adherence to open-source legal and ethical frameworks.
This policy details the legal and philosophical rationale behind these principles.
Fostering a Collaborative and Principled Community
Aperture Viewer is rooted in a deep belief in the power of community, kindness, and shared growth. We aim to interact with other projects and the broader community based on mutual respect, transparency, and a shared commitment to the legal and ethical principles of open source.
While different projects may sometimes have differing interpretations or preferred community practices, we believe that adherence to the explicit terms of open-source licenses and official platform policies provides the clearest and most equitable foundation for all participants.
We welcome constructive dialogue on how to best foster a vibrant, innovative, and respectful open-source TPV community, grounded in these shared principles. Questions or comments regarding this policy, or any aspect of our community engagement, can be directed to [email protected]
.
Our Core Commitments
At Aperture Viewer, we are deeply committed to the principles of open-source software, transparency, and collaborative innovation. Our project is built upon the incredible foundation laid by Linden Lab and the vibrant ecosystem of third-party viewers (TPVs) that enhance the virtual world experience. This document outlines our approach to using and contributing to open-source code, particularly concerning the GNU Lesser General Public License v2.1 (LGPL), under which Aperture Viewer and much of the related TPV ecosystem operate.
- Dedication to Open Source: Aperture Viewer is proud to be an open-source project. We believe that the freedom to use, study, modify, and share software is fundamental to fostering innovation, improving quality, and empowering users and developers alike. We strive to contribute back to the community whenever possible.
- Respect for Licensing: We are meticulous in our adherence to the licenses governing the software we use and produce. For Aperture Viewer, this primarily means the LGPL-2.1. Understanding and respecting the terms of these licenses is paramount to maintaining a healthy and legally sound open-source environment.
- Transparency and Clarity: We aim to be transparent in our development practices and our policies. This document is part of that commitment, ensuring our community understands how we operate.
Understanding the GNU Lesser General Public License (LGPL v2.1)
The LGPL-2.1 is designed to ensure that software libraries (and applications like ours, derived from such libraries) remain free while also allowing them to be linked with other software. Key aspects relevant to our policies include:
-
Freedom to Use and Modify: The LGPL grants recipients the right to use, copy, modify, and distribute the licensed software.
-
No Further Restrictions (LGPL §10): This section is fundamental to guaranteeing the freedoms that the LGPL intends to provide to all recipients of the software. It states:
"Each time you redistribute the Library (or any work based on the Library), the recipient automatically receives a license from the original licensor to copy, distribute, link with or modify the Library subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties with this License."
- Our Interpretation and Its Implications: We interpret Section 10 as an unequivocal prohibition against any party – including the original licensor or any subsequent distributor – attempting to diminish or qualify the rights granted by the LGPL to downstream recipients. The rights to copy, distribute, link with, or modify the Library, as outlined in the LGPL, are granted automatically and fully with each redistribution. "Further restrictions" would include any additional conditions, limitations, or requirements not explicitly contained within the LGPL itself, such as demanding that recipients delay their use of publicly licensed code (e.g., through an embargo) or conditioning use on agreements outside the scope of the LGPL.
- The Impact on Licensors and Distributors: This means that once a licensor (like any TPV, which itself received code under open-source terms and now acts as a licensor for its modifications) chooses to distribute their work under the LGPL by making it publicly available, they cannot then selectively withdraw or limit the exercise of those granted rights for certain recipients or for certain periods. Making distribution conditional on an embargo would directly contravene this explicit provision. The license flows with the code, complete and unencumbered by new, ad-hoc restrictions. A purely voluntary request to downstream users, while unenforceable, does not itself violate the LGPL—only a requirement written into the distribution would.
- How This Informs Aperture's Operations: For Aperture Viewer, Section 10 is a cornerstone of our ability to operate and innovate within the open-source ecosystem. When we receive code publicly licensed under the LGPL from an upstream project, we receive it with the full set of rights articulated in the license, free from any subsequent, informally imposed restrictions. Our policy of not adhering to requests for embargoes on publicly available LGPL code is a direct consequence of our commitment to upholding this "no further restrictions" principle. It ensures that we, and in turn our users, can fully benefit from the freedoms the LGPL is designed to protect. It also ensures that we do not become party to an attempt by an upstream provider to act contrary to the LGPL's clear terms.
-
License Validity and Consequences of Non-Compliance (LGPL §8): Section 8 of the LGPL is a critical provision that underscores the seriousness with which the license terms must be treated. It states:
"You may not copy, modify, sublicense, link with, or distribute the Library except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, link with, or distribute the Library is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance."
- Our Interpretation and Its Implications: We interpret this section to mean that any action taken by a licensor (or any party distributing the LGPL-licensed code) that is not "expressly provided under this License" – such as attempting to impose additional restrictions on a recipient's use of publicly licensed code (contrary to §10) – is not only impermissible but also carries a significant risk. Such an embargo requirement is deemed ‘void’ by the license itself.
- The Risk Posed by Non-Compliance: Crucially, Section 8 states that such contrary attempts will *"automatically terminate your rights under this License," (while downstream recipients who remain in compliance keep theirs). This means that a licensor who distributes code while imposing conditions beyond those permitted by the LGPL (e.g., an embargo baked into the distribution terms) risks forfeiting their own rights to copy, modify, sublicense, link with, or distribute that Library under the LGPL. Simply asking for a voluntary delay, without conditioning the licence on it, does not trigger this termination—such a request is simply non-binding. In effect, continuing to distribute the Library after such a breach could place the breaching party in a position of distributing copyrighted material without a valid license, potentially leading to copyright infringement.
- How This Informs Aperture's Operations: This provision powerfully reinforces why Aperture Viewer must strictly adhere to all terms of the LGPL and why we cannot agree to conditions imposed by others that are not sanctioned by the license. To do otherwise would not only be contrary to the license but could also inadvertently involve us in a situation where an upstream licensor has jeopardized their own licensing rights. Our commitment is to operate in full, unambiguous compliance with the LGPL, ensuring that both our rights and the rights of our users are protected by steadfast adherence to the license terms as written. This underpins the importance for all parties in the open-source ecosystem to respect and uphold the integrity of the license.
Alignment with Platform and Service Provider Policies
Our approach is not only grounded in our interpretation of the LGPL but is also consistent with and supported by the policies of key platform providers and service hosts relevant to our ecosystem.
-
Linden Lab's Third-Party Viewer (TPV) Policy: The TPV Policy, which governs all viewers connecting to Second Life, explicitly addresses the use of open-source viewer code. The policy preamble states:
"This Policy does not place any restriction on modification or use of our viewer source code that we make available under an open source license as documented in our source code."
- Our Interpretation and Its Implications: Aperture Viewer, being derived from upstream open-source code originating from Linden Lab (and subsequently Firestorm), operates under this clear provision. It affirms that Linden Lab itself does not impose, nor does it authorize third parties (like other TPVs) to impose, restrictions on the use or modification of this open-source code beyond what the open-source license itself dictates. Therefore, any attempt by another TPV to enforce an embargo on publicly available, open-source viewer code would be contrary to this explicit Linden Lab policy.
- How This Informs Aperture's Operations: This TPV Policy provision directly supports our stance that we are free to use and modify publicly available open-source viewer code (licensed under LGPL) without additional timing restrictions imposed by other TPVs. Our adherence to this ensures we remain in good standing with Linden Lab's stated policies for TPV development and operation. Furthermore, the TPV Policy (e.g., Section 8.c) outlines potential consequences, such as termination of grid access, for TPVs that violate its terms.
-
GitHub Terms of Service (ToS): As our primary platform for code hosting and collaboration (as is the case for many TPVs, including our upstream sources), GitHub's Terms of Service also provide relevant context for how licensed code in public repositories is treated.
-
Section D.3 ("Ownership of Content, Right to Post, and License Grants"): This section requires users to "fully comply with any third party licenses relating to Content you post."
-
Section D.5 ("License Grant to Other Users"): This section states that by making repositories public, users grant baseline rights to other GitHub users and clarifies: "You may grant further rights if you adopt a license."
-
Section D.6 ("Contributions Under Repository License"): This section makes explicit the "inbound=outbound" principle: "Whenever you add Content to a repository containing notice of a license, you license that Content under the same terms, and you agree that you have the right to license that Content under those terms."
-
Our Interpretation and Its Implications: When a project (like an upstream TPV) hosts its code in a public GitHub repository and declares an open-source license (such as LGPL), they are, under GitHub's ToS, affirming that the content is licensed under those terms to all users of GitHub (and by extension, the public). The ToS reinforces the idea that the repository's declared license governs the use of the code therein.
-
How This Informs Aperture's Operations: GitHub's ToS supports our understanding that code made publicly available on GitHub under an LGPL license by an upstream project is indeed licensed to us under LGPL terms from the moment of its publication. Attempts to add extra-licensing restrictions (like embargoes) post-publication are inconsistent with the nature of public repository licensing facilitated by GitHub's platform and the explicit "inbound=outbound" commitment.
-
Our Philosophy: Openness, Collaboration, and the Ethical Imperative of LGPL
Beyond the letter of the LGPL, Aperture Viewer is guided by what we believe to be its inherent spirit and the ethical principles that underpin the broader open-source movement. At its heart, open source is about the free and unhindered circulation of ideas, code, and innovation for the collective benefit. The LGPL, in our view, is a powerful instrument designed to protect and promote this ideal.
- Openness vs. Closure: We believe that the concept of an "embargo" on publicly available open-source code stands in direct opposition to this core tenet of openness. Open source, by its very name and nature, champions transparency and immediate access once information is shared under such a license. Embargoes, conversely, introduce a form of closure, attempting to gatekeep or control the timing of when publicly licensed ideas can be utilized or built upon by others. This is a stance Aperture Viewer cannot ethically endorse when it pertains to code already made publicly available under a license like the LGPL.
- Protection from Protectionism: A fundamental strength of licenses like the LGPL is their role in preventing "protectionism" over shared code. Once code is contributed to the commons under such a license – particularly code derived from an even larger open-source project like the official Second Life viewer – it becomes part of a shared heritage. Attempting to restrict its timely use by downstream projects that are also complying with the license undermines the collaborative and egalitarian nature of this shared ecosystem.
- The Equalization of Ideas: Open source thrives on the principle that ideas and innovations should be accessible, allowing anyone to learn from, build upon, and improve existing work. This fosters a dynamic environment where the best ideas can emerge and benefit the most users, regardless of the size or "established" nature of a particular project. Restricting access or use based on informal timelines can stifle this organic process.
- Attribution and Sharing as Key Pillars: We earnestly believe that attribution (through copyright notices, commit histories, and acknowledgments) and the act of sharing are the appropriate and sufficient mechanisms for recognizing contributions within an open-source framework. These methods are fully compatible with the immediate usability of publicly licensed code.
- Embracing Diverse Perspectives: The world of ideas is not unipolar; multiple perspectives can hold truth and contribute to a richer whole. The LGPL, by ensuring freedom of use, inherently supports this diversity, allowing different projects to explore different paths and implementations using shared foundational code. This freedom is what gives life and color to the open-source landscape. It is this vibrant, open exchange that we feel is embodied in the LGPL's history, its rationale, and its very reason for being.
Therefore, when Aperture Viewer derives its work from upstream open-source projects like the Linden Lab viewer code (via Firestorm), we not only agree to the legal terms of the LGPL but also feel an ethical obligation to champion and uphold the values of openness, free idea flow, and protection from protectionism that this license promotes. Our stance against embargoes on publicly available LGPL code is a direct reflection of this deeply held conviction. Others may hold different viewpoints, and we respect the space for diverse perspectives; this is ours.
Our Policy on "Publicly Available Code"
Aperture Viewer considers "publicly available code" to include any source code that is:
- Published in a public repository (e.g., on platforms like GitHub) under an open-source license like the LGPL.
- Intentionally distributed by its copyright holders under terms that grant public access and usage rights consistent with an open-source license.
The developmental stage of such code (e.g., "beta," "development," "alpha") within its original project does not alter its licensing status once it has been made publicly available under an open-source license. The rights granted by the license attach at the point of such public availability.
Embargoes and Timing of Code Use
In line with our understanding of the LGPL (particularly §10), Aperture Viewer's policy is as follows:
- No Adherence to Informal Embargoes on Publicly Available LGPL Code: We cannot agree to or operate under informal requests or "community practices" that would require us to delay the use or incorporation of publicly available LGPL-licensed code. To do so would be to accept a "further restriction" contrary to the LGPL and could potentially place us in non-compliance with the license ourselves.
- Alignment with Aperture's Mission: Our project's mission is to significantly push the boundaries of visual fidelity and creator workflow efficiency. Adhering to artificial delays on utilizing publicly available open-source advancements would hinder this mission.
- Linden Lab's TPV Policy Alignment (Reiteration for Emphasis): As stated previously, Linden Lab's Third-Party Viewer Policy supports this approach by not placing restrictions on the use of open-source viewer code.
We believe that immediate access to and use of publicly licensed innovations, under the terms of their respective licenses, is a vital component of a thriving open-source ecosystem.
Commitment to Attribution and Respect for Original Work
While we do not adhere to embargoes on publicly available LGPL code, Aperture Viewer is deeply committed to recognizing and respecting the work of original authors and upstream projects:
- Source Code Attribution: As a derivative work, Aperture Viewer maintains all original copyright notices and licensing information from its upstream sources (Linden Lab, Firestorm Viewer, and other incorporated libraries) as required by their respective licenses.
- Commit History: Version control systems (like Git) inherently track the provenance of code, providing a clear historical record of contributions and modifications.
- Acknowledgments: We endeavor to provide appropriate acknowledgments in our "About" information, release notes, or other relevant documentation for significant upstream projects and contributions that form the basis of Aperture Viewer.
We believe these established open-source practices are the proper and effective mechanisms for ensuring attribution and recognizing developer effort, fully compatible with the freedoms granted by open-source licenses.
Addressing Concerns about Code Provenance and This Policy
Aperture Viewer operates with the utmost respect for intellectual property and licensing. We are committed to transparency and welcome dialogue regarding our practices.
- Our Commitment: If any party believes that Aperture Viewer has inadvertently incorporated code that was genuinely private, not publicly licensed, and not intended for public use under an open-source license, or if there are any questions or concerns regarding this policy or its application (beyond those addressed herein), we urge direct contact with our team.
- How to Reach Us: Please email us at
[email protected]
. - Process for Code Concerns: For specific concerns about code provenance, please provide as much detail as possible in your email, including repository links and commit SHAs if applicable, and the basis for your concern. We are committed to promptly and thoroughly investigating any such legitimate claim and taking appropriate corrective action if warranted. We will also endeavor to respond to policy clarifications in a timely manner.