Wandering Thoughts archives

2020-08-19

Potential problem points for Chrome (or any browser) to support Linux

Suppose, not entirely hypothetically, that you're worried about the possibility of browsers no longer supporting Linux (and Unix in general). Since Chrome and Firefox are already cross-platform, a sensible question is what might make supporting Linux (or Unix in general) difficult in a cross-platform browser, especially one that already supports Android. From my somewhat ignorant perspective, I see two general issues.

One big thing that a browser needs to do is interact with the platform's 'graphics' system for drawing, video, audio, input events, and other similar things (extending to eg clipboard support). Unix currently has two graphics systems (X11 and Wayland) that are used by no one else, and they're at least somewhat different from other platforms (especially X11, which is very old fashioned). If the X11 and Wayland APIs diverge too far away from what Android and Windows support (and possibly Mac OS), then continuing to support the lowest common denominator between all of these platforms might be considered too limiting (or too much work to basically emulate what other platforms can do).

(We've already seen some degree of this in video, where both Chrome and Firefox have been very slow to support hardware accelerated video playback on Unix systems.)

The other large area, especially for Chrome, is platform security features for process isolation and process security. To the best of my understanding, Chrome is much more secure on Windows than it is on Unix because Windows allows it to do much more to lock down various processes. Unix (Linux especially) is trying to move forward on this, but it's generally been happening slowly and it may not match the APIs that Chrome is organized around on Windows. On Android, Google has a lot of freedom to advance the platform security features in any way that they want, so they could move towards features and APIs that are more convenient for them (ie, probably more Windows like). This would leave Unix as the odd one out, requiring an increasing amount of code (and effort) just for it, for less security.

(Firefox is not as far along toward separated and securely confined processes, so I expect that this affects it less.)

PS: With all of that said, the Reddit comments for my entry worrying about Firefox's future on Linux raised a good point (here) for Chrome continuing to support Linux, which is that a lot of Google developers use Linux internally and they need a browser, and probably ideally a Chrome that at least renders the same as Chrome on Windows and Android.

LinuxBrowserSupportPains written at 22:27:06; Add Comment


Page tools: See As Normal.
Search:
Login: Password:
Atom Syndication: Recent Pages, Recent Comments.

This dinky wiki is brought to you by the Insane Hackers Guild, Python sub-branch.