I don't understand this:

Mattermost Licensing


You are licensed to use compiled versions of the Mattermost platform produced by Mattermost, Inc. under an MIT LICENSE

  • See MIT-COMPILED-LICENSE.md included in compiled versions for details

You may be licensed to use source code to create compiled versions not produced by Mattermost, Inc. in one of two ways:

  1. Under the Free Software Foundation’s GNU AGPL v.3.0, subject to the exceptions outlined in this policy; or
  2. Under a commercial license available from Mattermost, Inc. by contacting commercial@mattermost.com

Source: https://github.com/mattermost/mattermost-server/blob/master/LICENSE.txt

I read it like this: This is AGPL or commercial. What do they mean with "MIT"?


We already have a question here about distributing the compiled binary form of a piece of proprietary software under an MIT licence. As we said there, it's basically formalised freeware: the binary can be freely distributed (and in principle, freely modified, for all the good it will do you) but it doesn't come with source. The use of the MIT licence for the binary makes clear what can and can't be done with the binary in a way that makes immediate sense to people with free software experience, and it's quicker and simpler than trying to write your own freely-redistributable-binary licence.

In this case, we also have the added wrinkle that the source distribution is dual-licensed, much in the manner of MySQL: if you want to take this source code and use it as the basis for your own project, then if you're going to give your customers freedom you can use this source for free, but if you're not you have to pay. This concept is well-known and doesn't, it seems to me, conflict with Mattermost's use of MIT for their binary.

I note in passing that MIT permits reverse-engineering the binary, so in theory you could reverse-engineer the source from that, and have it usable under very lax licence terms. But since the source is already publicly-available under a strong copyleft licence, if you were thinking of taking that route you had better have a very clean and tightly-controlled reverse-engineering effort, so that nobody can later claim it was done with sight of the AGPL source, and thus was a derivative work thereof.

| improve this answer | |
  • 1
    Regarding your "note in passing", for languages that are sufficiently easy to decompile (e.g. Java and most other languages that "compile" to platform-independent bytecode) you might be able to just use the output of a fully automatic decompiler without any manual changes, thus demonstrating pretty convincingly that the decompiled source comes only from the MIT licensed binary. (Of course, presumably the point of having the source is that you want to modify it, in which case you also need to be careful not to base your modifications on the non-MIT version either.) – Ilmari Karonen Sep 15 at 21:05

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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