I am nowhere near knowing enough about trademark law to say whether this is anything even approaching a reasonable use of trademarks.
I am nowhere near knowing enough about trademark law to say whether this is anything even approaching a reasonable use of trademarks.
(Personally, I think it's a fairly bullshit distinction that's completely against the spirit of the GPL. It's probably legally allowed, though.)
So Matt's now offering these terms: a license to use the trademarks as they currently are, in exchange for concessions. The concessions include that they'd agree to not use their GPL-granted right to fork the code. This sounds like an agreement that would hold up, assuming he's right about the trademark policy.
Again, I have no idea about the actual legalities of trademark usage. It's entirely possible that Matt is wrong about them not being allowed to do what they're currently doing with the trademarks, but it sounds like lawyers will be arguing about that.
The point is that including this stipulation (attempting to limit the GPL-granted right-to-fork) appears to be itself against the GPL, and voids Automattic's previously-granted GPL rights.
In other words, if you even attempt to get someone to sign away their GPL granted rights, you lose your own GPL granted rights.
GPLv2 is silent on the subject of trademarks, and is a bit vague about additional restrictions -- section 4 would apply to trying to restrict usage of the code, but trademarks are a separate thing. GPLv3 explicitly allows you to decline to license your trademarks (see section 7, the paragraph starting "Notwithstanding any other provision of this License", clause e). This isn't generally called out as one of the big differences between v2 and v3, so I think it's intended more as a legally-spelled-out clarification than a change.
I'm not a lawyer, but the GPLv3 in particular seems compatible with the idea that you can tell someone that they can only use your trademarks so long as they behave in a certain way... so long as you're still allowed to fork the code, strip out those trademarks, and continue using it. Which does seem to be Matt's position. (I mean, he also wants to restrict access to Wordpress.org services, but that's even less in the GPL's area.)
The term sheet seems to show Automattic did precisely that (violated section 4 of the GPL license by trying to get someone to give up their GPL right to fork), ergo Automattic should lose their own GPL rights, including to parts of Wordpress. Trademarks don't factor in here.
The contract says the opposite – it states "you can use the trademark, but you have to forfeit your right to fork if you do"
Such an attempt to get someone to forfeit their GPL right-to-fork (even for consideration) is forbidden by the GPL license granted to Automattic, and the punishment for violating that GPL license in such a way, is that Automattic forfeits their own license.
Automattic is not allowed to propose a contract which limits someone's GPL right-to-fork. They did so anyways, and thus should lose their own license.
Those mean the same thing. It's implicit in the offer existing that you can choose not take the offer, and so don't get the stuff in it.
If any offer is made by 1 party which includes the other party giving up their GPL right to fork, that offer constitutes an attempt under the GPL to redistribute GPL code under reduced rights, which is a violation of the GPL, with the punishment being a revocation of the offerer's rights.
Yes, the offeree could choose not to accept the offer, but that does not matter: the mere offering of the offer constitutes an attempt, and thus a violation of section 4.
We agreed that a contract was offered which, if accepted, would revoke the GPL right to fork.
We agreed that the GPL doesn't allow such a revocation of the GPL right to fork (even if it is part of a contract).
We agreed that even attempting such a violation (e.g. by offering such a violating contract) is itself a violation of the GPL.
Honestly, it sounds like we're in violent agreement. The only specific disagreement you've expressed is in the best way to word something among several options which you say are equivalent.
Separately, the GPL calls out that you're allowed to place a restriction on your distributed code when it comes to trademarks, in that you're not required to license your trademark. I.e. you're allowed to distribute code that's GPL-licensed but that it's impossible for people to legally use as-provided without either forking it or obtaining an extra license from you. v3 is a lot more explicit about this, but it seems implicit in v2 as well.
You could certainly take the position that any sort of trademark license containing usage restrictions at all qualifies as a restriction under the GPL, so your only choices are to completely allow or forbid usage of your trademarks without any conditions. I disagree with that view.
You've interchangeably described WPEngine's consideration under the contract to be "something", "stuff", and "behavior" – this vagueness seems to be dodging the issue: what specifically, as you understand it, would WPEngine have to give up under the terms of the contract Matt presented, in exchange for usage of the trademarks?