this post was submitted on 08 Nov 2024
246 points (96.6% liked)
Linux
48323 readers
919 users here now
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Rules
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
You are really underestimating the complexity of the task of building a web engine.
Another problem is that Chrome is already ubiquitous and most of the web sites are simply ignoring the Gecko and only optimise against Chromium.
Don't get me wrong, I truly wish we had more completion and I hope those projects take off and with time become a viable alternative of Chromium but I am somehow doubtful.
You're right about the fact that building an engine is hard, but Socraticly speaking, then why are there so many blink-based browsers and so few gecko-based ones? The answer is because blink is easy to embed in a new project and gecko isn't.
If Mozilla really wants to take back the web (and I honestly don't think they actually do), then what they should really be doing is making gecko as easy to embed in a new browser as blink is. They don't do this, and I suspect that they have ulterior motives for doing so, but if they did, I think we would be much closer to breaking chrome's grasp on the web.
Because let's face it: Mozilla makes a pretty damn good browser engine. But they don't really make a compelling browser based off it. Ever noticed how Mozilla has been declining ever since they deprecated XPCOM extensions? It's because when they provided XPCOM, it enabled users to actually build cool and interesting new features. And now that they've taken it away, all innovation in browser development has stagnated (save for the madlads making Vivaldi).
They need to empower others to build the browser that they can't. That's what would really resurrect the glory days of Firefox in my opinion.
Building a free (as in beer) engine for others to build great browsers on, is a pretty thankless task. Individuals may take pride in such a task, but for a company that needs to pay their staff, it's a fruitless endeavor. I assume it's much harder to earn money, if people are not using your software itself, but the forks that add all the cool stuff.
I chuckled a bit while reading this, because what you wrote is exactly where Blink came from. It was a fork of webkit, which in turn was derived from KHTML. Then again, the fact KHTML was discontinued does support your point to an extent too, I guess.
But the point is, Chrome is doing exactly this - providing the engine free as in beer and letting people embed it however they like. And yet, what you're predicting, ie. not using the original but just using forks instead, doesn't seem to be happening with Chrome - they still enjoy a massive fraction of the market share. There's no reason to believe that this couldn't happen at Mozilla as well. People usually want the original product, and it's only a small fraction of people that are really interested in using the derivatives.
Hold on, why are we talking about this like it's something that's not happening? There's all kinds of forks of Firefox.
The difference is how you interact with the browser engine. Blink is very easy to embed into a new browser project. I've seen it done - if you're familiar with the tools, you can build a whole new browser built around the Blink engine in a few hours. You can write pretty much whatever you want around it and it doesn't really change how you interact with the engine, which also makes updates very simple to do.
With Firefox, it's practically impossible to build a new browser around Gecko. The "forks" that you see are mostly just reskins that change a few settings here and there. They still follow upstream Firefox very closely and cannot diverge too much from it because it would be a huge maintenance burden.
Pale Moon and Waterfox are closer to forks of Firefox than Librewolf for example, but they've had to maintain the engine themselves and keep up with standards and from what I've read, they're struggling pretty hard to do so. Not a problem that Blink-based browsers have to deal with because it's pretty easy and straightforward to update and embed the engine without having to rewrite your whole browser.
Unfortunately, since Google controls the engine, this means that they can control the extensions that are allowed to plug into it. If you don't have the hooks to properly support an extension (ie. ublock), then you can't really implement it... unless you want to take on the burden of maintaining that forked engine again.
That said, Webkit is still open source and developed actively (to the best of my knowledge - I could be completely wrong here). Why don't forks build around Webkit instead of Blink? Not really sure to be honest.
Webkit is the engine used by Safari (among a few others) and, though I think the project is controlled by Apple, it's licensed LGPLv2.1 and BSD 2-Clause
According to the wiki, it's also used in PlayStation, Kindle, Nintendo devices, and the Tizen mobile OS... Additionally, it's apparently the rendering engine used by the default browsers provided by both the KDE and Gnome projects
Honestly, though, I want to see something that's not part of the Mosaic or KHTML families be made and gain at least some foothold...I hate having the Internet basically controlled by one or two mega corporations.
I still wish Opera hadn't abandoned Presto...
Okay, but khtml was part of KDE, so I guess it wasn't developed by a company that needed to make money from it, was it?
And neither is chrome. Google doesn't need it to create revenue. They need it to control the channel with which people access their main product - advertising on the web. And for that goal it is beneficial to have it as widespread as possible, even in the form of derivatives.
Rather than guessing at the motives of others, let's remember Hanlon's razor.
Okay, that's an interesting point. I mean, there are forks galore of Firefox so I'm not entirely sure I understand. But certainly chromium-based browsers have been getting more traction.
But wasn't the original point something about how hard it is to make a browser?
And if I have this right you're suggesting that it would be achievable for Firefox to make an accessible browser tool kit but they're not due to ulterior motives?
I'm not sure I understand that, either in terms of motive or just impractical terms what it is you think they're doing to make it hard to develop.
Honestly, I would be fine with Blink being default if Google would divest it from themselves and make it an independent open source project that they just contribute to instead of control. They have far too much power with that one bit of tech to shape the Internet as we know it, along with a large chunk of computing that happens offline thanks to the growing ubiquity of node.js/Electron
And they're actively using that control to restrict what we can even do with our own machines right now
Honestly I've been saying for some time that Mozilla's resources would be much better spent making Firefox a soft fork of Chromium. Primarily: use the Blink browser engine and V8 JS engine, with only the changes to those that they deem absolutely necessary, and maintain a privacy-forward Chromium-based browser. Maybe try and enlist the help of Brave, Vivaldi, and other browsers that are currently Chromium but which prefer more privacy than Google offers.
It's not zero effort, and especially as Google continues to develop Chromium with assumptions like the removal of Manifest V2 it might take some effort to maintain, but it cannot possibly be as much effort as maintaining an entire browser.
No no nonononono. The moment you do that you become at the mercy if whatever they choose to do, including changes that will sabotage you. There are examples out there such as Novell, who should have made a Linux-based client OS for the Netware architecture. For the longest time prior to a brief period where they had their server GUI (sloppy, inefficient and barely completed as it was) that you literally could not do any GUI-based configurations without a Windows client. How is that not begging for the competition to screw you every chance they get?
Firefox stands on its own and that's how it needs to be.
They wouldn't be at the mercy of anything. That's...how open source works. If it changes in a way that breaks things for you, don't pull that change. At that point, if the change is drastic enough to require it, you can turn that soft fork into a hard fork and hope that Edge, Brave, Vivaldi, Opera, etc. join you; something that would significantly hamper Google's ability to maintain their dominance of the browser engine market. That's a choice that they simply don't have today when being based on Firefox and Gecko means using an inferior browser platform.
Yyyyeeeah, all ideally. Things don't always go ideally. Something will always happen. That's the truth no matter what, and I'd think it's best to eliminate externals as much as possible. That's my position. No actual right or wrong here.
The point is that with open source you can effectively leech off of Google for now, while still retaining the flexibility to nope out and do your own thing at any point you decide.
Considering just how severely behind they are already (as I mentioned in my other comment, they're often 3–5 years behind other browsers in implementing new web standards or operating system features), I see anything they can do to reduce how much they need to maintain independently as a good thing. In an ideal world where they had all the funding and development power they could want I might say sticking with the completely independent Firefox would be great. But that just isn't where they're at today.
You can't for a number of reasons. As other people have said this catastrophically underestimates the complexity of maintaining a code base for a browser.
I don't even think that's remotely true. My understanding is that it's on the order of a few months to a year, and it relates to things that are negligible to the average end user. They are edge case things like experimental 3d rendering. The most significant one I can think of is Webp, but they resisted adoption for principled reasons relating to Google's control over that format and aggressive pushing of it, which is a good thing not a bad thing, and an important example of how rushing to adopt new standards it's not necessarily just a sign of browser health but also an anti-competitive practice intentionally pushed by companies that have money to throw around for that purpose.
I've seen two cases that actually directly impacted my ability to use Firefox. I can only presume there are many more. Those being supporting the column-span CSS property (available since 2010 in other browsers with vendor prefix, and early 2016 without, while being late 2019 for FF) and supporting iPad OS's multi-window functionality (introduced mid 2019, Firefox has had it for just a handful of months now). I have first hand experience telling me very directly that this is true.
There's also been a lot of talk about Firefox's lack of support for PWAs. I've not experienced that myself to be able to comment more than to say I've noted others have complaints.
That's how Chromium works.
Anyone can see the source, but it doesn't mean that anyone's code makes it into Chromium, because Google picks and chooses. Chromium has a "reviewer pool" of Google developers doing all the picking and choosing. Getting into the reviewer pool takes months to years of building up a contribution history and being vetted by the Google team.
They're completely at the mercy of how Google integrates things like DRM, or web standards that Google wants to push, like a deeply integrated into the browser and actively maintained with little to no alternative. The engineering overhead of sustaining and increasingly complex fork of Chromium is unsustainable and unless you have the development capability to compete, Google controls the destiny of any chromium browser.