

I would understand if Canonical want a new cow to milk, but why are developers even agreeing to this? Are they out of their minds?? Do they actually want companies to steal their code? Or is this some reverse-uno move I don’t see yet? I cannot fathom any FOSS project not using the AGPL anymore. It’s like they’re painting their faces with “here, take my stuff and don’t contribute anything back, that’s totally fine”
The unfortunate reality is that a significant proportion of software engineers (and other IT folks) are either laissez-faire “libertarians” who are ideologically opposed to the restrictions in the GPL, or “apolitical” tech-bros who are mostly just interested in their six figure paychecks and fancy toys.
To these folks, the MIT/BSD licenses have fewer restrictions, and are therefore more free, and are therefore more better.
it’s interesting how the move away from the gpl is never explicitly justified as a license issue: instead, people always have some plausible technical motivation. with clang/llvm it was the lower compile times and better error messages; with these coreutils it’s “rust therefore safer”. the license change was never even addressed
i believe they have to do this exactly bc permissive licenses appeal to libertarian/apolitical types who see themselves as purely rational and changing a piece of software bc of the license would sound too… ideological…
so the people in charge of these changes always have a plausible technical explanation at hand to mask away the political aspect of the change
The rust coreutils project choosing the MIT license is just another gambit to allow something like android or chromeos happen to gnu+linux, where all of the userland gets replaced by proprietary junk.
And yet that’s a popularly welcomed approach, for some reason. Just look at the number of thumbs down this has. https://github.com/uutils/coreutils/issues/1781
yeah, unfortunately most people in the foss community are the apolitical/free thinker types who hate the fsf bc it is “too political/evangelist” and don’t want to understand how user freedom is affected by permissive licenses
I"m with you on copyleft, but if I had any connection to the project and felt the need to add a reaction emoji, it’d probably be a “thumbs-down” as well.
It’s not because I’m against the GPL, but because of the way the GitHub comment is written.
It doesn’t even say “you should use the GPL”, it says “you MUST say GNU doesn’t agree with you”. I’m perplexed.
Now, I respect the idea of GNU, but the way GNUers in general go about behaving themselves is perfect to alienate people, and this GitHub issue is a prime example. I don’t get it.
If people don’t know about GNU, tell them. Nicely.
If people have misconceptions about GNU, there’s nothing wrong with fixing them. Again, nicely.
The problem is, whenever I encounter GNU and however much I agree with them on key issues (which is at about 90%, my main gripe with them being Freedom 0), they just have a knack to get me, someone who is with them on most issues, annoyed at them. I can clearly see how someone who isn’t as alligned with them as I am gets equally annoyed and avoids GPL and GNU like the plague just to fuck with 'em (while fucking over everyone, including themselves). Not to mention ones into the libertarian stream, since you yourself covered that pretty well.
What the GitHub issue you linked that I keep coming back to shows is this GNU herd mentality of fucking over others unintentionally and in turn fucking over everyone. While they’re clearly better than the “libtards”, they still end up doing the same mistake.
It doesn’t even say “you should use the GPL”
That sounds a lot more confrontational and less diplomatic.
The ticket was actually indirectly asking it, by explaining the potential problems with non-copyleft. They just added “If you plan to carry on…” to introduce a compromise, which actually allowed for at least some minor change to be made, and made it clear that the different license is intentional and not just for lack of awareness (which would imply the devs have no intention on switching).
it says “you MUST say GNU doesn’t agree with you”
Somehow you added the “MUST” to this sentence, but not to the first one… even though the github issue did not say they MUST, instead it even used the word “please” and appealed to having some deference to the GNU coreutils.
At least this issue managed to get a change through for clarity… I don’t think you would have gotten anything at all with the other approach.
There is another issue on their tracker that was opened many years ago about relicensing to GPL, but it kind of became one of those things where a bunch of people came in and discussed it back and forth to death with no resolution.
I remember the lead developer of the Rust version of Coreutils gave a talk about the project once and he addressed the licensing question by essentially saying (paraphrasing), “I don’t care about this. So I just picked one.” You’d think someone so involved with open source as that guy (seriously, he has a hugely impressive pedigree) would care, or would at least give a justification.
I use LLVM because it’s good, but I would like it even more if it was GPL and I agree with OP’s comment as well.
However, you’re literally the guy that replies “oh, so you hate oranges” to people that say “I like apples” or however that meme goes. How about you don’t completely twist people’s justifications into something they never said.
edit: It comes down to that I have no say in whether other people want to allow their code to be exploited by corporations nor does it make a practical difference to me in what I can do with it, all I can do is say “you’re an idiot” to them.
chill, man. i’ve never said this is consciously (or at all) his reasoning for not choosing the gpl. what i mean is that, collectively, this is what’s pushing the development, sponsoring, and adoption of more and more tooling with permissive licenses
Freedom for the rich and powerful to fuck over society and everyone else!
Add to this, the constant badmouthing of GNU and FSF from the crony bootlickers and sadly this is what we get
The tech crowd is also more of a consumer kind these days than the hacky kind, so it’s much easier to push corporate shite with a little bit of polish on top
“apolitical” tech-bros who are mostly just interested in their six figure paychecks and fancy toys.
This, I understand.
laissez-faire “libertarians” who are ideologically opposed to the restrictions in the GPL
This, I do not. Apologies for my tone in the next paragraph but I’m really pissed off (not directed at you):
WHAT RESTRICTIONS??? IF YOU LOT HAD EVEN A SHRED OF SYMPATHY FOR THE COMMUNITY YOU WOULD HAVE BOYCOTTED THE MIT AND APACHE LICENSE BY NOW. THIS IS EQUIVALENT TO HANDING CORPORATIONS YOUR WORK AND BEGGING THEM TO SCREW OVER YOUR WORK AND THE FOSS COMMUNITY.
I feel a bit better but not by much. This makes me vomit.
I write code for a living. I cannot, by any means, utilize a GPL library to support the needs of our customers and will either have to write my own replacement or dig to find something with less restrictions like MIT.
On many occasions, we will find bugs or usage gaps or slowdowns that can get pushed back to the MIT licensed open source cause we were able to use it in the first place. If your goal is to make sure your library gets used and gets external contributors, I don’t see how GPL helps the situation as it limits what developers can even choose your library in the first place. If your goal is spreading the ideology that all software should be free, go keep banging your drum for GPL.
Thank you for your work. If people like you were all around us, then I wouldn’t mind as much projects using MIT since we would still see contributions. But I doubt there’s that many people out there like you. Thank you for contributing to FOSS.
Like 80% of the top 10 most contributed libraries on github are either MIT, Apache, or BSD. I think you underestimate how many corpo folks do contribute or wholly support open source libraries.
Yeah, that’s all there’s to it, along with pure ignorance. In a past not so ideologically developed life, I’ve written code under Apache 2 because it was “more free.” Understanding licenses, their implications, the ideologies behind them and their socioeconomic effects isn’t trivial. People certainly aren’t born educated in those, and often they reach for the code editor before that.
it’s been a trend for a while unfortunately. getting rid of the gpl is the motivation behind e.g. companies sponsoring clang/llvm so hard right now. there are also the developers that think permissive licenses are “freer” bc freedom is doing whatever you want /s. they’re ideologically motivated to ditch the gpl so they’ll support the change even if there’s no benefit for them, financial or otherwise.
getting rid of the gpl is the motivation behind e.g. companies sponsoring clang/llvm so hard right now
And there it is. Follow the money.
They are maliciously harming the community. They need to be named and shamed. I still seethe at OpenBSD using it. Why is it so hard for them to understand? Why do they want to give away their work for the taking to corporations who just want to make money off of their backs?
they have a different view on what freedom means
Then it’s not one that is actively helping the FOSS community
getting rid of the gpl is the motivation behind e.g. companies sponsoring clang/llvm so hard right now.
Is it? As I understand it, LLVM is much easier to work with than GCC, especially given their LLVM IR and passes frameworks.
sure, but it didn’t get much attention until gcc switched to gpl v3 from gpl v2 and apple decided to jump ship to it
my point is that competitors to gpl software are always advertised through their technical merits (valid or not), but the point behind their development is getting rid of gpl-licensed software
fyi: GNU coreutils are licensed GPL, not AGPL.
there is so much other confusion in this thread, i can’t even 🤦
Its simple: its to exploit it in a corporate setting. I license under MIT because a lot of my things are of small convenience, but never without debating the ethics of why I am licensing it.
GNU is the enemy to capitalism and if you need more proof, look at what Apple has done with LLVM/Clang and CUPS. We need GNU more than ever.
I understand that if your boss tells you to write MIT/Proprietary code, you do so. I just wish that the ones who had a choice would use GPL
For me, my personal projects are generally MIT licensed. I generally don’t like “restrictions” on licenses, even if those “restrictions” are requiring others to provide their source and I want as many people to use my projects as possible, I don’t like to restrict who uses it, even if it’s just small/home businesses who don’t want to publish the updated source code. Although, I admit, I’m not a huge fan of large corporations potentially using my code to generate a profit and do evil things with it, but I also think that’s not going to be very common versus the amount of use others could get from it by having it using MIT who might not be able to use it otherwise with AGPL.
With that said, though, I have been starting to come around more to AGPL these days.
I wohld agree, because you really downplay the scenario.
As soon as you accidentallt create something, which everyone starts to use or has an use case, then some Cooperation will copy that thing, make it better and make your community dissappear because there is the newer tool which you cant change the code of anymore and need to use a monthly subscription or something to even use.
So, it somehow seems like you’re gaslighting yourself by downplaying the use case.
Mostly it will be small buisnesses and hobbyists, which I would like to code for them too. Especially when they are nice and friendly. But as soon as Microsoft, Google, Meta, Amazon gets hands on it and sees a potential to squeeze money through it by destroying it, then they will surely do it.
This can happen.
The flip side is noone uses it. I’ve never worked at any company that allowed even lgpl code to be used. If it has a commercial license we’ll buy it, if not…find another tool.
Lawyers are terrified of gpl and will do anything to avoid going to court over it, including forcing you to rip code out and do a clean room rewrite.
In my Company, we do use such code. But its mainly because we distribute our own Propriatary Linux OS.
We sometimes need to change such code, so we just put it on Github as a fork.
I edited my comment to better and more fully reflect my thoughts. It’s hard to properly express myself when I’ve been as sick as I have been with bronchitis and possible pneumonia for the past 4 weeks.
Hopefully my comment now better reflects my thoughts.
Had bronchitis as a child nearly every few weeks for years. All gone but sucks to have it.
Get well soon.
I still feel like, the point where you say more people can use it and will use it, can create a dark pattern.
Imagine you create something and make people depending on it. Another cooperation copies it and advances it with a lot of money. Somehow, the ecosystem is so changed, that when you depend on that project, you need to use the newer version of the cooperation and soon they will paywall it heavily.
Then, your wish for people using the code as much as possible got nuked.
I assume that many scenarios will allow the usage of your old MIT project without relying on the new version of someone. But rare cases exist, where this happens. Its like predicting the 30th step in chess or smth. (Idk chess that well)
Its… unlikely that it will happen, but yeah. I can understand your perspective, but slowly going to AGPL sounds right.
Here’s a fun idea, let’s fork these MIT-based projects and licence them under the AGPL :-)
If I could code at the level that these people do, I definitely would. If I ever publish anything that I’ve written for myself it will never be MIT/BSD licensed
here, take my stuff and don’t contribute anything back, that’s totally fine
I mean, yeah? They are probably fine with that and think that software should be distributed without restrictions. You may not agree with it, but it’s their choice. Not really stealing if they give it away willingly.
I cannot fathom any FOSS project not using the AGPL anymore.
I mean, most of them that want to use a GPL-like license use the GPL or LGPL rather than the AGPL. :P
why are developers even agreeing to this?
Are they? Last I checked this wasn’t as much of a plan as much of it was just a developer thinking out loud. And even if it was a real plan, developers should continue doing what they should be doing anyway: Write their scripts without any GNU/uutils/whatever-microsoft-calls-their-evil-uutils-fork extensions. Then their scripts could run across all platforms, including GNU, uutils, FreeBSD and BusyBox.
At any rate, if Microsoft really wanted to make their own coreutils fork (if they haven’t already), they’re not really that complicated tools. They could devote like maybe a year of engineering time and get it pretty much compatible.
Write their scripts without any GNU/uutils/whatever-microsoft-calls-their-evil-uutils-fork extensions. Then their scripts could run across all platforms, including GNU, uutils, FreeBSD and BusyBox
Sorry but that’s besides the point. If improvements to coreutils are not published and upstreamed then the community loses out on potential improvements that trained personnel at a successful company make. Not being dependent on such utils is a different discussion and doesn’t solve the core issue.
Yeah I’d like for them to use AGPL but even GPLv3 or it’s derivatives are fine as long as they emphasise FOSS
What improvements are you thinking of? I can see that reasoning with something like the Linux kernel where there’s a lot of complex and integrated code, but ultimately individual coreutils commands are really simple. There’s very little you can do to extend something like ls
… And if you do, you can just make your own superls
command and not have to deal with any licensing restrictions.
With regards to AGPL vs GPL, none of the coreutils programs have network connectivity, so I’m not sure what the network requirement actually adds?
Again, it’s not about the actual programs being simple. Just because they are simple in usage doesn’t mean they should be encouraged to use a license that harms FOSS development. If we allow these “simple” utilities now, it sets the dangerous precedent for companies to push towards more software with such licenses and swipe FOSS advancements without contributing anything back. Corporations which do not contribute back to the FOSS community do not deserve to take anything from the community either.
Unfortunately, I alone am powerless to implement such measures when a large group of software developers decide to not take this into account when writing software.
I selected AGPL because I find it to be a little more strict compared to GPL. Any derivative of GPL is fine as long as it promotes open source development
Personally, I don’t think the problem is the risk of companies not contributing back… I honestly wouldn’t mind if they don’t contribute at all and instead they just use the community-developed GPL software as-is, without making any changes to it.
In my mind, the problem is that I cannot trust that a piece of non-copyleft software that’s provided by a company actually does what I expect it should do, and does not have extra bits doing things I do not want it to do. Like the changes Google does in their Chrome version of Chromium, for example. It’s much harder for me to trust any random Chromium fork than it would be a GPL licensed browser, because all Chromium forks can legally include changes without disclosing them openly, they don’t even have to let you know if the binary actually matches the code.
If, for example, MacOS / Microsoft Windows include a copy of OpenSSL with the OS, how can I be sure they are not adding their own sort of malicious spice into it? Can I trust that the keys generated with it will be truly secure? How can I audit it?
At least with the GPL there’s some level of legal accountability in that any change that is not openly shared would be illegal. But with MIT there are no legal barriers against malicious code, it’s totally legal for companies to force feed me totally legal changes that I wouldn’t want and/or that I might not even notice they are there.
MIT/GPL is fine for smaller tools.
Yeah, specifically for something like coreutils I can’t see the malicious endgame that is suggested by others here. Is the fear that a proprietary version of cat
or pwd
or printf
takes over the ecosystem and then traps users into a nonfree agreement? Or a proprietary coreutils superset that offers some new tool and does the same thing? Or a proprietary coreutils that generates profit for businesses without attribution to the developers? What would stop anyone from just writing their own proprietary set of tools to do the same thing now, even if uutils didn’t exist? Clearly not much, since uutils did exactly that (minus the proprietary bit).
I personally don’t see a compelling reason to change to MIT, but I also don’t see the problem.
What’s stopping people from doing that today is network effects. There are enough differences today between bsd coreutils and gnu coreutils that substituting one for the other doesn’t work out of the box.
The chain of events that would cause a problem are: due to Ubuntu popularity rust MIT core utils overtakes gnu coreutils and people drop support for gnu coreutils, then a large and we’ll funded corporate entity could privately fork rust coreutils and lock people in.
I’m with you until the lockin. How does that happen?
To me, the problem is not really so much about “locking people in” (it’s also unclear what you mean by that, if they were already using that ecosystem before using uutils aren’t they already locked in?)
To me, the problem is how the MIT removes legal protections when it comes to ensuring accountability to changes in the source… how can I be sure that the version of uutils shipped with “X Corp OS” has not had some special sauce added-in for increased tracking, AI magic, backdoor or “security” reasons? They are perfectly free to make changes without any public audit or having to tell their users what their own machine is doing anymore.
For small programs the FSF/GNU even suggests considering not using the GPL https://www.gnu.org/licenses/license-recommendations.html
Yes, and a cp or ls clone isn’t that meaningful to stick GPL to.
Honestly it’s probably just because so many devs are involved more in their code and don’t want to worry about the nuances and headaches involved in licensing. MIT is still open source.
I guess I can’t really fault that. Developers not interested in the license they use to publish code baffles me
Speaking for myself, it’s because future monetization can be easier under mit when using a foss utility and private code.
My project would not exist at all unless there were ways to make money off it.
True, others can also use that same code too, in the exact same way, but that requires quite the investment, and those of us that are doing this are banking on not getting the interest of a monopoly in that way. We are competing against other small businesses who have limited resources.
At the same time the free part can get a boost by the community.
I comment a lot in politics here, and am sometimes an ass, so cannot name this project
not sure how it would be more difficult to make money using gpl tools
For our use case, this makes the most sense.
I’m not at all sure about the larger trend you noticed, but I know a non trivial number are doing it for the same reasons
Could you elaborate on those reasons, please? I’m not sure what you mean.
The mit license allows a mix of public and commercial code run by the same company, with minimal legal issues. One can use other tactics I am sure, but this one seems good when the commercial code absolutely needs the public code .
I think some confusion here can be resolved by stating this is anti foss, taking advantage of foss, it is capitalism taking advantage of having a good code base while making sure any contribution from outside the company is minimized. At the same time it gives my company absolute control over the private part.
Usually get into arguments here! I’m not defending it, but am saying open source would be less without.
I understand this may not be exactly how you meant your comment, but I think it’s important to clarify that free/libre software can also be commercial software, and in fact must allow commercial use in order to fit the Free Software Definition. It is probably easier to make lots of money with non-freely licensed software but I think contrasting “public” code with “commercial” code muddies the terminological waters a bit.
Maybe there could be another reason why people choose MIT to begin with:
When you start a new repo on github it makes suggestions which license to use, and I bet many people can’t be arsed to think about it and just accept what they’re offered. [My memory is a little patchy since I very rarely use github anymore, but I definitely remember something like this.] And maybe github tends to suggest MIT.
That said, please undestand that many, many git platforms exist and there is no reason at all to choose one of the two that actually have the word git in them.
I can’t believe professional developers choose MIT because they can’t be arsed to look at the license choices
I can’t believe professional developers choose MIT because they can’t be arsed to look at the license choices
Have you worked with many professional developers?
At work, yes
Well, my experiences with my coworkers would lead me to pretty much exactly the opposite conclusion: the majority would probably intentionally avoid the GPL, if they even care at all.
Why do they not care? And why would they avoid GPL?
Why do they not care?
Because, for many of them, they don’t have any reason to. In other words, privilege. Copyleft licensing is a subversive, anti-establishment thing, and software engineers are predominantly people who benefit from the established power structures. Middle/upper class white men (I’m included in that category, by the way). There’s basically no pressure for them to rock the boat.
And why would they avoid GPL
Because many of them are “libertarian” ideologues who have a myopic focus on negative liberty (as opposed to the positive variety).
Look, I understand if your boss tells you to not write Open-source/only use MIT so they can profit off of it later on. But for the people who have a choice, why wouldn’t they? I don’t see how it hurts their bottom line.
I’m middle class and here I am raging on Lemmy about software licenses LMAO
Ah, OK. No, of course not. I was thinking more about hobby developers.
But somebody else already pointed it out: MIT makes a project more attractive for investors. Follow the $£€
If it is solely for investors, then I understand. However I’m saddened to think that altruism in software has gone to the gutter
I’m saddened to think that altruism in software has gone to the gutter
Yeah me too but it’s been a long time coming. Ubuntu started it decades ago by replacing the altruism* with a warm and fuzzy “sense of community” while exploiting the enthusiasm of largely unpaid coders, Google certainly has done this for a long while, and by now it’s just how you do your basic FOSS Kickstarter campaign.
All that really brings is “more customers”, and doG knows that’s not what the whole of GNU/Linux needs.
Over the years I have developed a sense for how projects present themselves before choosing one that suits my needs. Because the sane ones, both feet on the ground types, that do GPL and accept donations (or sometimes offer paid support), those still exist, old and new.
* a form of altruism btw that does not exclude egoism!
I think many hobby developers also see “hobby” developing as part of their career, so they would happily try and have their hobby align with future employment possibilities. Since companies avoid GPL, those devs will rather choose a license that is more attractive to those potential employers when they see their portfolio.
Well professional developers are often employed by companies that want make use of open source code to sell their proprietary code. It seems more likely to me that those companies will instruct their developers not to work on any GPL code rather than some big ideological shift in the individual developers.
I assume this is in reference to the rust coreutils being MIT-licensed. How would using GPL benefit them?
Improvements would be upstreamed. Not with MIT
GPL would not require that. It would only require publication of the source. There is no requirement to give back or even make your changes compatible with upstream.
Yes, publication of the source is enough. However, you are correct and I should have worded it better. In practice, publishing the source allows the developers of the software to make improvements unhindered by licensing and other IP-based hindrances which are otherwise present in closed-source software
I worked on an oss library with an MIT license and my colleagues told me they with that instead of GPL was with GPL it basically forces anyone who uses the library to make everything in their project available.
Only if they make changes/improvements to the code. If it’s a library that is used then no, AFAIK you don’t need to. If everyone using GPL code had to make their entire project FOSS then TPLink and DLink wouldn’t have any market share. The only reason OpenWRT exists is because Linksys was forced to open up their code because they had illegally refrained from opensourcing their code, which was a great positive for the community
I think it’s more complicated than use, like something about being allowed to dynamically link to it but not statically, or something like that.
If you are using a GPL library that is statically linked to code with a different license the result is one binary that has inside both GPL and other license code, which would not be allowed under the GPL terms, because it requires that the binaries that use the source code must have their source code available in full (including other source and modifications that are part of the same binary).
The only case in which you don’t need to provide the source for GPL software is if you don’t actually distribute the binary to customers… private binaries do not have to be published with their source, as long as you never made the binaries public and never gave it to anyone else. Only when you give it to someone you need to provide the code.
This allows for a loophole in which if you are providing a service, then you can run the software privately in your private server without sharing the source code to the clients using the service, since they do not really run the server program although they indirectly benefit from its results. This is why the AGPL was created, since it has a clause to force also those offering services to make the source of the server available to the users of the service.
I don’t mind if people use LGPL or some derivative of GPL. All I want is improvements to the source be published, and MIT simply doesn’t enforce that. I have no intention to force companies to publish their code that they have worked on for a long time - doing that never really helps. But I do want them to publish changes they make to already FOSS products so the author and the community can benefit.
Yes, but the loophole I was mentioning allows companies to not release the code even when it’s GPL, that’s why I was mentioning the AGPL (which is different from the LGPL).
Canonical still licenses most of their stuff under GPL3, including new stuff. The license (other than it being open) was probably not even a consideration in deciding to experiment with uutils.
My rule-of-thumb is: is the licence going to make things better for users? In other words, I try to predict whether a company would just not use my AGPL-licensed code, or would potentially contribute back. If they wouldn’t, I don’t really care and rather my code at least gets used to build something presumably useful.
The point is that even if companies have the personnel to contribute back, most of them don’t. It simply isn’t in their interest. If a project is good enough, AGPL will mean that no monopoly will form around that project and open standards will be maintained. AGPL is simply a bastion against closed-source software working against the best interests of consumers
Yeah I get that point, and so my point is that if the use case is important enough that they’d be able to justify allocating that personnel, I use the AGPL to give them that nudge. When it’s just some non-critical component, then I’ll just slap an MIT on it and be done with it.
The only problem is companies will always try to use MIT and using it for small projects will set a precedent. And we don’t have a governing body strong enough to enforce the GPL (nobody listens to the FSF)
Ha, well, if my single-digit-downloads (all by me) NPM module is influential enough to set precedent, then I’d consider that a success.