Copyleft is the true path
I’m never going to be one to dog on something before I try it. If it’s good and can offer the same or better experience as Firefox then sign me up. The biggest sticking point for me, though, is potentially losing Firefox’s massive add-in library. I really like my uBlock Origin and Restore YouTube Dislike and my VPN extension and Metamask and all the other crap I’ve got there.
I think I could get by with Bitwarden/uBlock as a minimum. Addons like enhancer for youtube are super nice though.
Yes. Good filters and privacy/security are an absolutely vital requirement today. Unbreaking things and adding features via extensions or something are also good.
you can try it now if you want and it does work surprisingly well, but their timeline is still “alpha in 2026”
as long as the new browser supports webextensions its fine
As long as we’re filling out our fantasy browser brackets, I’m hoping that the Servo engine and browser/s can become viable. Servo was started at Mozilla as a web rendering engine only, before they laid off the whole team and the Linux Foundation took over the project. Basically revived from the dead in 2023, the current project is working on an engine and a demonstration browser that uses it. It’s years away from being a usable replacement for current browsers and the engine is certainly the main project. A separate browser which employs Servo as its engine is a more likely future than an actual Servo browser.
Still, you can download a demo build of the official browser from the web site. Currently, it’s only usable for very simple web sites. Even Lemmy/Mbin display is a little broken, and I think of those as fairly basic. YouTube is out of the question. One of the sites that’s been used to demonstrate its capability to render web pages is the web site for Space Jam (1996) if that gives you any idea of its current state.
Well… according to ladybird, at this point they are more conformant than servo in web standards…
does the ability to view websites other than Space Jam '96 really improve your life?
I will give you that
I won’t give you that. Ladybird is already quite a bit more capable than that. The JavaScript engine is not nearly fast enough but more and more real websites just work.
Servo is still making quick progress though.
Honest question, since I have no clue about web/browser engines other than being able to maybe name 4-5 of them (Ladybird, Servo, Webkit, Gecko, … shit, what was Chromium’s called again?):
What makes browsers/browser engines so difficult that they need millions upon millions of LOC?
Naively thinking, it’s “just” XML + CSS + JS, right? (Edit: and then the networking stack/hyperlinks)
So what am I missing? (Since I’m obviously either forgetting something and/or underestimating how difficult engines for the aforementioned three are to build…)
JavaScript alone is not a simple beast. It needs to be optimized to deal with modern JavaScript web apps so it needs JIT, it also needs sandboxing, and all of the standard web APIs it has to implement. All of this also needs to be robust. Browsers ingest the majority of what people see on the Internet and they have to handle every single edge case gracefully. Robust software is actually incredibly difficult. Security in a browser is also not easy, you’re parsing a bunch of different untrusted HTML, CSS, and JavaScript.
Then there is the monster that is CSS and layout. I can’t imagine being the people that have to write code dealing with that it’d drive me crazy.
Then there are all of the image formats, HTML5 canvases, videos, PDFs, etc.
Adding on to this, while this article is fast approaching 20 years old, it gets into the quagmire that is web standards and how ~10 (now ~30) years of untrained amateurs (and/or professionals) doing their own interpretations of what the web standards mean–plus another decade or so before that in which there were no standards–has led to a situation of browsers needing to gracefully handle millions of contradictory instructions coming from different authors’ web sites.
Here’s a bonus: the W3C standards page. Try scrolling down it.
Thanks for these explanations, that makes a lot more sense now. I didn’t even think to consider browsers might be using something else than an off-the-shelf implementation for image/other file formats…, lol
Sorry I didn’t mean to imply they don’t use shared libs, they definitely do, but they have to integrate them into the larger system still and put consistent interfaces over them.
Yeah I realize that. My go-to comparison would be PDF. Where Firefox has PDF.js (I think?), Chromium just… implements basically seemingly the entire (exhaustive!) standard.
What makes implementation so difficult is that browsers cannot just “work”, they need to be correct is what they do. And support all websites.
The standards of HTML, CSS and JS have developed over a long time, not only is the amount of stuff massive, over time sometimes strange features where implemented, that were then used by website developers, and now these all need to be handled correctly by all new browsers.
Emulating and reimplementing existing stuff is often more difficult, especially if you cannot leave out any feature, no matter how obscure, because that might break someone’s website.
Hey it could be worse. It could be the completely and utterly worthless MIT license.
Well how is MIT more worse than BSD? Both allows prorpietary right?
The only difference is that BSD defends a bit more the owner rights. Either of them defends the software or its users.
Is it that difficult to implement a CopyLeft licence ? Well we do have Servo (A modular browser engine) in development & SeaMonkey is a thing too (Which is an entire internet-application suite)
It is not difficult. Not everybody agrees that it a desirable thing to do.
Ladybird is run by a bigot. I wouldn’t touch it with a barge pole.
Dammit, again? What did this developer do…
I’ve only tangentially picked up things about this but this is an example for it
(For some context, if you didn’t already know this, Ladybird originated from a SerenityOS component and the first reply is from the lead dev)
What are we reacting to here? The single comment from the actual dev saying that the project wanted to avoid politics? Or the actual hateful comment from some bystander?
Ladybird has split from SerenityOS and from that community. Hopefully the bystander has been left behind.
As for the actual project founder, if all he has ever said is that one statement, I am impressed with his level of restraint given how some have vilified him for it.
Oh… That’s… Disappointing. Firefox it is, then, for now.
It’s weird… It makes “business” sense, too. If you want people to use your stuff and you can choose to appeal to more people, why wouldn’t you? I think we’ve reached the stage of normalcy now where using “they” and “them” are not in itself something that would necessarily scare away right-wing users (given you want to keep appealing to that attractive market, too.)
Well, in that case, I hope it gets forked into a super gay version in the future lol
At least there’s other projects too…
This is the way 🌈
_They_dybird
mastoqueerz
Wow 😳
I cannot see who made that comment. Pretty sure it is not the dev who is getting crucified. I am not sure it is even anybody that contributed to SerenityOS or Ladybird.
I certainly do not see anybody from the project endorsing that language.
I mean, I read the comment on Lemmy. Should I now go around saying not to use Lemmy and using that quote as evidence for why?
was that nukeop? that Guy is a known asshole. He was also quoted Saying licenses don’t matter and threw a huge fucking hissy fit when someone forked his project and gave it a copyleft license because of making such a stupid statement. Unfortunately the website archiving the drama is down, and I could only find an archive if the first iteration of it (it had at least 2 more paragraphs after this) https://archive.is/UT9Xe
Is he the one constantly spewing hateful shit in the Issues on GitHub whenever people ask him to not use only “he” and “him” in the docs?
That dev definitely doesn’t seem like the best human around, but this is all around terrible to me. Calling the project “dehumanizing” and “vile” because of this is ridiculous. Are people really willing to have their browsing tracked and sold rather than using a browser that has an assumed gender in the documentation? Not saying that they shouldn’t use gender neutral language, but as the original issue said, it’s a minor nitpick, let’s be honest. It’s also something that’s representative of one dev as a person, not of the project as a browser. Additionally, it could be something as simple as the dev coming from a gendered language, where the word “user” itself is masculine, and doesn’t see it the same way as English speakers asking for neutral language.
Yeah that was the thing that alerted me.
Can you elaborate ?
Everyone knows links2 is the best browser.
#links2gang
You misspelled curl. The keys are right next to each other so it’s understandable.
Comic review closed: please don’t advertise identity politics
Yess more pmv2q…x…?
That’s not controlled by Google…
It is also important to note that the license is still foss and GPL compatible. In the future they could made it GPL.
Every contributor needs to have signed a CLA in order for the license to be changed
BSD is freer than GPL. Fight me.
Yeah but GitHub defaults to GPL, so checkmate nerd 😎
The GitHub owned by Microsoft? That GitHub?
I won’t fight you because I agree. But a lot of people think it’s more free to have freedoms end when it comes to proprietary forks and such.
To me, that’s just one less freedom.
It is one less freedom.
Copyleft protects the freedom of the user, regardless of who is the developer, I think that is way more important if what we want is to make software for humanity rather than pragmatic business choices.
It is a point of what you regard as real freedom, do you wish to eventually lock in your users or let who might fork/take over your project do that?
BSD is freer for programmers (or frequently their corporate overlords), but not for people using the software.
That’s false. Derivative software that doesn’t use the BSD licence has no bearing on the BSD-licenced software itself. For example, Sony using FreeBSD for the PS3 operating system has zero impact on the freedom of a FreeBSD user. The GPL, on the other hand, directly infringes on the user’s freedom to fork and redistribute the software.
The GPL, on the other hand, directly infringes on the user’s freedom to fork and redistribute the software.
that’s plain bullshit. under GPL, you are free to fork it and redistribute it
You’re not unless you keep the licence.
well of course. you can’t betray the will of upstream: to not feed the rich. not a big ask.
but the user, as you said, has no reason to object to that, because it protects them from parasites
This argument only works if you assume everything that isn’t the GPL is feeding the rich.
The only “freedom” the GPL infringes on is the ability to take the freedom the code originally had away from an end-user.
That’s also false. The GPL doesn’t only restrict non-free licences, it restricts any licence change on the derivative work. If I fork a GPL project and want to redistribute my changes with a free licence such as MIT, the GPL will prevent it to protect itself. It’s an authoritarian licence that doesn’t respect your freedom.
I fail to see how the share-alike nature of the GPL is “authoritarian” and “doesn’t respect your freedom”.
It is built to guarantee the freedom of the user. It’s imperfect, as it has to work within the constraints of the copyright system, but it’s a hell of a lot better than licenses like MIT for propagating freedom to end users.
Here’s a real world example:
If I want to root my android device with KernelSU or build a custom ROM, I need to recompile the heavily customised kernel built by the vendor for my specific device. Because Linux (the kernel of android) is under the GPL, the manufacturer is compelled to give the user the same freedoms that were given to them, which means I can download the source code and do this.
If Android were based on, say, the FreeBSD kernel instead, this would be impossible. There would be very few, if any, android custom ROMs, because the vendor could, and would, withhold the modifications they made to the kernel.
You’re again assuming that the GPL only restricts non-free licences. This is not the case. If I add a feature to a piece of GPL software, I can’t use BSD on my new code even though the new code isn’t derivative work. Hell, if I write a completely independent piece of software that links to GPL software, my new software has to be GPL even though not a single line of GPL code was used. All of this also applies to free licences like BSD. The GPL doesn’t protect freedom, it protects itself.
You’re assuming that the GPL protecting freedom and protecting itself are mutually exclusive. They aren’t. Again, the GPL is written to ensure the code remains free forever.
Also, I’ve already pointed out the flawed nature of licenses like MIT and BSD, and if the GPL could be relicensed to them, it would provide a very easy way for proprietary developers to strip the freedom from the GPLed code when passing a derivative on to their users.
It is unfortunate that it cannot be relicensed to other copyleft licenses, as that would not pose such a problem, but without an explicit list of licenses it can be relicensed to I’m not sure that’s even legally possible under copyright.
Redistribution only becomes an issue if you try changing the license or selling it. GPL primarily protects against businesses profiting off of it. There are use cases for both licenses.
What is the problem with a BSD-license? I’m not familiar with the different open source licensing models and their problems.
Basically, it allows you to steal all the code and use it in your closed-source programs, giving a green light for corporations to use open-source code without giving anything back.
GPL doesn’t allow that, forcing you to open-source anything that was produced using other GPL-licensed code. That’s, for example, why so much of Linux software is open-source - it commonly relies on various dependencies that are GPL-licensed, so there is no other legal option other than sharing the code as well.
It’s not “stealing”. It’s explicitly allowed. Using IP according to its licence is the opposite of stealing.
Ok, then call it “plagiarising”.
That is definitionally not plagiarising. It follows IP law, which is the opposite of plagiarism.
There’s more than a legal definition of plagiarism.
Plagiarism is when you sell the work of others as your own without attribution. There are bucketloads of examples of legal plagiarism.
I’m pretty sure that everything H. Bomberguy discussed in his plagiarism video was legal, for example.
No, actually, plagiarism is a legalistic term. If IP law did not exist, neither would plagiarism.
And if you give someone permission to use your IP, and they go ahead and use that permission, it is not plagiarism neither legally nor by any colloquial understanding of the term. That is what happens when someone uses BSD or MIT code in their proprietary software. It is explicitly allowed, by design, by intention.
without attribution
BSD/MIT also don’t allow you to not attribute the author of the BSD/MIT code, so that doesn’t even make sense. You are perhaps thinking of code released public domain, in which case, again, the author specifically chose that over BSD/MIT, and the main practical difference is not needing to give attribution, so that must be what the original author wanted.
I think your legalistic view of the world is quite limiting.
It’s not illegal to rephrase what someone wrote in a book and pass it off as your own work. You can’t “wown” a cultural analysis. It’s still plagiarism.
Unrelated to this exact discussion, but like, the law does not dictate morality nor the other way around. If I believe that using someone’s hard work to make a profit without paying them or contributing some work of your own is morally wrong, I can reasonably say it’s ‘stealing’. Even if the person who did the work fully understands that the license under which the work was released makes it not actually stealing.
I am judging someone as a thief, not legally but morally.
I never stated what was or wasn’t moral; I stated what was legal, and stealing is a legalistic term. How can you enforce property ownership, intellectual or material, without law, and legal rights to property?
For the record, I want the abolition of property and of law. I do not believe stealing to be wrong. “Stealing” can only be a legal category if you believe it to be morally neutral.
That definition also makes no sense. If I gift you a laptop I worked hard to afford and you use it, no sane person would call that stealing, even to those to whom stealing is a moral category. That is the same thing as someone using MIT code according to the licence. The original coder gifted the code to the public and said “I explicitly want you to use this however you like, under the sole condition that you credit me.” Just like if I gifted you a laptop I’d be saying “I want you to use this laptop however you like.”
It’s not really an issue for the end user. But it’s basically made for companies to take advantage of free hobbyist developers without needing to give anything back in return.
So if you’re the kind of person who runs to foss software to get away from corporate tech bull, having a license that benefits companies more than users just kinda feels scummy.
Apple, Sony, N*****do, Netflix all use BSD but they don’t contribute any code to the BSD project itself, because of the BSD allow other people/company to close source their code when using with BSD
TBH, considering those corporations, most of that would be DRM stuff, and they can’t let that leak in any format. Others are drivers.
Sony actually does contribute. https://christitus.com/sony-playstation-and-freebsd/
Remember the Minix operating system that runs on your processors ? It’s a proprietary spyware now because of BSD licencing
It’s not a viral copyleft license, so you’re free to use the source code without giving anything back.
This has pros and cons over something like GPL, but people like to circlejerk GPL and pretend it’s always the best option 100% of the time.
For situations where you have to sign an NDA and are unable to release source code (eg; console game dev), MIT and BSD licensed projects are a godsend.MIT/BSD also makes the most sense for small/minimal projects where GPL is likely overkill. A 100 line script does not need to be GPL’ed. A small static website does not need to be GPL’ed.
This is such a non-issue
Not only C++ but also Swift, which just feels strange
Why build a new browser in C++ when safer and more modern languages are available?
Ladybird started as a component of the SerenityOS hobby project, which only allows C++. The choice of language was not so much a technical decision, but more one of personal convenience. Andreas was most comfortable with C++ when creating SerenityOS, and now we have almost half a million lines of modern C++ to maintain.
However, now that Ladybird has forked and become its own independent project, all constraints previously imposed by SerenityOS are no longer in effect.
We have evaluated a number of alternatives, and will begin incremental adoption of Swift as a successor language, once Swift version 6 is released.
c++ is adding memory safety features… it’s still modern and frequently updated
It’s not the C++ that I find strange hah
Swift is a pretty fully fledged systems language at this point … however, it’s far from tried and tested for use cases like this and cross platform support is still garbage, so still a pretty questionable choice.
that is actually really goofy, didn’t know about that
it is also written from the ground up wich means it also has its own engine
explaining the difference between a Toyota and a Honda
God forbid someone on the internet has less niche knowledge about browser engines than you.
I don’t understand why everyone wants to jump ship to a whole new browser, when the governance of a browser is the real issue to solve regardless of which browser is supported. A good stewardship model has to be established by people of integrity, technical skill, and funding. From there forking making a hard fork of Firefox is way cheaper and easier than trying to invest in one that’s not even finished.
Having more than two browser engines out there would be nice for standardization reasons.
There are more than two browser engines. But it’s important to emphasize supporting Firefox’s engine because we’re already at threat of there being only one dominant engine.
Because they want to. What other reason would one need?
Okay, you do you. But it still doesn’t make sense to try to rally everyone else behind a whole new unfinished browser, when an otherwise very good one just needs new leadership.
i do not control mozilla leadership or their mishandling my data. the most influence i can exert as an individual is by not being a willing participant to their mischief. i’ll be happy to come back if the leadership changes and i get some guarantees.
Absolutely untrue. Firefox is entirely open-source. Forks of it already exist. The only thing that’s needed is for people who are willing and capable, to create a more dedicated stewardship model and the rest of us to get behind the hard fork they release. This is exactly the kind of thing software freedom is meant to allow us to do.
It is a debatable point which would be easier:
1 - get Ladybird to the point it is competitive
2 - establish a viable and popular alternative dev and governance infrastructure capable of stewarding and evolving Firefox
The fact that people want to try option one is far from crazy.
with mandatory male pronouns for users in the documentation.
(and no politics allowed!)
This whole situation was a concern for me too, but with Ladybird being spun off into its own not for profit, these kind of things are much less likely to occur again going forward. The project is a lot more focused now.
can I get some context for this, what is the reference to? I stopped caring about new browsers and now just use Firefox 🤷♀️
it’s about the ladybird browser. i edited my comment to add details.
mastoqueers
That was a good laugh! thanks for the explanation ❤️