In this post we interview Riccardo Mottola, mostly known in the PowerPC community for being the biggest – if not the only – contributor to the development of ArcticFox, the most complete and usable web browser on the platform. The interviewer is Mario Locati, one of the co-founders of the PowerProgressCommunity Association which drives a project for an Open Hardware PowerPC notebook.
Development blog: http://multixden.blogspot.com/
Hi Riccardo, thank you for agreeing to have this interview.
Could you please briefly introduce yourself mentioning where are you from and what you do for a living?
I live near Bergamo, Italy. I professionally work as a Business Analyst for CRM software, but am interested in Free and Open Source software on Unix and derivative Operating Systems since more than 20 years, focusing mostly on GNUstep Applications and, more recently, in ArcticFox.
Some GNUstep applications I work on: GWorkspace, Graphos, Battery Monitor, GNUmail and many more.
Apart from computing, I am a passionate analog photographer and listen to classical music. The quality of code is assured by a good Wine and Beer.
Photo on the left: Aerial view of Iseo Lake, B&W film . Photo on the right: Carnevale Veneziano, Sunset, slide film.
More here:
https://riccardo-mottola.pixels.com/
http://astraphoto.blogspot.com/
So, like me, you are coming from one of the most hardly hit areas in Europe by the COVID-19. For how long were you in a lockdown? Was it a very strict measure or you could still be able to carry on with your life?
The strongest lockdown lasted almost three months, the measures were very strict, and for about 10 weeks I had no in-person interaction with family, colleagues, friends: alienating. But I stayed safe and isolated, since security matters, then, gradually, normalized, but I still have no contact with colleagues, since the office will remain completely closed until September.
You were among the lucky ones that were able to continue its work from home, that’s very good. And what did you do in your spare time?
I had and have little spare time, because remote working led to increased work schedules. However, especially in the first week, I could only do activities from home, so the only thing I could do was reading, listening to music, building models and of course coding! I tried to revive some of my older computer system (especially Big Endians) with some success, but access to spare parts is difficult, also for shipping issues.
BigEndian systems I work on are of course PowerPC systems (old Macs for now) but also many SPARC and SPARC64 machines, since those are excellent memory-checking systems.
On the coding side, I was able to do a lot of work – not just a humongous amount of patches ported from mozilla to ArcticFox, but also some long-time lingering tasks were revived. I worked on Objective-C support for SPI displays of the raspberry (SPIDisplayKit), improved portability of GNUstep as well as various work on its user application
It seems you are enjoying to code for big endian machines, that’s so important nowadays as developers only have little endian CPUs in mind. How come you are so passionate with this alternative, non mainstream architecture? Could you describe your typical development environment setup?
I love the CPU variety, it is a kind of freedom, like OS, compiler or Desktop environment; something we are forgetting in the monoculture of today, just little-endian 64bit Intel or ARM… Several years ago, Big Endian was not so exotic. While Intel has always been predominant, most major (and minor!) Unix workstations were Big Endian, with an incredible variety of Architectures. That rich and stimulating context always interested me and sparked my interest in Open Source. Today, unfortunately, the computing ecosystem is much less varied and for most programmers it means Linux on x86-64 or ARM.
My setup varies depending on the Task I am working on. GNUstep runs on quite low-spec’d hardware, so I can natively develop on all systems, although thanks to the high portability of the code, I can easily develop on a workstation or laptop, even if quite aged, and then test e.g. on a Raspberry PI 1 or on a vintage SparcStation.
A development setup: FreeBSD x86-64bit with GNUstep and iBook G4 with also ArcticFox:
ArcticFox instead is very demanding, so I work on fast, multi-CPU systems with plenty of RAM and then test only on e.g. PowerPC (I have a PowerBook G4 dedicated to it).
An image of the PowerBook running ArcticFox:
Let me thank you for working so hard on ArcticFox. A modern web browser is one of the core applications for the everyday use of an operating system. When did you first become involved in the ArcticFox development?
It is since fall 2018 I am involved in it, and before that I worked on porting TenFourFox back to Intel. The amount of work has been amazing and this “COVID Lockdown” pause allowed an incredible amount of work, which sadly is not yet ready for a release.
Which are the most complicated issues you are facing? Did you get any feedback from the community? Is it someone else helping you out on this hard work?
Working in such a big environment is complicated, I face a lot of issues because of the different compilers involved. Sometimes it is really difficult to debug some C++ issues when the mozilla build system is involved, as it is difficult to get the dependencies of a patch one wants to apply, the repository is not linear and bugzilla only lists the most direct ones.
I did not get much feedback from the community directly, although there has been interest generally sent to Matt about his Mac 10.6 releases. Interest has been shown in the GNU/Linux PPC scene too, however essentially nobody offered practical work in solving issues, just generic requests.
I’d love to make ArcticFox a useful browser for the less-mainstream platforms, like PPC, SPARC64 and older MacOS.
Also, in time, I really appreciate the classic User Interface, compared to the crippled and ever-changing Aurora, Quantum etc interface of Firefox.
You recently became involved with the PowerProgressCommunity Association, a group of hobbyists dedicated in bringing forward alternative platforms such as the PowerPC . In our Debian software repository for big endian PowerPC 64bit we do provide a ready-to-install binary of the latest ArcticFox. Taking into account the very limited resources we have, what do you think we could do to support your effort?
Right now, I don’t need hardware or money resources, except the ability to build and test on the DevKit from time to time. What I would need would be finding people able to help fixing bugs, having some knowledge of gecko/firefox, as well as understanding how to run the test suite.
Another very important thing would be understanding (and fixing) why GCC’s newer than 6.5 are not linking correctly on linux.
The biggest project of our association is the Open Hardware PowerPC laptop. What do you think about it?
I find it a very interesting and ambitious project which caught my interest. It is very challenging and a big step, perhaps the community could also need cheaper and smaller boards, however a modern portable PPC system could spark new interest in supporting Big Endian. Currently, all recent systems are workstations and the last laptops are venerable G4 PowerBooks and iBooks which are wonderful machines, but all stuck to single core CPUs and with vintage peripherals like PATA disks.
A laptop based on such a CPU should be interesting for the security-conscious user too! The hope would be to spark again interest in what Apple, Amiga and even IBM left in the dust.
Using the NXP DeveloperKit with the same T2080 CPU, we already tested ArcticFox and GNUstep applications on our target platform and they are very usable, so the outlook is promising.
Would you like to add anything else to this interview?
I hope our PowerPC laptop and generally our association can spark interest in more security, freedom, diversity in computing, even if it may come at a price of convenience or performance.
Well, Riccardo, that is about it. Thank you very much for your time.
Very nice and well made article.
I would like additional insights on ArticFox code. Is it derived from an older version of the Gecko based firefox engine? Which one? Will you able to rebase it against a newer version? Which are the limitation for the future when it comes to supporting new web technologies?
Thank you in advance.
Very interesting matter.
BR/Francesco
The engine is based on Goanna (PaleMoon), which is itself a fork of Gecko, but then heavily updated porting patches from Gecko directly and some through TenFourFox, so it is difficult to give a direct Gecko version, but it is comparable to about 39 to 41, with spot patches. However some specific parts are up-to-date (like certificates, some video-codecs, etc).
Keeping up-to-date is not done through a rebase, but by importing more patches.
As many Gecko forks (PaleMoon, TenFourFox, WaterFox and even SeaMonkey and Thunderbird) the limit for the future is getting harder, now that Gecko is passing more and more to Rust, makes many incompatible changes and spin off SeaMonkey and Thunderbird…
Hi Riccardo,
Thank you for your prompt and complete reply.
I am doing a restoration project for an iMac G3 Flower Power edition pushing the machine to its limits (CPU to 700mhz powerpc750cxe, 1g ram, SSD harddrive etc.) putting some linux distro on it. Proof of concept is to try using it as a daily-use computing (web-browsing, office suite, etc.), there are still lot of those iMac around especially in academic environment.
Of course web-browsing is heavily involved in that.
Your project seems one of the best around for this kind of 20years old machines. So I was checking how future-proof would it be.
Why so difficult to adopt Rust language? Any platform specific limitations for PPC32?
Thank you again and good luck with your projects.
You should receive more visibility for what your are doing/achieving here.
BR/Francesco
Good luck with your project – I think your CPU as well as 1GB of ram will be a challenge for “modern” applications like Libre Office and also Arctic Fox. AF runs acceptably on G4. But try.
You should limit yourself perhaps to lesser applications.
The goal of the power progress community is also to provide more current hardware to use PPC CPUs.
THANK YOU Riccardo (and everyone else involved) for ArcticFox!! Im a normla user and I have an old iMac 10.6.8 that I needed to have an updated browser to continue to work!!! Now I can, you save me time, monay and save the environement precious resources so no new computer for me for a while!!! Thanks!
I`m interested in Arctic Fox
Thank you for making Arctic Fox. My main computer broke down. I have an old Macbook that only can run 10.6.8 and now I have a connection to the outside world again. Much appreciated!