Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

You don't have to modify the AGPL to impose additional restrictions.

All you have to do is put your additional restrictions in the LICENSE.txt file and then at the end include "All further licensing conditions, rights and clauses are specified in LICENSE_AGPL.txt. Any such conditions, rights and clauses specified in LICENSE_AGPL.txt do not override, replace, nullify, void or otherwise affect conditions of this document unless specified in the very same document. This document takes precedence over any text in LICENSE_AGPL.txt"

And now you have an unmodified AGPL with additional restrictions as much as you want to.



> And now you have an unmodified AGPL with additional restrictions as much as you want to.

Sure, but Neo4J didn't come close to doing that. They just appended the Commons Clause text, which is not at all clear about which bits of the AGPL are superseded or nullified, and has some obvious flaws (eg. "as defined below" should have been changed to "as defined above").


If you do that, then you’ve got “Commons Clause + AGPL”, which would be fine, but what Neo4j built is “AGPL + Commons Clause”, which is not.


You can still just append the AGPL to your own license text or append yours to the AGPL. In neither case the AGPL is modified, you're just adding other contract conditions.

Just like in the real world it wouldn't matter if you used a boilerplate contract and then put a page at the start or end with additional conditions. So long as you see the additional conditions, it's a valid contract.


> In neither case the AGPL is modified, you're just adding other contract conditions.

That’s not nearly as clear-cut as you make it out to be, and future court rulings may contradict this one.

The AGPL after all is still a copyrighted work, and a future court may rule that the authors of the AGPL clearly intended their work to only ever be used without being bundled that way.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: