Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

f54da

macrumors 6502a
Dec 22, 2021
504
186
Random thoughts: instead of entirely backporting newer chromium to older os, anyone ever tried recompiling older chromium with newer version of v8? I assume the boundary between these two is stable and standardized, and newer V8 can be set to run in non-JIT mode, so while not completely bulletproof this would cut down the majority of the attack surface.
 

Wowfunhappy

macrumors 68000
Original poster
Mar 12, 2019
1,751
2,091
I guess the main purpose would be for Snow Leopard? I don't see the appeal when we have Chromium Legacy, and modern websites often need more than just modern Javascript to work.

I assume the boundary between these two is stable and standardized
I also wouldn't assume that. I'm not sure about V8 but older Skia, for instance, is not compatible with newer Chromium. Google seems to keep all their components tightly in sync.

Something I'm more interested in trying some day is compiling a version of the Electron framework with Chromium Legacy patches. I don't like Electron, but a lot of software uses it, so it would be cool if we could just swap out the framework and make them work.

But Chromium's long compile times make it very difficult for me to experiment. Maybe if I ever do manage to switch to a Ryzen system (this would require me getting Mavericks working on Ryzen), projects involving Chromium will be easier...
 

f54da

macrumors 6502a
Dec 22, 2021
504
186
@Wowfunhappy

>and modern websites often need more than just modern Javascript to work
Curious, what else is needed? I thought there haven't been any real additions to html5 since it was stabilized. Are you referring to the new css selectors?

Edit: Also as to the benefit of porting over newer chromium entirely, the reason is that if you base on older chromium and backport V8 you still maintain gpu acceleration & native ui l&f.
 
Last edited:

Wowfunhappy

macrumors 68000
Original poster
Mar 12, 2019
1,751
2,091
@Wowfunhappy

>and modern websites often need more than just modern Javascript to work
Curious, what else is needed? I thought there haven't been any real additions to html5 since it was stabilized. Are you referring to the new css selectors?

I don't have anything specific in mind, but I know I've seen features on e.g. caniuse.com. Just as some random examples from looking through caniuse.com briefly:

CSS is definitely the biggest issue, but there's also stuff like new WebGL and Canvas APIs.
 

Pecka

macrumors 6502
Jan 13, 2022
287
252
What's missing in Snow Leopard that causes Chromium Legacy to not work on it?
 

PowerHarryG4

macrumors regular
May 31, 2020
108
34
London, England
If I enabled "Override software rendering list" in Chrome://flags what would that do? Would there be anyway to enable gpu compositing or would I have to build from source? I know it doesn't work properly I just kind of wanted to see what happens.
 

Wowfunhappy

macrumors 68000
Original poster
Mar 12, 2019
1,751
2,091
If I enabled "Override software rendering list" in Chrome://flags what would that do? Would there be anyway to enable gpu compositing or would I have to build from source? I know it doesn't work properly I just kind of wanted to see what happens.
I believe you would need to build from source, as Chromium Legacy currently hardcodes the --disable-gpu-compositing launch flag.

I used Chromium Legacy early on before the flag was added. At the time, GPU acceleration technically worked on Mavericks. However, in addition to graphical glitches, and the fact that the browser would crash after around 45 minutes, the browser was actually slower than with gpu compositing disabled!
 

PowerHarryG4

macrumors regular
May 31, 2020
108
34
London, England
I believe you would need to build from source, as Chromium Legacy currently hardcodes the --disable-gpu-compositing launch flag.

I used Chromium Legacy early on before the flag was added. At the time, GPU acceleration technically worked on Mavericks. However, in addition to graphical glitches, and the fact that the browser would crash after around 45 minutes, the browser was actually slower than with gpu compositing disabled!
To build without that hardcoded flag, is there any step I have to miss? or will it build without it if I follow the steps?

huh that's strange, I didn't think it would make it any slower just cause graphical glitches. The browser does feel pretty fast even without gpu compositing to be honest.
 

MacBiter

macrumors 6502
Jun 2, 2021
264
45
I still need to take a look myself, but the way to test this would be to try running something that uses webgl. E.g. https://webglsamples.org/aquarium/aquarium.html

That used to work on Chromium Legacy, albeit not necessarily with great performance, because everything is calculated by the cpu instead of the gpu. If it outright doesn't work now, that's a regression which bluebox will probably need to fix.

Edit: And yes, can confirm it broke in 106.
That's weird. I'm running Chromium 106 in 10.9.5 and I just pasted that link - I have a beautiful aquarium with swimming fish! So from my POV it's NOT broken.
 

PowerHarryG4

macrumors regular
May 31, 2020
108
34
London, England
Don't know if this is relevant to this or maybe it's already known but was just reading around and supposedly GPU rasterization worked AMD GPUs R200, R300 and the D series (which is what i'm on) on this version of Chromium 68 https://github.com/macchrome/chromium/releases/tag/v68.0.3398.0-r550900-macOS . If you click the gpu.mhtml file it says
  • Some GPUs on Mac can perform poorly with GPU rasterization. Disable all known AMD GPUs other than the R200, R300, and D series, which have been tested.: 613272, 614468
 

Wowfunhappy

macrumors 68000
Original poster
Mar 12, 2019
1,751
2,091
To build without that hardcoded flag, is there any step I have to miss? or will it build without it if I follow the steps?
You need to remove the code that sets the flag. I forget where it is now, but search the diff between Chromium Legacy and mainline.

huh that's strange, I didn't think it would make it any slower just cause graphical glitches. The browser does feel pretty fast even without gpu compositing to be honest.
Well, it could make the browser slower if it wasn't working properly (for example, by frequently faulting), and it clearly wasn't working properly! This was on an integrated Intel GPU and a dedicated nVidia GPU.

I can understand why you want to try this, and if you enjoy playing around with the source, by all means, have fun! However, I will caution that unless you can actually fix the underlying code, I really don't think you will like the results. It's turned off for a reason!

You may also be interested in testing a build from before February 2021, which is when Bluebox added the --disable-gpu-compositing flag. However, an absolutely evil use-after-free bug will cause these builds to crash at startup on 10.9, unless you inject some code to prevent CoreFoundation from releasing memory. Here is one example of the code you'd need to inject, which simply prevents CFRelease from ever releasing memory. Or, this alternate version I wrote at the time will attempt to block CFRelease only when necessary to prevent Chromium Legacy from crashing. I'm not sure whether there's an in-between build which fixed the CoreText bug but did not add --disable-gpu-compositing.
 
Last edited:

PowerHarryG4

macrumors regular
May 31, 2020
108
34
London, England
I can understand why you want to try this, and if you enjoy playing around with the source, by all means, have fun! However, I will caution that unless you can actually fix the underlying code, I really don't think you will like the results. It's turned off for a reason!
Ah yeah it's basically just to see it happen, it's completely pointless but I want to see it anyways haha.

You may also be interested in testing a build from before February 2021, which is when Bluebox added the --disable-gpu-compositing flag. However, an absolutely evil use-after-free bug will cause these builds will crash at startup on 10.9, unless you inject some code to prevent CoreFoundation from releasing memory. Here is one example of the code you'd need to inject, which simply prevents CFRelease from ever releasing memory. Or, this alternate version I wrote at the time will attempt to block CFRelease only when necessary to prevent Chromium Legacy from crashing. I'm not sure whether there's an in-between build which fixed the CoreText bug but did not add --disable-gpu-compositing.
Sorry a bit new to this. So is this code to be injected into the app? and if so is this to be injected using a new version of MacOS or on Mavericks? I think the last version I could find find before the fix is the 7th of Feb 2021.
 

Wowfunhappy

macrumors 68000
Original poster
Mar 12, 2019
1,751
2,091
So is this code to be injected into the app? and if so is this to be injected using a new version of MacOS or on Mavericks? I think the last version I could find find before the fix is the 7th of Feb 2021.
In Mavericks, injected at runtime (it doesn't permanently change the app, just how it's run that one time). The first example I linked contains instructions on the first two lines.
 

PowerHarryG4

macrumors regular
May 31, 2020
108
34
London, England
In Mavericks, injected at runtime (it doesn't permanently change the app, just how it's run that one time). The first example I linked contains instructions on the first two lines.
I read that but hadn't heard the expression foo before so was looking for files called foo haha. Got it to work though and can confirm gpu acceleration does not work and the browser does just feel way slower. The three tests on motionmark it seemed to have beat the up to date version of Chromium-legacy is on the Paths, leaves and Canvas Lines tests.

Screen Shot 2022-10-12 at 14.29.12 (2).png

Image above - GPU_Compositing Off
Screen Shot 2022-10-12 at 17.28.48 (2).png

Image above - GPU_Compositing on
 
  • Like
Reactions: Wowfunhappy

MacBiter

macrumors 6502
Jun 2, 2021
264
45
Help! Something's gone very wrong...

This morning - as with the last few - there was a new build of Chromium. This didn't concern me until Facebook started playing up (but didn't in Firefox 78, so therefore it wasn't FB). Then I opened a new tab and got the page but not the DuckDuckGo search field, the page just endlessly stuck loading.

So I decided to download a previous version, launched the Preference Pane, and picked 106. Suspiciously quickly I was told it been installed. But it wasn't - the Chromium app is in my Apps folder but has the diagonal 'no entry' circle, and apparently only 0 bytes.

So I rebooted, then tried again - this time I tried an earlier build of 107, but nothing happened. Each time I try a different build, it shows I have the failed 106 version. I can't get any other build.

So what do I do to get Chromium back? I'm using Firefox 78 ESR which surprisingly still works for most things, including here where I'm typing this.

ETA: I followed a link above to bluebox's git hub builds page and downloaded the latest version which seems to work ok, but I'm worried the PrefPane may be f*****?
 
Last edited:

Wowfunhappy

macrumors 68000
Original poster
Mar 12, 2019
1,751
2,091
Help! Something's gone very wrong...

This morning - as with the last few - there was a new build of Chromium. This didn't concern me until Facebook started playing up (but didn't in Firefox 78, so therefore it wasn't FB). Then I opened a new tab and got the page but not the DuckDuckGo search field, the page just endlessly stuck loading.

So I decided to download a previous version, launched the Preference Pane, and picked 106. Suspiciously quickly I was told it been installed. But it wasn't - the Chromium app is in my Apps folder but has the diagonal 'no entry' circle, and apparently only 0 bytes.

So I rebooted, then tried again - this time I tried an earlier build of 107, but nothing happened. Each time I try a different build, it shows I have the failed 106 version. I can't get any other build.

So what do I do to get Chromium back? I'm using Firefox 78 ESR which surprisingly still works for most things, including here where I'm typing this.

If you haven't downloaded the Preference Pane within the past couple of months, please redownload it now to make sure you have the latest version.

Afterwards, please delete Library/Application Support/Chromium Legacy Downloader/chromium-legacy-downloader.noindex (if it exists) to remove cached downloads.
 
  • Like
Reactions: TheShortTimer

MacBiter

macrumors 6502
Jun 2, 2021
264
45
If you haven't downloaded the Preference Pane within the past couple of months, please redownload it now to make sure you have the latest version.

Afterwards, please delete Library/Application Support/Chromium Legacy Downloader/chromium-legacy-downloader.noindex (if it exists) to remove cached downloads.
Ok, I've got Chromium back (see ETA above...) - but do you have the link for the PrefPane download?
 

Wowfunhappy

macrumors 68000
Original poster
Mar 12, 2019
1,751
2,091
Done. That no.index file to delete doesn't exist - in fact, there's no Chromium Legacy Downloader folder in Application Support! Hey ho, I don't suppose it matters... Though weirdly, launching the Pane (not to download anything for now) the arrow is still pointing to the failed 106 version from the previous version.

Can you please use the uninstall script that comes in the DMG and then reinstall?
 

MacBiter

macrumors 6502
Jun 2, 2021
264
45
Can you please use the uninstall script that comes in the DMG and then reinstall?
This is what I got (some redaction!):

Last login: Sat Nov 12 13:42:06 on ttys000
Apple-Core-i7-Fusion-iMac:~ ____$ /Volumes/Chromium\ Legacy\ Downloader/Uninstall.command ; exit;
launchctl remove error: No such process
rm: /Volumes/Mavericks: No such file or directory
rm: clone: No such file or directory
rm: 1/Applications/Chromium.app: No such file or directory
rm: /Volumes/Mavericks: No such file or directory
rm: clone: No such file or directory
rm: 1/_CCC: No such file or directory
rm: Archives/2022-10-16: No such file or directory
rm: (October: No such file or directory
rm: 16): No such file or directory
rm: 21-01-51/Applications/Chromium.app: No such file or directory
rm: /Volumes/Mavericks: No such file or directory
rm: clone: No such file or directory
rm: 1/_CCC: No such file or directory
rm: Archives/2022-09-13: No such file or directory
rm: (September: No such file or directory
rm: 13): No such file or directory
rm: 20-21-41/Applications/Chromium.app: No such file or directory
rm: /Volumes/Mavericks: No such file or directory
rm: clone: No such file or directory
rm: 1/_CCC: No such file or directory
rm: Archives/2022-05-26: No such file or directory
rm: (May: No such file or directory
rm: 26): No such file or directory
rm: 20-16-00/Applications/Chromium.app: No such file or directory
rm: /Volumes/Mavericks: No such file or directory
rm: clone: No such file or directory
rm: 1/_CCC: No such file or directory
rm: Archives/2021-12-10: No such file or directory
rm: (December: No such file or directory
rm: 10): No such file or directory
rm: 21-03-57/Applications/Chromium.app: No such file or directory

rm: /Users/____/Library/PreferencePanes/Chromium Legacy Downloader.prefPane: No such file or directory
logout

[Process completed]


It seems to have operated at the user level and on my external drives, but possibly not at root level?.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.