4

Is it considered valid for a company to create an app and then state that it is licensed under the AGPL, but then only allow users who have paid to actually acquire the source code?

Assuming this is valid, what prevents me, or anyone, from simply purchasing the app and then rebranding it, calling that a "fork" and then re-releasing the code as free-of-charge open source, still AGPL licensed? (Or for that matter, just releasing the code in the first place - can the AGPL actually prevent you from distributing unmodified source code?)

Specific example: the Full-Text RSS PHP service here: http://fivefilters.org/content-only/ This application asserts that it is licensed under the AGPLv3, but you are required to pay to get the sources and "free updates for a year". This is actually the only example I've ever seen of an "open-source" application being fully behind a paywall.

So specifically:

  • Is it "compatible" with the AGPL to only allow people who pay to have access to your source code? (This part seems at least partly reasonable, because the GPLs in general do not restrict you from charging)
  • Can you actually say "you only get updates for one year, then you have to pay again" with an AGPL application?
  • If I pay for the application, am I allowed to freely redistribute it and/or use parts of its source in my own code under the same terms as I would with a free-of-charge download? (In this case, what's the point of locking the code behind a paywall?)

(I do understand how some companies will dual-license, offering a free-of-charge community version under (A/L)GPL and then offering a commercial version under a proprietary license. That doesn't appear to be what is happening here.)

5

First, it's important to consider whether the company selling this software is the exclusive copyright holder or if they are themselves licensees of someone else's AGPL license grant. If they are the sole copyright holder, they may offer as little or as much of their code as they want under the AGPL purely out of the goodness of their hearts (or according to whatever business goal this actually fulfills). Under no circumstances would they by beholden to the requirements of their own AGPL grant. They may proactively give you updated versions of their own code for as long or as short a time as they please. It's their code.

On the other hand, if they are licensing the work under the AGPL because their code is a derivative of someone else's AGPL-licensed code, then they have an obligation to offer the code to anyone who "interact[s] with it remotely through a computer network". If you interact with their modified work through a network then they are required to notify you of your rights under the AGPL, and you are entitled to receive a copy of the code under the AGPL as part of those rights.

If they have such an obligation and fail to meet it, they are liable for copyright infringement since they are operating outside the terms of their copyright license grant, and the original copyright holder has standing to take legal action against them. (You may wish to notify them, and the Free Software Foundation, which has an interest in helping authors enforce the licenses they publish.)

All that said, here are the answers to your specific questions:

Is it "compatible" with the AGPL to only allow people who pay to have access to your source code?

Yes, you may do so as long as one of these is true:

  • you are the sole copyright holder of any AGPL-licensed components, or
  • you offer the source code to anyone who gets the binary from you, or interacts with your modified work over a network. (Note that you may take pains to ensure that the set of people who do this is strictly limited to paying customers.)

Can you actually say "you only get updates for one year, then you have to pay again" with an AGPL application?

If you're not the sole copyright holder of the AGPL components, you must offer the source code of the work when a users gets a binary from you or when a user interacts with the work over a network (if you modified it). If you are not the sole copyright holder, you may not say "I previously offered you source code for an older version; I am now offering you network access to a new modified version or a copy of a different binary and refuse to give source code for this current version." However, if you are the sole copyright holder, or do not give out access to later versions, then you have no obligation to offer the source for later versions.

If I pay for the application, am I allowed to freely redistribute it and/or use parts of its source in my own code under the same terms as I would with a free-of-charge download? (In this case, what's the point of locking the code behind a paywall?)

Any recipients of an AGPL-licensed work have the freedom to redistribute the work under the terms of the AGPL, whether or not they paid someone money to transfer them a copy. I speculate the point of charging for the code is that people (or likely, businesses) who pay for it are really interested in getting the latest updates immediately, rather than trawling around looking for someone who has a copy of the latest version (and having to trust that it hasn't been maliciously modified by this secondhand reseller).

  • This was quite helpful, thanks -- The example I gave, the "Full Text RSS PHP" script, consists of use and integration of many projects from various licenses; the custom code that implements the "features" would be authored by the organization selling the app. The thing that interests me is that they do offer free use of it "over a network", on their servers, with artificial limitations; the idea is "pay us to get the source and you can then run it on your own server without limits." Based on what you said, this does seem to at least teeter off the edge of a cliff with respect to the AGPL... – fdmillion Jun 30 '18 at 7:33
  • 4
    @fdmillon Yeah, I see they use an AGPL library for HTTP. Unless they have an agreement with the author(s) of that library or are the author, it seems like they are not fulfilling their AGPL obligations. I certainly interacted with the software over a network, but I was not offered the source. If they didn't offer an interactive demo (or offered a demo of a reduced-feature version, with source) they wouldn't have this problem. – apsillers Jun 30 '18 at 12:24

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.