20240908

One of our project uses OSS with AGPL, but I was not confident it was OK to use it for commercial purposes, so I browsed some websites about the license.

It turned out that, AGPL forces me to make my code public if I modify the original software, but I don't need to when just using it without modifications.

Please correct me if I misunderstood.

Software Licensing Requirements - Snyk’s suggestion

What is AGPL license? | Top 10 questions answered | Snyk

It’s common for developers to think software licensing requirements are the express responsibility of the legal department. With so many open source components available and the implications of the licensing requirements, every developer should have at least a general understanding of what these licenses are and how each can affect their software.

Considering the downstream implications a project can run into, every team needs to review all license requirements for their software. Before releasing any updated or modified software, organizations need to conduct a complete license compliance audit, and doing this during every stage of the project can avoid issues in the future. One license teams should look into is the GNU Affero General Public License (AGPL).

Proprietary Software Definition

Proprietary Software: Definition and Examples | EPAM SolutionsHub

Proprietary software refers to software that is privately owned, controlled, and distributed under specific licensing terms that restrict users’ rights to modify, distribute, or access its underlying source code.

MIT License

The MIT License - Open Source Initiative

Copyright <YEAR> <COPYRIGHT HOLDER>

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

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 NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

What is The MIT License? | Top 10 questions answered | Snyk

A joint project between IBM, MIT, and Digital Equipment Corporation (DEC) in 1983 seems to be the origin of the MIT license. The reason it only seems to be the start is that there were multiple different versions used at varying times with changes to the exact text.

The primary terms and conditions of the MIT license are to grant permissions and indemnify developers for future use. Specifically, it grants any person who obtains a copy of the software and associated files the right to use, copy, modify, merge, distribute, publish, sublicense, and sell copies of the software.

The only condition required to use the software is to include the same copyright notice in all copies or any substantial portions of the software. The final portion of the text provides for limitations and revokes any warranty implied by sharing the code.

It is the simplest/most straightforward OSS license. If I have a chance to originate an OSS project, MIT should be enough.

AGPL (GNU Affero General Public License)

GNU Affero General Public License - GNU Project - Free Software Foundation

The license is very long and has many legal matters… it's not something I can digest by reading it. I seeked other materials.

What is AGPL license? | Top 10 questions answered | Snyk

What is AGPL?

Before discussing the AGPL license, it’s important to understand where it comes from. In 1988, Richard Stallman wrote his General Public License (GPL) aimed at enshrining the rights of creators to keep their software open source at all times. GPL is currently in its third version (GPLv3) due to issues with the previous text that created some loopholes.

As part of GPLv3, the Free Software Foundation (FSF) provided two additional types of licenses, namely the Lesser General Public License (LGPLv3) and the Affero General Public License (AGPLv3). The AGPL version of the General Public License aims to enforce full copyleft rights on all software that use it.

What are the advantages and disadvantages of the AGPL license?

In the standard GPL license, the reciprocity clause comes into effect whenever a developer releases software. The copyleft principle intends to make all of the source code available to the wider open source community. With AGPL, software teams can ensure all changes to the codebase becomes available to the public, even on server-side applications.

With AGPL, software teams can ensure all changes to the codebase becomes available to the public, even on server-side applications…? :thinking_face:

Does that mean we can keep our code base private as long as we don't make changes to the software? continuing reading the web page to clarify.

Some of the advantages of the AGPL include:

The disadvantages of the AGPL are:

Can companies use AGPL software?

Although anyone can use the AGPL V3 license, it’s not popular with organizations. The restrictions placed on any subsequent versions of AGPL software make it difficult to adopt when there are competing commercial interests.

Most companies prefer to use permissive licenses that give them the freedom to use open source components and still turn their version of the software into a commercial product in the future, as opposed to when they use a copyleft license like AGPL.

Can you use AGPL with closed source applications

The AGPL V3 license is a strong copyleft license that enforces open source on all components derived from any previous work. It closes the server-side loophole, where the source code isn't made available if the software isn't released. AGPL defines a user as anyone who accesses the server-side application if it is public-facing. For applications that reside inside the organization's network, AGPL does not trigger the release of the source code.

It's still confusing, but my current understanding is that, any modifications of a SGPL-licensed software need to be public. However, when using the software without any modifications, I'm not forced to make the code public.

The reason companies usually don't choose AGPL-licensed software might be because they cannot clone/fork the project and make modifications privately.

For now, I think we don't have to take any actions for our project.


Pho 1000 Yogurt 600 Rice 700 Boba 500

Total 2800 kcal

recovering from the damage running a (self) half marathon


MUST:

TODO:


index 20240907 20240909