Hacker News new | past | comments | ask | show | jobs | submit login
Servo to Advance in 2023 (servo.org)
300 points by ewired on Jan 16, 2023 | hide | past | favorite | 50 comments



Looks like the external funding at least consists of Igalia dedicating four people: https://people.igalia.com/mrego/servo/igalia-servo-tsc-2022/


From their wikipedia:

> Igalia is a major contributor to each of the major Web engines (Blink, Gecko/Servo and WebKit). In 2019 they were the #2 committers to both the WebKit and Chromium codebases and in the top 10 contributors to Gecko/Servo. Igalia has helped the interoperability of some features across web engines; they implemented CSS Grid Layout in WebKit and Blink. They are maintainers for several areas of the Chromium codebase, such as CSS Grid Layout, MathML, Ozone-Wayland and MathML in Chromium.

https://en.wikipedia.org/wiki/Igalia


Not only that but they're a worker-owned cooperative. This is all very impressive.

> Igalia is a private, worker-owned, employee-run cooperative model consultancy focused on open source software. Based in A Coruña, Galicia (Spain), Igalia is known for its contributions and commitments to both open-source and open standards. Igalia's primary focus is on open source solutions for a large set of hardware and software platforms centering on browsers, graphics, multimedia, compilers, device drivers, virtualization, embedded Linux, and device drivers.[2][3]


I salute these kinds of companies. Including Collabora.


Here's a list for people looking to work at at tech company worker's cooperative:

https://tech-coops.xyz


Collabora isn't worker owned. It does however have an animal farm sort of structure.


Igalia is doing the work, but does anyone know who is funding Igalia to work on it? (Or are they doing this without funding?)


I don't know, but my guess from their stated mid-term goals [1] would be that they're funding this themselves, in the hope of being hired for consultancy/feature development jobs on Servo once it gets used in small embedded devices, similar to how they get paid for contributing to other browser engines.

Edit: I also imagine most of the answer to "Who is funding Igalia?" in the FAQ of a similarly Igalia-led project, Wolvic, is relevant here [2]:

> Generally speaking, Igalia is funded by a wide variety clients. Some of our contracts allow or encourage us to discuss the work; others do not.

> Igalia works on a lot of things, from graphic drivers to multimedia, as well as the web platform. Igalia’s model expands the ability for investment into the web platform and web engines. We think that is not only good for businesses, developers, and users, but fundamentally useful to the long term health of the Web.

> Igalia itself re-invests in things we feel are important, but that we think under-served or else very, very interesting. Very often we are able to find good alignments with client work. Igalia is also the maintainer of a few official WebKit ports, including WPEWebkit, which powers millions of devices. We are able to do this and build a team around a diverse combination of investments, which in turn makes WebKit better and helps the larger web ecosystem remain healthier. Our ideas around XR are not dissimilar.

[1] https://people.igalia.com/mrego/servo/igalia-servo-tsc-2022/...

[2] https://wolvic.com/en/faq/#who-is-funding-igalia%3F


Excited to see the renewed interest in Servo. Another new web engine that is coming along nicely is SerenityOS LibWeb: https://github.com/SerenityOS/serenity/tree/master/Userland/...


First new browser engine to pass acid3 test since the test was invented. Nice. Hopefully this will turn into something end users can benefit from. I'd love to see done to Chrome what WireGuard did to OpenVPN.


The pace at which Ladybird is evolving is impressive, both LibWeb and LibJS. I've never seen anything like it. The amount of work needed to make a browser work is uncanny and they're making it look easy (it's not).

I was around when webkit browsers started to appear. Back then, the engine was leveraging almost a decade of work on KHTML. It wasn't something pulled out of thin air. All popular browsers nowadays have their roots in 90's and early 2000's codebases.

Servo is a very cool project as well, I'm rooting for them!


> I'd love to see done to Chrome what WireGuard did to OpenVPN.

While I share the hope, the situation is (imho) very different. OpenVPN is FOSS while Chrome is proprietary... OpenVPN is a tool which still helps many many many users while Chrome is a mixed bag - pretty good browser made by a worlds largest advertising company.


Also the project scope is of a totally different order magnitude.


I think an Electron replacement would be a killer app for servo. I hope that happens.


That would be Tauri with Servo as a WebView instead of the OS default. I'm quite sure this will happen!


> The first task is to reactivate the project and the community around it

What does that mean, when there's active development of the github repository?

It's never been deactivated has it?


For all practical purposes the project was on pause. Looks like no-one had time / energy / willingness / knowledge to make real progress.


Good to hear! I'd like to see Servo and Firefox switching to Vulkan from OpenGL on Linux.


Is there any tool in Rust that allows auto import module based on usage ? A VSCode extension is perfect.


Rust Analyzer can add `use` statements on confirming completion and clippy will complain/remove unused ones, if that's what you want.


When a symbol is unresolved, but could be made available in the current workspace -- e.g., HashMap when you haven't yet imported it, or a trait function whose trait isn't in scope -- rust-analyzer offers to import or qualify the symbol or import the necessary trait.


I know it's not related to the rendering engine, but I really hope side-effort is expended on marrying Firefox to the Chrome Embedded Framework (CEF). This is a major roadblock to getting Firefox in more embedded, webview, and in-game spaces.

(My naive understanding)


I'd suggest those priorities, in order:

1. Making a fully secure no-JavaScript browser for Tor usage

2. A secure browser that works on major websites

3. Android support

4. Embedding support

5. Extensions support

6. All missing features supported by both Firefox and Chrome, roughly in order of addition to the web standards

7. Replace Firefox

8. All features supported by any browser


It’s rather uncommon that you consider TOR support to be a higher priority than “a browser that works”, so I’d like to hear more about the ordering of your first two priorities, specifically.


Because an unexploitable browser (which is the main fundamental advantage of Servo) is more important for Tor than elsewhere since an exploit will compromise anonymity.

Also, since Tor browsing is often done with JavaScript off, and removing JavaScript removes a huge amount of web features that need to be supported (including a JavaScript engine, which I think Servo still doesn't have a pure Rust implementation of), it's much easier to make a usable browser for this use case than others.


It’s shame Mozilla gimped Servo by shackling it to Gecko for political reasons and giving it utterly stupid priorities like VR. Some of the ideas put forward were great. It was really inspiring to see that such a cool R&D project was possible in a space as uncompetitive as web browsers.


I wish the first priority for the project would be to make it easy to integrate into other applications, instead of building a full fledged browser. To break the monopoly of WebKit/Blink browsers we need a competing rendering engine that is being developed outside the Google/Alphabet umbrella.


Servo has always been easy to embed. Basically the host needs to provide a GL surface and input events, and gets some callbacks from Servo.

Maybe I should revive the Gonk port[0]...

[0] https://github.com/fabricedesre/servonk/


>first priority for the project would be to make it easy to integrate into other applications, instead of building a full fledged browser

That's the case. From homepage:

> Servo’s mission is to provide an independent, modular, embeddable web engine, which allows developers to deliver content and applications using web standards.


I thought that's the old blurb. In the article they specifically mention they want to work on CSS2:

> The focus for 2023 is to improve the situation of the layout system in Servo, with the initial goal of getting basic CSS2 layout working.

But seeing another comment in the thread, it looks like that was the last thing the developers that will be sponsored were working on anyway, so it makes sense to pick up where they have left off.


Exactly - there are cases there where it wouldn't matter too much that it isn't complete yet.


One of Igalia's, the team funding this new Servo development, projects is Servo-based Wolvic[1] which is a continuation of the Firefox VR project:

>A few months ago, we announced we would be taking over stewardship of what was then the Firefox Reality project, spinning off a new browser based on Reality’s foundations that would follow its own evolutionary path: Wolvic.

[1] https://www.igalia.com/2022/07/08/Wolvic-1.0.html


Wolvic uses Gecko.


How was Servo "shackled to Gecko"?


It was far obvious it would be used to provide things piecemeal to Gecko when it was started. The decision to port WebRender came more or less at the same time when it was decided that Servo, which had a great velocity at that point, would focus on VR and AR usage.

It wasn't too hard to read between the lines for what was happening especially considering how political Mozilla is from the inside. The decision to stop the project some time later wasn't much of a surprise from then on.


I don't mean to wade into the question if the strategy with Servo was good or bad or anything like that, but

> It was far obvious it would be used to provide things piecemeal to Gecko when it was started.

While many people believed that Servo would be a total re-write of the browser, a new clean slate project, everyone involved was very clear from the very beginning that it was not.

See slide 3 of the presentation that introduced Rust and Servo inside of Mozilla: http://venge.net/graydon/talks/intro-talk-2.pdf

> We are not “rewriting the browser”. That's impossible. Put down the gun.


> It was far [from] obvious it would be used to provide things piecemeal to Gecko when it was started.

I don't know why you're so surprised. Creating a browser rendering engine with full feature parity is an absolutely gigantic project. Of course successful modules were merged into Gecko.

> Servo, which had a great velocity at that point, would focus on VR and AR usage.

Mozilla doesn't have the same financial clout as Google. Of course Mozilla wanted a way to monetise Servo. R&D is great but they can't spend on R&D indefinitely.


> Creating a browser rendering engine with full feature parity is an absolutely gigantic project.

So? Gecko was a mess and they had something actually exciting on their hand which was mostly untainted by their branding. They could have bet on it rather than chose to die a slow death while their money trickles to their highly pay executive team.

> Of course Mozilla wanted a way to monetise Servo. R&D is great but they can't spend on R&D indefinitely.

If that’s what they were looking for, that’s retrospectively an extremely poor decision. There was no money in VR. The issue with Mozilla management is that they have been so consistently terrible you never know if they are genuinely malicious or just completely inept.

I generally feel little sympathy for Mozilla. They killed all their interesting projects, squandered money in dubious half-assed investments and managed to make themselves hard to deal with as a community member through a combination of weird rigidity and repeated communication mismanagement.

I would be very happy to see Servo find a new lease on life however. That’s what great R&D looks like.


> I generally feel little sympathy for Mozilla.

I see this take a lot in Mozilla-ish threads, and at this point it just reads to me a lot like backseat driving. I think real critiques of Mozilla take the form of companies like Vivaldi, Opera, The Browser Company, Brave, Mighty, Synth, Sidekick, etc. I'm not doing a "put up or shut up" thing; I always think people have the right to critique and discuss. I'm just saying there's a difference between substantive and non-substantive critiques, and most of the anti-Mozilla stuff I see now seems like the former.

> Gecko was a mess and they had something actually exciting on their hand which was mostly untainted by their branding.

Honestly I'm not that excited by Servo. It's geek-cool that they're able to leverage Rust and build a browser engine that maybe doesn't have memory error vulns and can better take advantage of multiple CPU cores, but I'm yawning just typing that out. By the time they're done we'll have the metaverse.


> like backseat driving

It’s not backseat driving to criticise the driver who just crashed their vehicle into the wall.

> most of the anti-Mozilla stuff I see now seems like the former.

Sadly I did have to interact with Mozilla in the past decade. I wish I didn’t honestly. It goes a long way to explain why they have no momentum anymore as far as I’m concerned.


Possibly. But thanks to Wolvic, there's a chance that the metaverse will be built on top of Servo ;-)


Heh, I would be delighted to eat my words this way


> So? Gecko was a mess and they had something actually exciting on their hand which was mostly untainted by their branding. They could have bet on it rather than chose to die a slow death while their money trickles to their highly pay executive team.

Mozilla/Firefox rose from the ashes of Netscape, which failed precisely because they tried to do a complete rewrite of their browser engine. With that in mind, it's not too surprising that they would want to backport features to Gecko.


Netscape was killed by AOL culture in the same way Firefox died of Mozilla culture. Who could have guessed? The same management team led to the same end result.


Servo was a PoC browser that did not need to become an actually usable browser by itself, but it served as a test bed for writing browser parts in Rust so they could be used to replace bits of Firefox (Gecko).

Now it seems they are pushing for Servo as a browser and goal by itself.


If its any consolation Mozilla will never threaten the browser engine that is used by the company that provides the lion's share of its income, just saying.


Technically Mozilla incomes come from being a foil to Google for an hypothetical antitrust probe. At this point both Gecko and Firefox are utterly irrelevant.


[flagged]


What has Mozilla done which is so bad? The only thing that annoys me is their refusal to support any api for writing to an existing file, but I am aware this is a niche concern for most of the web.


well, in my personal opinion they shot themselves in the foot when:

- they ditch their own extension system (which was far more powerful) to go hunt for leprechauns with google "unified extensions system" (read Google-Controled extensions system)

- when they stopped servo development (yeah... there is lack of money, but not to pay the big ones on the top, right)

- They give the boot to Brendan Eich (yeah... the Brave browser guy)

- They spend coding time with useless features (oh i can mention a few... but lets start with those colorful themes that no one cares about..........)

- i can go on and on... and on.......

but... all in all, i'm HEAVY a Firefox user!!! (because there is nothing else to choose from)


And, by the way, what's so wrong with my comment that had to be flagged???




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: