[HN Gopher] A new home and license (AGPL) for Synapse and friends
___________________________________________________________________
A new home and license (AGPL) for Synapse and friends
Author : regularjack
Score : 112 points
Date : 2023-11-06 13:25 UTC (7 hours ago)
(HTM) web link (element.io)
(TXT) w3m dump (element.io)
| phoronixrly wrote:
| How refreshing, an open-source company choosing the AGPL instead
| of some contrived homebrew license!
|
| I welcome this change - as I've stated multiple times here, we
| need more AGPL-licensed software!
| Macha wrote:
| AGPL+CLA that assigns copyright to them. So element can do
| anything but others are held to the AGPL.
|
| I mean, it's better than SSPL, but considering how heavily
| they've marketed in the past on matrix being truly open, it's a
| little disappointing that they've chosen to go to asymmetric
| openness.
| hedora wrote:
| The asymmetry only lasts as long as their branch is better
| than some community fork.
|
| That's approximately as long as we have between now and when
| they stop investing in improving the end user experience.
|
| This is pretty close to ideal IMO.
| Pannoniae wrote:
| I don't think SSPL is worse than AGPL in practice, in fact it
| is better.
|
| The SSPL is effectively a stronger AGPL. This makes it non-
| OSI-approved, but the licence itself is completely fine. The
| major difference is that the SSPL also mandates that you
| release _everything_ needed to run the software, not just the
| software itself.
|
| For reference, it's worth to read the OSI's blogpost about
| this, it's quite _illuminating_ :
| https://blog.opensource.org/the-sspl-is-not-an-open-
| source-l...
|
| It's also worth mentioning that most of the attacks against
| the GPL, AGPL and SSPL are done by corporate shills, and OSI
| is also full of them. They pretend to support "non-
| discrimination of fields of endeavour" but they are
| undermining free software to SaaS-ify it. Don't fall for the
| "SSPL is not open source" propaganda.
| RobotToaster wrote:
| >The major difference is that the SSPL also mandates that
| you release everything needed to run the software
|
| Which makes it incompatible with little things like the
| linux kernel, since you don't have the licence to release
| it as SSPL
| fweimer wrote:
| The additional restrictions in the SSPL apply also to
| unmodified versions. This is very different from the AGPL,
| which does not impose any additional over the burdens over
| the GPL if you use an unmodified version of the software,
| even if you use that to offer network services. This
| provides a very clear path to AGPL compliance for most
| users, certainly those who get their software from a
| GNU/Linux distribution. (I missed that aspect of the AGPL
| for quite some time, admittedly.)
|
| The SSPL, in contrast, applies to unmodified versions of
| the software. This means that even if you get SSPL software
| from someone who publishes the sources, you have to take
| additional steps for license compliance if you want to use
| the software. Given that the SSPL requires publishing
| things like the source code for NIC and network switch
| firmware (both are obviously required for offering your
| network service ...), I just don't see how this license is
| useful besides being deceptive. The BSL with its typical
| field-of-use restrictions achieve the same thing in a much
| more direct manner.
| cxr wrote:
| > most of the attacks against the GPL, AGPL and SSPL are
| done by corporate shills, and OSI is also full of them
|
| To underscore something important in this discussion: there
| is no "The GPL is Not an Open Source License" post on the
| OSI blog, nor will there ever be one. GPL and AGPL have OSI
| approval.
| csdreamer7 wrote:
| And?
|
| If they are doing most of the development they need a way to
| finance that.
|
| Selling GPL exceptions is a Stallman approved tactic.
| cxr wrote:
| He approves of developers selling GPL exceptions. He
| doesn't approve of buying GPL exceptions*. It's a subtle
| point.
|
| (The natural corollary to this is that if the
| Element/Matrix folks--or anyone--were to ask you for a CLA
| excepting them from the project's own open source license,
| then you could/should feel comfortable kindly requiring
| them to pay you for it--a response which should be the
| default in the open source world, although it unfortunately
| is not.)
|
| * i.e. so you can make proprietary software
| ladyanita22 wrote:
| Agreed, I am not a fan of AGPL, but I could understand and
| accept it. Not with the CLA. The CLA means you'll have to pay
| for whatever you want privately developed.
| alwayslikethis wrote:
| As an additional plus, I think many SaaS companies (e.g.
| Google) ban the use of AGPL software on their company
| computers. The more advantages we can give to non-big tech
| developers, the better.
| ChrisArchitect wrote:
| [dupe]
|
| More discussion on the blog post over here:
| https://news.ycombinator.com/item?id=38162514
| tommiegannert wrote:
| > We believe in open source because it encourages innovation
|
| Sorry, but I was not amused when Dendrite decided to stop
| accepting PRs because they are a small team. That is far from
| encouraging innovation. To me, it seemed like lacking in
| sustainable FOSS management. PRs I sent were rewritten, squashed
| and merged by the Dendrite team, instead of them just doing
| reviews and asking me to fix what they considered
| unfitting(substandard/wrong.
|
| I never thought I'd say that a FOSS team is doing too much work,
| but it seems to me they burned out for some reason. I can only
| speculate as to the cause. Changing the license is not going to
| fix that problem.
|
| Anyway, I'm still an active Matrix user, and am grateful for all
| the work they do put into the projects. I just thought it was
| more fun to be able to contribute.
| zzzeek wrote:
| > PRs I sent were rewritten, squashed and merged by the
| Dendrite team, instead of them just doing reviews and asking me
| to fix what they considered unfitting(substandard/wrong.
|
| Core devs rewriting and fixing up PRs typically saves a _ton_
| of development effort. We field lots of PRs and while I make my
| best effort to hold their hand to get tests written and such,
| at some point it 's intensely wasteful of everyone's time to
| have five, six back and forths trying to get the person to
| write the test case you are telling them to, which you could
| write yourself in 90 seconds. never mind then getting
| contributors to write good docs, good changelog notes in the
| format your project uses, etc. I'll give them one shot for that
| stuff then I just do it, I really don't have time to "train a
| new employee" (who doesnt even _want_ to be trained, they just
| want their one-line fix) for every single one line change.
| exabrial wrote:
| I do appreciate _not_ using some home made license, thank you.
|
| Personally though, I find the AGPL too restrictive for projects.
| The [OSI Certified] EUPL I think is perfect:
|
| * If you don't modify the code: Behaves like the ASL2.0
|
| * If you do modify the code: * Behaves like the
| LGPL in that your private codebase remains private, but changes
| to the library must be submitted back during a 'distribution'
| event * Behaves like the AGPL: Offering a service
| that uses the library counts as a 'distribution'
| tristan957 wrote:
| I've never heard of this license before. Thanks for pointing it
| out.
| robertlagrant wrote:
| The last point I never understand. E.g. take Redis if it were
| licenced in that way: where is the line where it counts as a
| service? Directly exposing a Redis port? Putting a REST API
| over the top of it and selling a cache as a service? Making a
| paid for JWT invalidation service that's basically a small
| application layer of Redis? Or something else?
| exabrial wrote:
| I suggest reading the license as IANAL... but my
| understanding is all three of those would count as a
| "distribution" event.
|
| Keep in mind, you would only need to "make source available"
| if and only if you modified Redis. And even in that case, you
| only have to submit the modifications to Redis. So even
| though a "distribution event" is happening, if there are no
| changes to the Redis server or client library itself, you're
| compliant without doing anything else.
|
| So yeah, all things considered, it'd be a great license for
| Redis in my opinion.
| benatkin wrote:
| This web page tells me they really don't want you to read the
| license.
|
| https://commission.europa.eu/content/european-union-public-l...
|
| You have to go to a list of languages, and then once you find
| English on the list it gives you a PDF or text, no HTML
| version.
|
| I read it, and I think the exception allowing for compatibility
| with the MPL would allow me to pretty much do what I want with
| a larger work, as long as I release changes to the code files,
| and shipped it with some MPL code. It says that where the
| license conflicts, the compatible license prevails. I'm also
| not convinced that the Distribution section behaves like the
| AGPL: https://opensource.stackexchange.com/a/12298
| exabrial wrote:
| https://joinup.ec.europa.eu/sites/default/files/custom-
| page/...
| jordigh wrote:
| > or by contacting Element for an alternative license
|
| Ah, selling exceptions. Even Stallman thinks this is legit.
|
| https://www.gnu.org/philosophy/selling-exceptions.html
| mgbmtl wrote:
| A long time ago, I remember a MySQL talk where they explained
| dual-license as "if you make money, then we make money", while
| keeping the product FOSS.
|
| I think it's a reasonable simplification.
|
| And if the company changes the licence, then a A/GPL fork can
| survive (c.f. Hashicorp, which could have probably avoided
| their issues with a better licence from the start, but at the
| time no one expected to be eclipsed by big cloud providers with
| infinite resources).
| Cu3PO42 wrote:
| While I don't agree with everything Stallman says and does, I
| really do appreciate that his position on this issue is not
| just another axiom, but follows purely from other positions he
| had already established.
| WhyNotHugo wrote:
| So AGPL+CLA:
|
| > The benefit of switching to AGPLv3 is that it obliges
| downstream developers to contribute back to the core project -
| either by releasing their modifications as open source for the
| benefit of the whole Matrix ecosystem, or by contacting Element
| for an alternative license. Future code contributors to Synapse
| will need to sign a contributor license agreement (CLA)
|
| This makes it clear that they intent to ship under some
| alternative license, for a fee. They're making others sign an
| agreement to ensure that they have privilege to ship the project
| (or forks of it) under a proprietary license.
|
| I wouldn't consider any of this open source any more. These are
| step that a organisation takes when they want to move to an open
| core model and screw over the community. What they are doing is a
| required step to pull the same stunt as terraform.
|
| It's technically still open source today, but this consolidates
| them into a position to change this at will. Don't be fooled by
| the tricky wording that makes this sound like a good thing. These
| folks are very unambiguously screwing over the community and
| making it sound otherwise.
|
| As usual, remember to never sign a CLA.
| progval wrote:
| > This makes it clear that they intent to ship under some
| alternative license, for a fee
|
| They already did, as the Apache License allows them to.
| pgeorgi wrote:
| The difference is that so far, everybody was allowed to do
| that. With that change, only they can do that (with new code
| going forward). And ask developers to jump through hoops for
| the privilege.
|
| That _might_ be the best option for Synapse etc, but it
| should be clear what they're offering.
| dm319 wrote:
| Isn't this the case for any GPL-like license? Anyone wanting to
| build commercial software based on GPL-licensed code has a
| choice - either publish the full source code, or try to
| negotiate a closed source license with the copyright holder.
| emersion wrote:
| Related: https://drewdevault.com/2023/07/04/Dont-sign-a-
| CLA-2.html
| abdullahkhalids wrote:
| What are your thoughts on Stallman explicitly saying that
| selling exceptions is fine [1]?
|
| [1] https://www.gnu.org/philosophy/selling-exceptions.html
| benatkin wrote:
| > I wouldn't consider any of this open source any more.
|
| Stallman's term is "free software", this said "open source".
|
| I use OSD to define it, so I consider it technically open
| source, but to me it's open source that isn't under an
| acceptable license.
| ralmidani wrote:
| Free Software and Open Source are essentially the same
| thing, just looked at from different angles.
|
| https://www.gnu.org/philosophy/open-source-misses-the-
| point....
|
| "In practice, open source stands for criteria a little
| looser than those of free software. As far as we know, all
| existing released free software source code would qualify
| as open source. Nearly all open source software is free
| software, but there are exceptions."
| benatkin wrote:
| Not to me it doesn't. When the thing is a movement in the
| software community, the perspective changes the essence
| of the thing.
| ralmidani wrote:
| You're free to adopt whichever perspective you prefer.
| But Free Software is always Open Source. That's an
| objective fact.
| tcfhgj wrote:
| The way around isn't true though, which you claimed when
| you wrote is essentially the same
| fsflover wrote:
| The difference is that open-source forces you to think
| about code, whereas free software about your freedom.
| phoe-krk wrote:
| The term you're looking for is "permissive". It is open
| source, but it is no longer as permissive as it was.
| benatkin wrote:
| I know that term, but I don't think it's that much more
| clear. When someone forks the code and makes changes but
| doesn't contribute it back to the community, them having
| been allowed to do that is more permissive. However, what
| outsiders can do with their changes is less permissive.
|
| There's no shortcuts to making a nuanced topic much more
| clear.
|
| However, it is a frequently used term, so it's useful for
| quickly referring to these licenses.
| https://en.wikipedia.org/wiki/Permissive_software_license
| saagarjha wrote:
| Stallman's point (which I largely think is a cop out, fwiw)
| is that the goal should be that the software remains free,
| and that making small compromises to further that goal is ok.
| Repositioning your software to be nominally free but actually
| picking a license that maximizes the chance that people pay
| you for a proprietary version goes against this spirit,
| because it's clear that you don't actually have software
| freedom as your priority.
| kiba wrote:
| If the proprietary version is what they prefer over free
| and open source software, and which they are not allowed to
| distribute and modify, and which are otherwise completely
| identical, it's no skin off my back.
|
| If they don't want freedom for themselves, that's on them.
| cxr wrote:
| > Stallman's point (which I largely think is a cop out,
| fwiw) is that the goal should be that the software remains
| free, and that making small compromises to further that
| goal is ok.
|
| Mm, that doesn't really summarize (or engage with)
| Stallman's thinking on the matter.
|
| Stallman's position is that if it is perfectly ethical for
| someone to license their research under e.g. BSD, MIT/X11,
| or a license that is similarly permissive, and it is (of
| course) ethical to license it under GPL, then it is not
| _more_ unethical to go with something which sits in between
| the two (copyleft for some, permissive for others).
|
| To put it another way: if Alice picks a GPL-compatible,
| free software license like Apache 2.0, and then Goog makes
| something proprietary out of it, then Goog is being
| unethical, not Alice. If Goog does the same thing _and_
| gives Alice money, then nothing changes except the bad
| actor has less money and the good actor who created the
| software and made it libre has more money.
| jenadine wrote:
| If you didn't have software freedom as a priority, then why
| even pick an open source license? To me they are trying to
| find a way to make a living, while still working on free
| software. It seems to me like a win-win situation: users
| get more free software, and they get to pay their bill.
| This is not always possible with every kind of software or
| business model though.
| jacobr1 wrote:
| AGPL is a more free license than BSL, which is the most
| likely alternative for a company like Element.
| mrob wrote:
| Are permissive licenses also "screwing over the community"?
| Those also allow third parties to use the code in proprietary
| software. What difference does it make to the community if
| Element gets paid for this?
| fabrice_d wrote:
| Yes using permissive license allows businesses to take unfair
| advantage of the work done by the community for their own
| profit without contributing anything, but it's explicit in
| the license terms. When you go with *GPL + CLA, it's more
| subtle: bad things can happen, but pinky promises are made
| that won't be the case. We've seen that movie before of
| course.
|
| As a community contributor, I may not want my contributions
| to be used to enrich a corporation that doesn't give back to
| the commons.
| LaGrange wrote:
| Yes. That's why you shouldn't contribute to software on
| permissive licenses.
|
| > What difference does it make to the community if Element
| gets paid for this?
|
| Without that, Element would have to either pay people their
| fair share, or _leave_. They're not a charity, they're not
| doing this "for us," they're just extracting free labor.
| kragen wrote:
| probably you should only sign the cla if they pay you
| enough
| tensor wrote:
| Personally I would never contribute to AGPL software. I
| don't want my contribution to forever be stuck in some
| political movement.
|
| I do contribute to permissive licensed software.
| lrvick wrote:
| > I wouldn't consider any of this open source any more.
|
| If this was BSL I agree with you, but that is not the case.
|
| AGPL is about as open source as it gets. It is forced open
| source.
|
| I recommend AGPL to any of my clients open sourcing anything in
| a competitive environment these days. Free for the public, but
| greedy corpos that do not want to share changes and be part of
| the community are forced to pay to support the developers that
| are.
|
| This AGPL working as designed, and is certainly FLOSS.
| david_draco wrote:
| > I wouldn't consider any of this open source any more.
|
| If you sell someone a AGPLv3 licensed software, that is
| completely okay and FOSS. If that someone sells someone else a
| (maybe modified) AGPLv3 licensed software, that is completely
| okay and FOSS.
|
| Not only Matrix can resell Element for a fee, so can you! That
| is open source and freedom for you.
|
| The ability to change or dual-license has always been limited
| to special circumstances. That said, yeah, don't sign a CLA.
| dingnuts wrote:
| No, the Affero GPL is not "FOSS". It is Open Source but it is
| NOT libre because of the additional requirements (forced
| upstream contributions even on unreleased modified versions
| of the upstream software) imposed on potential forks of the
| project.
|
| Affero GPL is the premier tool of "open source" corporations
| to confuse potential contributors into THINKING that the
| project is FOSS and in order to trick them into giving up
| their labor for free.
|
| Don't fall for it! If someone wants you to contribute to an
| AGPL project, you should ask: how much will you pay me for my
| labor?
|
| The AGPL is the single best example of the difference between
| Open Source and Libre software. The AGPL is so restrictive
| and grants so much power to the original rights holder that
| it is really a source available proprietary license.
|
| Stop giving your labor to for-profit companies for free! It
| screws all of us!
|
| HEY DOWNVOTERS SHOW ME WHERE I'M WRONG IN THE LICENSE
|
| I quit a job over this stance, because I won't contribute to
| this farce. But Element lovers downvote because they like
| being exploited and won't even comment to show me why I'm
| wrong about this
| FireInsight wrote:
| From the FSF:
|
| > The GNU Affero General Public License is a modified
| version of the ordinary GNU GPL version 3. It has one added
| requirement: if you run a modified program on a server and
| let other users communicate with it there, your server must
| also allow them to download the source code corresponding
| to the modified version running there.
|
| I don't understand how this corresponds with anything you
| are saying.
| dingnuts wrote:
| It says if you modify the code you must distribute it.
| That means if, for instance, I wanted to modify Synapse
| to satisfy my users, for instance a bespoke
| authentication backend, I would be FORCED to release and
| distribute that change.
|
| This is NOT the way the GPL works, because the AGPL
| forces you to make your change available to the parent
| corp so that they can benefit for free from your labor.
| The GPL only forces you to make your source code
| available if you plan to distribute it. The AGPL makes
| that requirement for even USING server software. It is
| not the same, at ALL!
|
| And it's right there in what you quoted -- what part
| don't you understand about "must make available for
| download the source code"?
| FireInsight wrote:
| Oh, so modifying and releasing source code automatically
| makes you sign the CLA and contributes those changes back
| to the parent project? I'm not seeing how forcing
| modifications to libre software be published as libre
| software is a bad thing.
| Brian_K_White wrote:
| It's GPL3 with a server technicality loophole closed. If
| you think that's intolerable, I think it just did it's
| job in protecting the authors and everyone else from you.
| callahad wrote:
| > _the AGPL forces you to make your change available to
| the parent corp so that they can benefit for free from
| your labor_
|
| I think you're missing a crucial nuance here. You have to
| make your change available _under the AGPL._ So the
| parent corp _cannot_ use your modifications in
| proprietary offerings unless you separately and
| voluntarily sign a licensing agreement.
|
| This grants you _power_ over the parent corp: if they
| want your changes, they either need to keep them
| equivalently open, or they need to come to an agreement
| with you.
| Loic wrote:
| I way prefer them to do that than them to close their shop.
| They do all the development and then you have some big software
| development providers selling solutions for millions of EUR to
| government agencies and they get nothing out of it. That at
| some point they consider that a part should go back to them or
| if no money some code is fair.
| josephcsible wrote:
| > I wouldn't consider any of this open source any more.
|
| I agree with most of your comment, but not that.
| lol768 wrote:
| Nice to see AGPL instead of something like the increasingly-
| popular (non-FOSS) BSL. Copyleft licenses are great, I've seen
| too many examples of permissively-licensed libraries being taken,
| worked on by corporations and profited from without any bug
| fixes/improvements being upstreamed.
| ralmidani wrote:
| It's awkward to ask people to assign everything to you in a way
| that makes you the only entity that can sell AGPL exceptions. If
| contributors are paid for their contributions that would be
| awesome, but it's not clear that they are.
| benatkin wrote:
| I just uninstalled Element from my phone. Matrix long marketed
| itself as being truly open. Now they've taken the core server
| project and made it asymmetric.
| jenadine wrote:
| Have you ever contributed anyway ? If not it was already
| assymetric since you were just an user and they were providing
| the software. Anyway, nobody forced you to use their software.
| Your loss.
| benatkin wrote:
| I'm vindicated by not contributing :)
| lrvick wrote:
| And now they are -more- open. Did you misread their post? AGPL
| is just forced open source.
| benatkin wrote:
| It's forced for those who can only use it under the license
| (everyone except Element/Matrix). It isn't forced for the
| copyright assignee (Element/Matrix).
|
| That isn't more open to me.
| proto_lambda wrote:
| Forced open source for _everyone but them_. They retain
| copyright and will continue to sell proprietary adaptions,
| while forbidding everyone else to do the same.
| Spunkie wrote:
| AGPL is a misdirection, the CLA reveals what is likely their
| true long term intentions.
| benatkin wrote:
| it starts with "clo" and ends with "urce"
| regularjack wrote:
| Why move the repos from the matrix-org GitHub org to Element's?
| Feels like that's a step back in what concerns Matrix Foundation
| assets being untangled from Element.
___________________________________________________________________
(page generated 2023-11-06 21:01 UTC)