Nyx is free, and we mean it in two ways: It's like 'free food', meaning you can use it without any cost, and like 'free speech', meaning you have the freedom to study, modify, and distribute the software.
The Nyx astrodynamics library is released under the AGPLv3 open source license. This license grants broad permissions to use, modify and distribute the software, but has a "copyleft" requirement - derived works must also be released with the same open source license.
While you can use Nyx for commercial purposes and build proprietary software, if you distribute software that interacts with or includes Nyx, you must provide your source code and give end users the same rights as the AGPLv3 license. This applies regardless of whether your software is desktop, web-based or hosted as a service.
The goal of the AGPLv3 is to guarantee end users freedom, encourage collaborative development, and promote the openness of derived works. By building on Nyx, your project also benefits from these protections and contributions from the community.
You have broad permission to use, modify and distribute Nyx commercially or privately, but interacting with or bundling Nyx does require providing your source code and the same AGPLv3 rights to end users. The goal of this requirement is to maximize benefits for both individual users and the open source community as a whole.
An open source license grants permission to freely use, modify, and distribute software and its source code. The license dictates the specific terms and conditions of how that software can be used and distributed.
The AGPLv3 is an open source license that guarantees end users the freedom to run, study, share, and modify the software. It requires that the source code of any projects that use the licensed work also be open and available to end users. In summary, the AGPLv3 allows for broad freedom and use of software, with some requirement of "copyleft" - that is, derived works must also be open.
Yes, you are free to use Nyx for commercial purposes and to build proprietary software. However, any software that incorporates or depends on Nyx must also provide its source code and give users the freedoms that the AGPLv3 grants with Nyx. Specifically:
The goal of these requirements is to protect user freedoms and encourage collaborative progress. By building on Nyx, your project also gains the benefits and protections of open source. However, if you are uncertain how AGPLv3 applies to, or impacts your commercial plans, please consult legal counsel.
We aim to clarify the terms and implications of AGPLv3 to empower users, but cannot provide legal advice for specific use cases. If additional concerns arise in your implementation or distribution of Nyx, submit an issue so we can attempt to address it. Our goal is advancing access to technology, not creating legal entanglements - so please let's work through any questions together! But ultimately, you assume responsibility for adhering to the license.
No, Nyx comes with no warranty. Think of it like adopting an astronaut cat. It could be a fantastic navigator, expertly maneuvering around space debris. But on the off chance it gets distracted by the moon's glow and causes a crash landing... well, that's unfortunate, but you were warned!
Just like our hypothetical feline astronaut, Nyx is thoroughly tested and validated to perform its tasks. However, in the vast expanse of software operation, unexpected situations can occur. If Nyx ends up sending you or your customer to crash land on the moon (or any other unexpected software behavior), please file a bug report. Despite being provided without a warranty, Nyx is committed to learn, grow, and avoid any future lunar mishaps.
Please feel free to submit an issue on GitHub or contact the Nyx maintainers directly with any other questions you have about the AGPLv3 license or use of this software. We want to ensure you feel confident in leveraging Nyx's capabilities, and can provide additional details and clarification about the license terms. Our goal is to empower users while also protecting the openness and freedom of the Nyx project itself.
We warmly welcome additions and modifications to Nyx! Contributing to open source projects benefits both individual users and the entire astrodynamics community. By building upon Nyx, your work gains the protections and access of the AGPLv3, and in turn contributes to tools available for all. Together we can push the limits of what's possible in mission design and spacecraft navigation. To get started, simply fork the repository, make your modifications, and then open a pull request.
As stipulated by the license agreement, if you contribute code for which you hold a patent, you're also granting Nyx users the permission to use that patented technology. This openness fuels innovation and ensures we all move forward together in our exploration of the cosmos. Let's build a better Nyx, and in turn, a better future for astrodynamics!
If contributing to Nyx for an employer, confirm that you have rights to open source your work and that it does not violate company IP policies. Consider if a CCLA (Contributor Licensing Agreement) may be applicable.
We at Software Freedom Conservancy proudly and vigilantly watch out for your rights under copyleft licenses such as the Affero GPLv3. Toward this goal, we have studied the Neo4j, Inc. v. PureThink, LLC ongoing case in the Northern District of California , and the preliminary injunction appeal decision in the Ninth Circuit Court this month. The case is complicated, and we've seen much understandable confusion in the public discourse about the status of the case and the impact of the Ninth Circuit's decision to continue the trial court's preliminary injunction while the case continues. While it's true that part of the summary judgment decision in the lower court bodes badly for an important provision in AGPLv374, the good news is that the case is not over, nor was the appeal (decided this month) even an actual appeal of the decision itself! This lawsuit is far from completion.
The primary case in question is a dispute between Neo4j, a proprietary relicensing company, against a very small company called PureThink, run by an individual named John Mark Suhy. Studying the docket of the case, and a relevant related case, and other available public materials, we've come to understand some basic facts and events. To paraphrase LeVar Burton, we encourage all our readers to not take our word (or anyone else's) for it, but instead take the time to read the dockets and come to your own conclusions.
Specifically, the clause was designed to give more rights to downstream recipients when bad actors attempt this nasty trick. Indeed, I recall from my direct participation in the A/GPLv3 drafting that this provision was specifically designed for the situation where the original, sole copyright holder/licensor0 added additional restrictions. And, I'm not the only one who recalls this. Richard Fontana (now a lawyer at IBM's Red Hat, but previously legal counsel to the FSF during the GPLv3 process), wrote on a mailing list1 in response to the Neo4j preliminary injunction ruling:
Unlike additional permissions, additional requirements that are allowed under subsection 7b may not beremoved. The revised section 7 makes clear that this condition does notapply to any other additional requirements, however, which are removablejust like additional permissions. Here we are particularly concernedabout the practice of program authors who purport to license their worksunder the GPL with an additional requirement that contradicts the termsof the GPL, such as a prohibition on commercial use. Such terms canmake the program non-free, and thus contradict the basic purpose of theGNU GPL; but even when the conditions are not fundamentally unethical,adding them in this way invariably makes the rights and obligations oflicensees uncertain.
In addition, that provision in AGPLv374 has little meaning if it's not intended to bind the original licensor! Many other provisions (such as AGPLv3103) protect the users against further restrictions imposed later in the distribution chain of licensees. This clause was targeted from its inception against the exact, specific bad behavior that Neo4j did here.
1 Fontana made these statements on a mailing listgoverned by an odd confidentiality rule called CHR (which was originally designed for in-person meetings with a beginning and an end, nota mailing list). Nevertheless, Fontana explicitly waived CHR (in writing) to allow me to quote his words publicly.
Neo4j Enterprise Edition (EE) was at first offered under both a paid-for commercial license and for free under the GNU Affero General Public License, version 3 (AGPLv3). In May 2018, version 3.4 of the software was put under AGLv3 plus additional terms from the Commons Clause license, which is not an open-source license and explicitly says as much in its documentation.
The Graph Foundation, one of the defendants, in February 2021 settled with Neo4j, agreeing that it would stop calling specific versions of ONgDB, forked from Neo4j EE, a "100 percent free and open source version" of Neo4J EE.
The Open Source Initiative, which oversees the Open Source Definition and the licenses based on the OSD, applauded the appeals court decision. So too did Bruce Perens, who created the Open Source Definition in 1997. Both welcomed the court's acknowledgement that it's false advertising to claim a license is open source when it's not.
But on Thursday, Bradley Kuhn, policy fellow and hacker-in-residence at Software Freedom Conservancy, took issue with the district court's partial summary judgment and the Ninth Circuit's endorsement of it. He said he'd agree that the defendants ought not say their software is under a free and open source (FOSS) license if the AGPLv3+Commons Clause combo were valid. But he argues the two licenses can't co-exist as published by Neo4j.
"We believe the court held incorrectly by concluding that Suhy was not permitted to remove the 'Commons Clause,'" wrote Kuhn in a blog post. "Their order that enjoins Suhy from calling the resulting code 'FOSS' is problematic because the underlying holding (if later upheld on appeal) could seriously harm FOSS and copyleft."
c80f0f1006