Earlier quoted context omitted.
What about: - AGPL v2? it says: > This is version 2 of the Affero General Public License. It gives each licensee permission to distribute the Program or a work based on the Program (as defined in version 1 of the Affero GPL) under the GNU Affero General Public License, version 3 or any later version. - Dually licensed software? Does this prohibit software licensed under BSD and AGPL? Granted, the only reason to do th…
I had the same thought. The clause is (which I just copied from original): "15. use, under any circumstance, any open source software subject to the GNU Affero General Public License v.3, or greater;" Which perhaps could be interpreted as version 0.3 or later?
Square’s terms of service forbid use of AGPL-licensed software in online stores
141–145 of 145 posts
Re: Square’s terms of service forbid use of AGPL-licensed software in online stores
#142Re: Square’s terms of service forbid use of AGPL-licensed software in online stores
#143Earlier quoted context omitted.
> after 5 minutes of Googling. downvoting my personal research results after 5 minutes of Googling won't get anyone to answer with the corrected version. I had never heard of agpl until I googled it and summarized what I saw. Honestly we should be downvoting comments like these more. The AGPLv3 isn't new and the original text isn't that long. We don't need incorrect third hand summaries of the license text with addit…
Suppose imagemagick has this license. If I modify this popular commandline program to do my deep learning based manipulation on my server, do I have to publish my changes if asked? Suppose Go has this license. If I don't distribute Go but modify it to serve some kind of requests in 2 ns instead of built in Go's 1200 ms for that operation, do I have to share my version even if I am only using it in-house, if it serves…
Go is a compiler+runtime. AFAIK any copyleft compiler worth using explicitly makes exceptions for its output and runtime, but the FSF says generally that the output of a GPL program is not also GPL[0]. If the runtime is AGPL (without such exception) and you link it into your program, your program is now considered a modified version of the AGPL runtime (e.g. it works exactly like the GPL in that linking is considered modifying). If your service interacts with users over a network, you have to offer the source of your modified program. Since you linked the runtime, you didn't even have to modify the Go source code to make an improvement (if there were an LAGPL, the linking could be OK unless you made the modification).
The other two cases are more ambiguous since they do deal with the ambiguous part of the license. The license says "interacting with it remotely through a computer network". However, it's not clear how much indirection is allowed, so you have to use some judgement. The FSF gives guidance [1]
> If a program is not expressly designed to interact with a user through a network, but is being run in an environment where it happens to do so, then it does not fall into this category.
However, I would be careful not to create a combined work that does interact with a user over a network in an attempt to circumvent this. E.g. a network proxy that was intimately tied to a non-networked program. See [2]
> By contrast, pipes, sockets and command-line arguments are communication mechanisms normally used between two separate programs. So when they are used for communication, the modules normally are separate programs. But if the semantics of the communication are intimate enough, exchanging complex internal data structures, that too could be a basis to consider the two parts as combined into a larger program.
Unless you consider the imagemagick command line arguments "complex internal data structures", it's probably difficult to run afoul of this.
For the Google search engine case, it depends on what degree the tooling interacts with users over a network. E.g. if it's part of an batch process to calculate rankings, it's not interacting with users over a network. If it's a backend that renders part of the results page for user requests, then probably yes. If it's crawl infrastructure that downloads pages on the web, probably no since that network interaction probably isn't considered to be with a user[3].
0: https://www.gnu.org/licenses/gpl-faq.html#WhatCaseIsOutputGP...
1: https://www.gnu.org/licenses/gpl-faq.html#AGPLv3InteractingR...
2: https://www.gnu.org/licenses/gpl-faq.html#MereAggregation
3: https://www.gnu.org/licenses/gpl-faq.html#AGPLv3ServerAsUser
Re: Square’s terms of service forbid use of AGPL-licensed software in online stores
#144Earlier quoted context omitted.
Suppose imagemagick has this license. If I modify this popular commandline program to do my deep learning based manipulation on my server, do I have to publish my changes if asked? Suppose Go has this license. If I don't distribute Go but modify it to serve some kind of requests in 2 ns instead of built in Go's 1200 ms for that operation, do I have to share my version even if I am only using it in-house, if it serves…
TL;DR no, yes, probably no Go is a compiler+runtime. AFAIK any copyleft compiler worth using explicitly makes exceptions for its output and runtime, but the FSF says generally that the output of a GPL program is not also GPL[0]. If the runtime is AGPL (without such exception) and you link it into your program, your program is now considered a modified version of the AGPL runtime (e.g. it works exactly like the GPL in…
So under these conditions: if you have a server where you upload a picture of yourself, and it shows how you will look in 20 years, and the server does this by making actual modifications to imagemagick, then you don't think I have to publish my changes to imagemagick? I mean if I dig into the AGPL source code and really modify the whole program to do what I want/need. I can keep those modifications private, in your opinion? While even selling the output?
Re: Square’s terms of service forbid use of AGPL-licensed software in online stores
#145Earlier quoted context omitted.
TL;DR no, yes, probably no Go is a compiler+runtime. AFAIK any copyleft compiler worth using explicitly makes exceptions for its output and runtime, but the FSF says generally that the output of a GPL program is not also GPL[0]. If the runtime is AGPL (without such exception) and you link it into your program, your program is now considered a modified version of the AGPL runtime (e.g. it works exactly like the GPL in…
Thanks for your detailed reply, I read it carefully. Let's stay on imagemagick, except we pretend it has an AGPL license (that's not it's actual license, but this is the example I want to stick to.) So under these conditions: if you have a server where you upload a picture of yourself, and it shows how you will look in 20 years, and the server does this by making actual modifications to imagemagick, then you don't th…
I wouldn't worry too much about this case in practice because there are very few programs that choose the AGPL and don't have network interactivity.