Slashdot is powered by your submissions, so send in your scoop

 



Forgot your password?
typodupeerror
×
Firefox Desktops (Apple) Open Source The Internet

PowerPC Fork of Firefox Reaches End of the Road (arstechnica.com) 50

Andrew Cunningham writes via Ars Technica: It has been well over a decade since PowerPC Macs roamed the earth -- so long that the Intel Macs that replaced them are themselves being replaced by something else. But to this day, there's a small community of people still developing software for PowerPC Macs and Mac OS 9. One of those projects was TenFourFox, a fork of the Firefox browser for G3, G4, and G5-based PowerPC Macs running Mac OS X 10.4 or 10.5. Maintained primarily by Cameron Kaiser, the TenFourFox project sprang up in late 2010 after Mozilla pulled PowerPC support from Firefox 4 during its development. And amazingly, the browser has continued to trundle on ever since.

But continuing to backport Firefox features to aging, stuck-in-time PowerPC processors only got more difficult as time went on. And in March of this year, Kaiser announced that TenFourFox updates would be ending after over a decade of development. The final planned release of TenFourFox was earlier this month. Kaiser's full post is long, but it's worth a read for vintage-computer enthusiasts or anyone who works on software -- Kaiser expresses frustration with the realities of developing and supporting a niche app, but he also highlights TenFourFox's impressive technical achievements and ruminates on the nature of the modern Internet and open source software development [...].

Kaiser doesn't intend to fully halt work on the browser, but he is downshifting it into what he calls "hobby mode." He will continue to backport security patches from newer ESR releases of Firefox and post them to the TenFourFox Github page, but anyone who wants to use these will need to build the app themselves. Kaiser also won't commit to providing support for these additions or providing them on any kind of schedule. Other developers are also welcome to continue to release TenFourFox builds on their own.

This discussion has been archived. No new comments can be posted.

PowerPC Fork of Firefox Reaches End of the Road

Comments Filter:
  • Probably ten years ago, on an eMac from about 2004. Anyway, the modern (at the time) web on a single core 1.4Ghz machine was pretty terrible, honestly.
    • Bullshit. I should be able to use the modern Web on my Amiga and anything that runs PalmOS.
    • I have ten-four fox running on a 2002 quicksilver with dual 1 ghz G4 processors. It is somewhat leisurely but it does nicely for looking up stuff. I wouldn't try using an e-commerce site with it.

      I appreciated him keeping it running for as long as he has.

      It's amazing how much computer it takes to run a modern web browser. The quicksilver can do anything else I need, but not a web browser. Or I suppose a modern game, which I don't play anyway.

      Then 2009 mini runs the current Mint Linux. Hopefully that will be

      • I have similarly used this on a dual 450MHz "gigabit" G4, with a decent amount of RAM... while slow, it seems to run properly.
  • Comment removed based on user account deletion
    • by dskoll ( 99328 )

      I took a look at the stats [github.io]. There is some assembly in Firefox, which kind of surprised me. Also, about 9.5% of FIrefox is written in Rust and I'm not sure how well Rust is supported on PowerPC.

      • Re: (Score:3, Informative)

        I used to build Firefox for Mac myself, way back in the day, as in pre-2010 - back when you had to do so to get Keychain password support (a feature which has gone away again).

        Back then there was no Rust (duh) and no Assembly, from what I recall. But there were dependencies on libraries which weren't part of OS X - so those also had to be built (or downloaded, if you were lucky). If that's still the case - and I can't imagine it isn't - that'd be another potential pain point when it comes to keeping Firefox

        • by Bert64 ( 520050 )

          There was always some assembly, it even had support for linux/alpha, irix and other niche platforms at one point.
          But it's not just the cpu specific asm code, its also the platform specific code - the OSX code has likely been updated to require newer releases by now.
          There might also be power specific code intended for power9/power10 systems running linux etc.

    • Things like SIMD and intrinsics represent a lot of work to maintain between CPUs. There is better support compared to 10 years ago in compilers for generating them out of platform-neutral code but for a large project it can still be a big factor in choosing to drop support for an architecture.
      Other things that can be a pain are things that have hand coded an ABI, like in a JIT or native interface bridge for a dynamic loader.
      And finally, some debug and analysis tools are not available for every architecture.

      • by Bert64 ( 520050 )

        You can include a generic codepath coded in straight C that should work on anything, and then optimized code paths for the platforms you choose to optimize for.

        • sure, for intrinsics you can do that. But you still can't do that for ABI related issues.

        • by dryeo ( 100693 )

          Just too slow for some multimedia stuff and especially the JavaScript JIT.
          The Power Macs would need all the optimization possible to use YouTube for example.

    • by Reeses ( 5069 ) on Thursday October 14, 2021 @10:41PM (#61893941)

      If you RTFA, he specifically calls out how hard it is to keep Java running and up to date with the constant changes and development inertia going against his project.

      Besides various layout and DOM features we don't support well like CSS grid, there are large JavaScript updates we'll increasingly need which are formidably complex tasks. The biggest is async and await support which landed in Firefox 52, and which many sites now expect to run at all. However, at the time it required substantial changes to both JavaScript and the runtime environment and had lots of regressions and bugs to pick up. We have some minimal syntactic support for the feature but it covers only the simplest of use cases incompletely.

      He goes a bit more in-depth. But the modern web is slowly but steadily expecting features he's not able to backport into an old browser.

      • Note that the blog post talks about JavaScript, not Java. Those are two quite different beasts.
        • Note that the blog post talks about JavaScript, not Java. Those are two quite different beasts.

          Yeah, that makes a lot more sense. I was trying to imagine how Java mattered at all.

      • by AmiMoJo ( 196126 )

        Why not just port a newer version of Firefox though?

        His blog post says that it's because Rust doesn't support 32 bit PPC on OS X, and Rust is needed to build anything past Firefox 54. So since Firefox 54 he has apparently been back-porting stuff from Rust into C manually

        If someone wanted to take this project over then the place to start would be getting Rust to work on PPC.

        • by Bert64 ( 520050 )

          I believe there was a project to create a gcc frontend for rust, which should then in theory work with any gcc backend (ie any platform supported by gcc), which would include ppc32 and ppc64 for osx.

          • by dryeo ( 100693 )

            Yea, but which version of Rust.
            Not sure about now but Rust was horrible for being stable. If you needed version 0.x, you really needed exactly that version and the developers didn't care about compatibility with older versions.

        • Comment removed based on user account deletion
          • by dryeo ( 100693 )

            If you turn off the JavaScript JIT, which used to be possible, Firefox got unusable, IIRC, on a fast Athlon and I doubt it would be better now as the JavaScript has become more complex. Shit on my I5, JavaScript can peg a core for upwards of a minute.

            • Comment removed based on user account deletion
              • by dryeo ( 100693 )

                It's been a long time, just spent too much time searching usenet for the conversations but there seems to be a hole in my archives, it was probably during the runup to FF 3 and when web sites were just starting to get too much JavaScript. One of the people I was supporting had a K5 or K6 and kept getting sigill's and then getting Mozilla to fix them and part of the testing was switching off the JIT. At the time there was definitely a large difference, though it may have been only on some pages. Even today g

        • by dryeo ( 100693 )

          He originally forked due to a lack of thread local storage on his platform. Since then backporting security fixes in Rust has become close to impossible. As others mention, he also used a different JavaScript engine and extending it was not simple.

      • I'm sure that was just a minor brain-o but JavaScript, not Java. Java is not the issue. JavaScript is. The js implementations are coded partly in asm for performance. That's why Firefox dropped support for PPC Macs to begin with.

        PPC Macs were fast for their day (well, some of them) but now they are antiques and it's time to let them die. And I say this as someone who owns one.

        • "PPC Macs were fast for their day (well, some of them) but now they are antiques and it's time to let them die. And I say this as someone who owns one"

          To put it in the PC universe, I wouldn't expect a Pentium 1 to be useable on the modern internet (which is the rough equivilant to a PowerPC).

          I think the real issue here is that people want the enviroment of the PPC era, and this is fully understandable because Mac OS 8 and 9 is clean, without all of the animated cruft and whatnot of OS X, and

    • by Anonymous Coward
      It's a fucking enormous project in terms of lines of code with one guy in his spare time hacking pieces of the newer versions to fit into the old one. It's not just keeping the old version running, he's having to add more and more pieces to make the browser more useful than a colorized Lynx. It's like saying, why does it take so long for one man to build a car from scratch when Henry Ford's factory could make one in 93 minutes.
    • by DrXym ( 126579 )
      I'm sure there is some assembly code, but I expect that is a relatively static target. A bigger issue would be Firefox utilising more recent APIs in OS X to get better graphics performance, audio, input or whatever and them not existing in old version of OS X. There might also be complexity from Rust code or other 3rd party libs and how well they also bind to the old APIs or generate PPC code.
    • Graphics APIs alone would be tough. Going to the Google Maps web site? It actually uses WebGL now, so maybe it wouldn't even run.

      • by dryeo ( 100693 )

        Google has actually been pretty good about supporting older browsers. I just tried Google maps on 45ESR on OS/2, no webgl and it displays fine. The real problem is many sites using newer JavaScript stuff, even Google drive recently broke.

    • by dryeo ( 100693 )

      Lack of Rust support probably killed it. They had to use a different JavaScript engine as the JIT is in assembler or at least uses a lot of assembler and likewise for some of the multimedia libraries.
      What killed any newer Mozilla on PPC was thread local storage and the lack on PPC, though it seems it could have been added to its libc. For other platforms, Rust support is required after 52ESR and Rust seems to need over 4GB's of address space, at least to link xul.
      Even SeaMonkey, which has also forked, origi

  • Mac's aren't the only user of the PowerPC chip. Lots of RS-6000's used 'em too.

    • The Power10 [anandtech.com] is still around.

      • by Junta ( 36770 )

        Of course despite the headline, this is specifically about MacOS firefox, and it's a certainty that those servers won't be running OSX, and probably won't be running web browsers at all. In fact, their market share trajectory is such that fewer and fewer people will even see POWER architecture systems over time.

      • Only the PPC601 was a full POWER processor. Every PowerPC since then has lacked some of the features of the full POWER ISA. This is about PowerPC, not POWER, and the two are not the same (Again, except for the first PowerPC.)

    • Also AS-400.

  • I take my tangerine iBook G3 out every so often just for the looks I get using it. TenFourFox is the only way to get anything done online. Most of the time I am just writing with Office 2004, so there is still that I guess.
  • by zenasprime ( 207132 ) on Friday October 15, 2021 @06:34AM (#61894439) Homepage

    TenFourFox is a great life saver for keeping my PowerMac alive and kicking, even if its just for nostalgia's sake, but surfing the web isn't really practical these days due to the memory requirements of the modern web. When most sites are gobbling up GBs worth of memory to visit them, surfing the net on a machine that maxes out on 2GBs necessitates knowing how to not browse yourself into a cold reboot.

    Still, I'm grateful for all the hard work that's been put into keeping TenFourFox alive all these years. Bravo!

    • Which really does go to show what a complete shitfest the "modern web" is. It's gone from mostly using plain HTML which means "any computer can talk to any other computer" to being a complete clusterfuck where even clicking a link requires hundreds of Mb worth of javashit libraries.

      Might as well go back to the "good old days" and start slapping banners on sites similar to "this website can only be viewed using Chrome (versions 7.21a or 7.21b) on Windows 11 (build 8.0.236 to build 8.0237) with at least an

      • by DarkOx ( 621550 )

        We are pretty much there. I love Seamonkey and I don't really want to change browsers but other than throwing a little money at the project, even as a software developer helping out with the parts that matter is kinda beyond me. I could do it but the time investment required to get up to speed and than do anything useful would be to much for me.

        Its based on gecko from FF60 currently, and its amazing how much of the web does not work, or is a significantly degraded experience. Even facebook has issues, and

    • "When most sites are gobbling up GBs worth of memory to visit them, surfing the net on a machine that maxes out on 2GBs necessitates knowing how to not browse yourself into a cold reboot"

      This is due to bloat and all of the abuse of Javascript that goes on. The modern web, even with videos and such should never be gobbling up GB's worth of memory.

      But "Profits Uber Alles". Striping out excessive bloat and not abusing and angering the user with rude modal popups isn't anywhere on the priority list.

    • by rgbscan ( 321794 )

      68k.news and frogfind.com are a great way for a vintage machine to surf a lot of the modern web.

In order to dial out, it is necessary to broaden one's dimension.

Working...