Skip to main content


Normalize the use of #AGPLv3 for its original purpose: to help protect the freedoms of the end-users of networked services like #Mastodon, not to help build a proprietary software business model (in which alternative commercial licenses are sold because the obligations of AGPLv3 are "scary").

(Personal opinion).

reshared this

in reply to Matt "msw" Wilson

AGPLv3 doesn't really do that though -- the license is so badly written that you can entirely comply with it by adding a (real) source code link in your fork, but then running that fork behind a proxy which strips the link. Perfectly legal per the license.

(This all comes from the fact that AGPL tries to enforce usage restrictions, which are against Free Software principles, via weird copyright hacks that don't really work.)

This entry was edited (2 years ago)
in reply to Pierre Bourdon

@delroth I don't follow this "loophole" at all. Is there some more detailed writeup that explains in more detail?
in reply to Matt "msw" Wilson

it's not a loophole. AGPLv3 is basically just GPLv3 + clause 13, which is "if you modify the Program, your modified version must prominently offer all users interacting with it remotely through a computer network an opportunity to receive the Corresponding Source of your version"

You have to make your fork advertise its source code. But there is nothing that prevents you from running that fork behind an HTTP proxy which then strips this offer.

in reply to Pierre Bourdon

@delroth it's a known possible loophole but I don't see a way around it.

I don't think I'd want to defend that decision in court though.

in reply to Eric Schultz (parody)

@wwahammy @delroth indeed, but before a plaintiff gets there, many in the #FOSS community likely would have ostracized the offender.
in reply to Matt "msw" Wilson

@wwahammy @delroth

I'm not sure how making an offer for source that users can neither see nor access, could possibly be argued as having actually made an offer, but IANAL.

Things like "I wrote a check but never mailed it" generally doesn't fly in courts.

#Copyleft #AGPL #FreeSoftware

in reply to Michael Downey 🚩

@downey @delroth like I said, I wouldn't want to be the one explaining to a judge why this was legal. If they're wrong, I suspect the judge would not be amused.
in reply to Michael Downey 🚩

@downey
Exactly what I thought. I don't think the arguments you're responding to are made in good faith anyway. The clue is here;

@delroth
> AGPL tries to enforce usage restrictions, which are against Free Software principles

Copyleft is not a "usage restriction", it's a prohibition on such restrictions (via proprietary re-use).

> via weird copyright hacks that don't really work

Factually wrong. GPL has been enforced in court on multiple occasions by SFLC, SFC and others.

@msw @wwahammy

in reply to Strypey

@strypey @downey @delroth @wwahammy I wouldn't go so far as to say arguments posted here are in bad faith. If one's objective here is to advance the cause of #SoftwareFreedom then we will naturally have debates, sometimes spirited ones, about the best ways to go about doing that.

Relatively speaking, AGPLv3 *is* less tested in courts compared to GPLv2.

in reply to Strypey

@strypey you're fighting a strawman. I never said that copyleft was a usage restriction, or that GPL didn't work.

I said that AGPL's attempt at using a copyright license to try and enforce terms on usage (but not really, wink wink) is an untested hack which is full of loopholes.

I'm unsure why you're inserting yourself in a discussion about open source licenses when you don't seem to differentiate GPL from AGPL.

in reply to Pierre Bourdon

@delroth @strypey I don't see AGPLv3's obligations in "usage" of the software to be substantially different to how GPLv3 can be "used" (or not used) to create new software works.

For example, to enjoy the permission to run the program for any purpose (Freedom 0), you have to make a promise not to enforce DRM anti-circumvention clauses of the DMCA for derivative works. You are effectively "restricted" from creating a Digital Rights Management system by "using" GPLv3 software components.

in reply to Pierre Bourdon

@delroth
> you're fighting a strawman

I apologize for misrepresenting your point. It might help if your posts laid out your argument in a bit more detail, so we don't have to guess at what the meat of the argument might be.

> you don't seem to differentiate GPL from AGPL.

Since you've clarified that your comments were targeted at clause 13 of AGPL, not copyleft itself, you're right that GPL enforcement is off-topic. Again, my apologies.

@msw @wwahammy @downey

in reply to Strypey

@delroth
> AGPL's attempt at using a copyright license to try and enforce terms on usage

IANAL but my lay understanding is that copyright prevents me making a copy of a piece of code, without permission from the copyright holder. If I can't copy it, I can't use it in any way. A copyright license - which all software licenses are, libre or otherwise - gives me permission to copy, and the copyright holder can use it to enforce any limits on usage they like.

(1/2)

@msw @wwahammy @downey

in reply to Strypey

@strypey @delroth @wwahammy @downey there have been arguments about how to scope the permissions and obligations of a copyright license.

Some argue that you can write any terms you want in a copyright license. I don't know of any lawyers that say that is a good idea, as you can run afoul of copyright misuse defenses (at least in some jurisdictions).
en.m.wikipedia.org/wiki/Copyri…

in reply to Matt "msw" Wilson

> you can run afoul of copyright misuse defenses (at least in some jurisdictions)

Intriguing. I didn't know these existed. Might be worth pointing this out to the more militant factions of the Shared Source crowd (eg the ones who use the pro-vaccination software licenses).

@delroth @wwahammy @downey

in reply to Strypey

@strypey @delroth @wwahammy @downey the Vaccine License was a strawman put forward pseudonymously by Bruce Perens, who is definitely not a proponent for those licenses that attempt to compel behaviors unrelated to the licensed work.
m.youtube.com/watch?v=vTsc1m78…
in reply to Matt "msw" Wilson

@strypey @delroth @wwahammy @downey SSPLv1, as a modification to GPLv3, is framed as a copyright license. And so lawyers have pointed out that a misuse defense could be an issue. processmechanics.com/2018/10/1…
in reply to Matt "msw" Wilson

@delroth
> the Vaccine License was a strawman put forward pseudonymously by Bruce Perens

Really, that's a relief. I feel a bit silly now, although it's nice to know the person who punked me was Bruce Perens, who I highly respect. That hoax license is a really good satire of what's wrong with that whole class of morality licenses.

SPPL and the various other 'I can use yours but you can't use mine' licenses are a different kettle of fish of course...

@wwahammy @downey @richardfontana

in reply to Strypey

@delroth
As you said, the only difference between GPL(v3) and AGPL(v3) is clause 13. Again, IANAL, but my understanding of 13 is to clarify that supplying a network service using the code, counts as distribution of the code. So all the terms in the rest of the license still apply, including obligation to provide source code to end users. If it wasn't enforceable, TruthSocial wouldn't have published their source code when merely threatened with AGPL enforcement.

@msw @wwahammy @downey

in reply to Strypey

@strypey @delroth @wwahammy @downey is has not been argued as "distribution" but rather "public performance".

See lwn.net/Articles/541981/ for more details.

in reply to Matt "msw" Wilson

> not been argued as "distribution" but rather "public performance".

Ah, I'm guessing describing a network services as a "public performance" is the legal hack that @delroth referred to. Seemed to convince one of the world's most litigious men to publish his source code though, so...
@wwahammy @downey

in reply to Pierre Bourdon

Just imagine a judge asking the question: "you programmed it to do it and then programmed it not to? How is that compliance?"
in reply to silverwizard

@silverwizard two different works (the copyright license of one has no influence on the other) and AGPLv3 specifically forbids derivatives to introduce restrictions on usage (clause 2, inherited from GPLv3 and from the core tenants of Free Software).
in reply to Pierre Bourdon

clearly the spirit of the license would be that "you can't use the forked software in a context where it doesn't advertise its source code to users".

But that's not how it's written/implemented. Simple reason: this would be against the FSF's Freedom Zero, "The freedom to run the program as you wish, for any purpose".

gnu.org/philosophy/free-sw.en.…

in reply to Pierre Bourdon

@delroth I put the "you can run a version behind a proxy that removes the prominent advertisement" argument in the general bucket of "but you can circumvent the license with a simple wrapper".

There are many ways that people have tried to circumvent copyleft licenses, but accidental non-compliance is most common.

Community-oriented enforcement starts with education.
sfconservancy.org/copyleft-com…

Unknown parent

Eric Schultz (parody)
@delroth @lbruno I think we can summarize this all as "there might be loopholes in the AGPL that make it possible to violate the spirit". I think most would agree that's possible.
Unknown parent

Pierre Bourdon

@lbruno I also wish that's what the AGPLv3 was enforcing. That would make it a somewhat useful license.

It's not though. Clause 13 is extremely short and easy to read. It adds very specific requirements to the base GPLv3 license, and none of what you describe (ownership of a hypothetical proxy, etc.) is part of it.

If you want to debate this further then please quote specific parts of the license text that support your interpretation, otherwise I'm very uninterested in this discussion.

This entry was edited (2 years ago)
Unknown parent

الجبر خوارزمی

@delroth you're defending the hypothetical proxy by comparing it with some other software which is in the receivers control, like an advert blocker or a forward proxy

when the hypothetical agpl-stripping proxy is instead under your control, and has no legitimate justification nor purpose

and then you're offering me up as insane on foot of this unwarranted comparison, all while ignoring the plainly visible fact that “what merit is there in stripping the notice?” has no plausible answer?

@msw

Unknown parent

Pierre Bourdon

@lbruno AGPLv3 has deliberately chosen a very specific wording for its restrictions, making it really hard to argue for interpreting its spirit vs. letter.

If the proxy isn't the user to whom the offer must be extended, then the user's web browser probably isn't either, and thus an ad blocker filtering your source code advertisement means you violate the license. Or a forward proxy running on a corp network. It would be an insane interpretation, and not supported by the letter of the AGPL.

Unknown parent

Matt "msw" Wilson
@lbruno @delroth Yup, and it may be enforced as a contract in California, depending on how the Vizio case goes.
Unknown parent

الجبر خوارزمی

@delroth and at least one judge here in Europe has decided that the GPL is a contract -- specifically in France

i'd be wary of trying to defend a smart-alec position in front of a judge, regardless of whether the agpl is a license or a badly-written eula

in reply to Matt "msw" Wilson

how to show/convince people that AGPL is not viral (causing exposure of networked software that AGPL software touches)?
in reply to Mark Keisler

@grimm I don't know how to accelerate this in a way that scales. I think #FOSS software adoption, which is influenced by the terms of the license, is often organic...
in reply to Matt "msw" Wilson

10 years ago or so, I had a battle at a large corporation that I worked for about bringing in an AGPLv3 licensed microblogging software. The lawyers were afraid someone could compel us to release source code for anything linked through the site that was not OSS.
in reply to Mark Keisler

@grimm that's probably where we need to help connect lawyers to a peer support group of other lawyers.
in reply to Matt "msw" Wilson

A long form summary of the talk by @n8 was published in @LWN

lwn.net/Articles/541981/

in reply to Matt "msw" Wilson

It's interesting to look back on this talk, given in February of 2013, that begins with the framing of the "Application Service Provider loophole":
"""
Rather, the authors of the GPLv2 did not foresee the dramatic takeoff of web applications—and that was not a failure, strictly speaking, since no one can foresee the future.
"""
in reply to Matt "msw" Wilson

Bradley went on to say,
"""
the community needs to be aware that the AGPL can be—and often is—abused. This is usually done through "up-selling" and license enforcement done with a profit motive, he said. MySQL AB (now owned by Oracle) is the most prominent example;
"""
in reply to Matt "msw" Wilson

So, Bradley *did* foresee the future of #AGPLv3 abuse. Only a few months later, Oracle changed the license of #BerkeleyDB to AGPLv3.

lwn.net/Articles/557820/

in reply to Matt "msw" Wilson

@drewdevault The one thing that stands put for me is
the case where somebody hopes google hires them to further non-AGPL code bases that they find valuable, like an informal anonymous internship. Perhaps people in this situation would do better to dual license, like Cygnus did with cygwin.
in reply to Matt "msw" Wilson

I was gonna make a hilarious joke about article topics that get read once per decade, but the truth of it is that licenses last a long, long time and that's why deep thinking about them is so indispensable....
in reply to Tim Bray

@timbray @ahl mastodon in jokes are less accessible to a mastodon skeptic than might be imagined
in reply to PedroMJ

@pedromj @timbray @sogrady @ahl all #FreeSoftware licenses are permissive. Some seek to ensure all the permissions are passed on to others, that's all.
in reply to Matt "msw" Wilson

@timbray @sogrady @ahl I suppose, as most know about the permissiveness, but it is better to clarify, because many people do not know that #copyleft and #copyright licenses live together in the #freesoftware ecosystem.
in reply to PedroMJ

@pedromj @sogrady @ahl

Most people know nothing about the variations in open-source licenses, nor should they need to.

Hmm, if someone were trying to pick a license and asked me for advice, I'd ask them questions and make a recommendation, but if they instead asked “where could I go and read up on all this stuff?” I wouldn’t have a good answer. Matt, what would you recommend?

in reply to Tim Bray

@timbray @pedromj @sogrady @ahl on one end of the spectrum there's choosealicense.com/ and at the other there's academic.oup.com/book/44727
in reply to steve o'grady

@sogrady @timbray @ahl it's trending, but ICYMI...

mastodon.social/@mattsheffield…

in reply to Matt "msw" Wilson

@sogrady @ahl

If you scroll down my timeline there are a couple of pretty funny takes. Masto town is giggly this evening.

in reply to Matt "msw" Wilson

#AGLv3 rocks. It enables the kind of win-win sharing and community development for networked services that local only software has benefited from for decades.

When corporations tell you AGPL is scary and incompatible with developers earning a living, and offer their own "business-friendly" alternatives, don't be fooled.

in reply to Matt "msw" Wilson

I think the advancement of the whole of software through use of AGPLv3 is better than leaving such software hidden behind commercial terms only. The costs to create a real business around a service are substantial, and it’s easy to see how existing software behemoths have entirely too much advantage unless you include provisions that keep others from taking advantage of your own altruism with a minimum of effort.
in reply to Brian Jones

@bjones yes, I think that software being available under AGPLv3 license is better in many ways than software being closed off under proprietary licenses.

But the licensor of the software needs to understand what freedoms they are giving via AGPLv3, and that includes the freedom to compete in free markets.

AGPLv3 is not designed to protect the licensor (apart from warranty disclaimer, etc.). It protects freedoms for the user.

As long as the licensor groks that, it's all good.