Arctic Fox web browser for 10.6 (32 & 64-bit)

wicknix

macrumors 65816
Original poster
Jun 4, 2017
1,037
1,782
Wisconsin, USA
Prebuilt binaries available for: 10.6 & up 32-bit Intel, 10.6 & up 64-bit Intel, and 32-bit PowerPC Linux.

You can download Arctic Fox browser here, along with some add-ons and themes.
https://github.com/wicknix/Arctic-Fox/wiki/Downloads
Source available here:
https://github.com/wicknix/Arctic-Fox/

Arctic Fox does not support jetpack or webextensions. Please only use verified working or ported add-ons from Pale Moons repository ( http://addons.palemoon.org/extensions/ ) and choose the version designed for v27, or get the tested ones linked from our download page. Some untested firefox add-ons may severely break your browser!

Mac OS X users: Use the 32-bit version if you want to use the older 32-bit plugins, like silverlight (for netflix).

For a better YouTube experience on low spec machines install GreaseMonkey and the ViewTube script. On Mac Arctic Fox will use the QuickTime browser plugin to play videos, and if you are on Linux install the vlc-browser-plugin.

To combat against javascript heavy sites, i recommend a mobile user agent override. In about:config add a new string "general.useragent.override" and use this override "Mozilla/5.0 (Linux; ppc; Mobile; rv:52.0) Gecko/20100101 Arcticfox/27.9.15". This will speed up sites like msn.com, bbc.co.uk, facebook, twitter etc and force a tablet style layout.

Arctic Fox is released "as-is" with the hope that it will be useful. As such, there is no warranty of any kind.

Arcticfox-Screenshot.png


Cheers
 
Last edited:

MysticCow

macrumors 6502a
May 27, 2013
833
388
There's also TenFourFox, but that runs in Rosetta.

Is there a way to make it for 10.5 as a Universal? Just asking because the question is inevitable.
 
  • Like
Reactions: AmazingHenry

MagicBoy

macrumors 68040
May 28, 2006
3,903
934
Manchester, UK
There's also TenFourFox, but that runs in Rosetta.
The issue with that is that TFF is making increasing use of PowerPC and Altivec optimisations to improve performance, and while the G3 version will likely work via Rosetta the optimisations will results in a poor experience on Intel machines via translation. You'd be better running Firefox 48 on OS X 10.6 IMO.
 

vddrnnr

macrumors 6502
Jan 23, 2017
430
573
Hi wicknix,

Is it possible to also build it for 32bit?
I'm running Lion in 32 bit CoreDUO ( 10.7.5 ) so that's a requirement. ( I know it's not supported ).

Best regards,
voidRunner
 

wicknix

macrumors 65816
Original poster
Jun 4, 2017
1,037
1,782
Wisconsin, USA
I still havent had any luck in the 32 bit department. It requires the macports universal packages in order to build 32 bit on a 64 bit machine. I havent tried that yet as i dont want to kill my working build environment.

However, you could try building since you are running 10.7 on a 32 bit machine. My build instructions are in the snow leopard mini apps thread.

Cheers
 

XaPHER

macrumors 6502
Oct 13, 2010
260
166
Where?
Do you know if the limitation of snow leopard for 28.x + is only related to libc++ or if there's more? Might ask it to you since I'm really unsure I'll find this documented on PM (comparatively to Fx52 it's e10s-free).

Does it really need universal packages from Macports? By default mozilla* builds (runtime dependencies) are self-contained so just compiling everything with the right compiler flags should be OK, no? Well, what I'm saying would possibly more of use if at least I had a machine to try it..

On this subject I'm a bit frustrated about UXP; the build system has a lot of makefiles altered in a hard-coded way which wasn't the case previously. PM27 was the only browser that built without any trouble on linux ppc32 and now there's -fpmath=sse2 -msse2 hardcoded in a lot of places. Well, even filtering them out didn't get a working build.

Just in case: https://github.com/roytam1/mozilla45esr this repo uses changesets from Tenfourfox. 45 has its own advantages over PM 27.
 
  • Like
Reactions: WinterClaws

wicknix

macrumors 65816
Original poster
Jun 4, 2017
1,037
1,782
Wisconsin, USA
@XaPHER : It could just be related to libc++. The 28.x milestone is loosely based off 52esr if i recall correctly.

As for needing macports universal packages, that's what i dug up on google for building 32 bit on a 64 bit Mac. There are guys building PM for 32 bit on linux and windows without issues however, so it could just be compiler flags. I gave up because ld wouldn't properly link. It always gave me a wrong arch error. After googling the error, every result for mac said said use universal packages.

As for the sse2 stuff, i think they tossed that in to "force" minimum hardware requirements. The main devs don't want to support ancient hardware with v28 and beyond.

I'm still new over there and am only looking at mac specific code. Sorry if i couldn't properly answer your questions.

P.S. Thanks for the 45esr link. That's interesting. I see he even borrowed some from UXP. Pretty sure that's the guy who forked pm27/kmeleon and made it work on WinXP. :)

Cheers.
 
  • Like
Reactions: WinterClaws

wicknix

macrumors 65816
Original poster
Jun 4, 2017
1,037
1,782
Wisconsin, USA
Is there a way to make it for 10.5 as a Universal? Just asking because the question is inevitable.
I'm sure there is probably a way. I just haven't figured it out. Same with 32 bit builds. :(

Also updated it again. Partially fixed missing private browsing min/max/close buttons. They work and are usable, just positioned on the wrong side (they display on the right, should be on the left), updated certificates which i borrowed from FF ESR60, and updated readme.

Cheers
 

z970mp

macrumors 68030
Jun 2, 2017
2,889
2,812
The Matrix
Partially fixed missing private browsing min/max/close buttons. They work and are usable, just positioned on the wrong side (they display on the right, should be on the left)
I appreciate this change. Please make it an option for Windows / Linux users.
 

wicknix

macrumors 65816
Original poster
Jun 4, 2017
1,037
1,782
Wisconsin, USA
Windows and Linux users would be better off just using Pale Moons official releases. http://www.palemoon.org/
There are even unofficial forks that support winxp. Official requires win7 or higher. The various linux builds run on pretty much any intel/amd machine made within the last 15 years.

I'm only doing this as a side project to keep an up to date browser alive for Snow Leopard and try to fix the remaining Mac quirks (mostly theme related issues) that weren't fixed in PM27. Similar to what TenFourFox is doing for PPC, just not as in depth. I don't have that kind of time. ;)

Cheers
 

swamprock

macrumors 6502a
Aug 2, 2015
948
1,256
Michigan
Works great under Mountain Lion. The old Firefox trick of changing the minimum OS version no longer seems to work...

EDIT: ... for Firefox Quantum, that is.
 
Last edited:
  • Like
Reactions: wicknix and z970mp

XaPHER

macrumors 6502
Oct 13, 2010
260
166
Where?
@wicknix Coming back with what I previously said, the problem with 28 isn't just libc++ related. There's also missing symbols from the system C library, it seems. If it goes no further than that, it may be possible to get it to run with a hacked 10.7 SDK so it can be built from vanilla sources. Though I no longer feel like trying right now, I have a functional (tested) build host on 10.6 if I ever want to retry.
 

XaPHER

macrumors 6502
Oct 13, 2010
260
166
Where?
@wicknix I have to throw in a working mozconfig since provided one is suitable only for Mac OS X, but source doesn't need any alteration.

My Xorg server uses a framebuffer device, so everything (inclusive to Arctic Fox) doesn't get HW acceleration. It runs at a very reasonable speed. For a reference comparison: loading pages/scrolling and general browsing is slightly snappier than TenFourFox. Though that's a bit unfair, given the fact that threads support is incredibly superior on linux than on tiger; tenfourfox will load my dual cpu config only to ~100% of a processor, where on linux [palemoon] will max out both cpus usage while under heavy load. That's where you can see who did tailor a nontrivial part of the codebase to run faster on powerpc while the other one was focused on *x86*. Javascript performance can't compare since tenfourfox has ION+baseline JIT while palemoon only interprets.

Though, in general, palemoon 27 being the most recent non-webkit browser codebase with a lot of major features that builds without trouble, it's very dependable :)
 

swamprock

macrumors 6502a
Aug 2, 2015
948
1,256
Michigan
@wicknix I have to throw in a working mozconfig since provided one is suitable only for Mac OS X, but source doesn't need any alteration.

My Xorg server uses a framebuffer device, so everything (inclusive to Arctic Fox) doesn't get HW acceleration. It runs at a very reasonable speed. For a reference comparison: loading pages/scrolling and general browsing is slightly snappier than TenFourFox. Though that's a bit unfair, given the fact that threads support is incredibly superior on linux than on tiger; tenfourfox will load my dual cpu config only to ~100% of a processor, where on linux [palemoon] will max out both cpus usage while under heavy load. That's where you can see who did tailor a nontrivial part of the codebase to run faster on powerpc while the other one was focused on *x86*. Javascript performance can't compare since tenfourfox has ION+baseline JIT while palemoon only interprets.

Though, in general, palemoon 27 being the most recent non-webkit browser codebase with a lot of major features that builds without trouble, it's very dependable :)
Hmmm. Once I get moved back into my house and unpack my iBook, I'll have to give this a compile in sid...

Would you mind sharing your mozconfig?
 

XaPHER

macrumors 6502
Oct 13, 2010
260
166
Where?
Hmmm. Once I get moved back into my house and unpack my iBook, I'll have to give this a compile in sid...

Would you mind sharing your mozconfig?
Sure thing. If you're going to compile on a single cpu, I can share a self-contained archive (dependencies included) with my build in it if you want before trying to compile. It may take a day if you compile on an iBook (my mdd is a dual 1.5ghz and my build disk reaches >100mb/s r/w, I need avg. 6 hours to compile). It's compiled with most favorable compiler flags for g4/7450. So unless you have a g3, I guess that could be of help if it works on your distro.

Depending on what you answer, and if @wicknix approves, I'll see where I can upload. Meanwhile I'll upload my mozconfig
 

wicknix

macrumors 65816
Original poster
Jun 4, 2017
1,037
1,782
Wisconsin, USA
By all means. Upload it. I have a G4 mini that I was thinking about tossing some flavor of Linux on some day. I'd love to give it a whirl on ppc.

Cheers
 

XaPHER

macrumors 6502
Oct 13, 2010
260
166
Where?
Here's what my mozconfig looks like:

Code:
export CC="gcc-6.4.0 -flax-vector-conversions -O3 -mcpu=7450 -mtune=7450 -maltivec -mabi=altivec -falign-loops=16 -falign-functions=16 -falign-labels=16 -falign-jumps=16"
export CXX="g++-6.4.0 -flax-vector-conversions -fpermissive -O3 -mcpu=7450 -mtune=7450 -maltivec -mabi=altivec -falign-loops=16 -falign-functions=16 -falign-labels=16 -falign-jumps=16"
export LDFLAGS="-latomic"

mk_add_options MOZ_MAKE_FLAGS="-s -j2"
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/obj-ff-dbg

ac_add_options --disable-crashreporter
ac_add_options --disable-tests
ac_add_options --disable-debug
ac_add_options --disable-updater
ac_add_options --disable-mozril-geoloc
ac_add_options --disable-webrtc
ac_add_options --disable-safe-browsing
ac_add_options --disable-parental-controls
ac_add_options --enable-release
ac_add_options --disable-necko-wifi
ac_add_options --disable-eme
ac_add_options --disable-gamepad
ac_add_options --disable-dbus
ac_add_options --disable-gio
ac_add_options --disable-pulseaudio
ac_add_options --enable-strip
ac_add_options --enable-install-strip
ac_add_options --enable-application=browser
ac_add_options --with-branding=browser/branding/arcticfox
ac_add_options --enable-optimize
key points to make it compile on ppc32 are (don't omit any of these):
Code:
export CC="gcc -flax-vector-conversions"
export CXX="g++ -flax-vector-conversions -fpermissive"

export LDFLAGS="-latomic"
ac_add_options --enable-release
#if you forget --enable-release you'll run out of address space at linking phase if you're on 32-bit linux
You may try to put compiler flags in $CFLAGS and CXXFLAGS since that's where they should belong.
Compilation succeeds boths with gcc 5.4 and 6.4, but 7.3 will barf on exception code.

mix these with the "standard" palemoon mozconfig found at (http://developer.palemoon.org/Developer_Guide:Build_Instructions/Pale_Moon/Linux) and it should do the job.

Oh, wow, I just noticed I forgot to use jemalloc in my mozconfig. I'm rolling one more build tomorrow it seems.
 
Last edited:

swamprock

macrumors 6502a
Aug 2, 2015
948
1,256
Michigan
Here's what my mozconfig looks like:

Code:
export CC="gcc-6.4.0 -flax-vector-conversions -O3 -mcpu=7450 -mtune=7450 -maltivec -mabi=altivec -falign-loops=16 -falign-functions=16 -falign-labels=16 -falign-jumps=16"
export CXX="g++-6.4.0 -flax-vector-conversions -fpermissive -O3 -mcpu=7450 -mtune=7450 -maltivec -mabi=altivec -falign-loops=16 -falign-functions=16 -falign-labels=16 -falign-jumps=16"
export LDFLAGS="-latomic"

mk_add_options MOZ_MAKE_FLAGS="-s -j2"
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/obj-ff-dbg

ac_add_options --disable-crashreporter
ac_add_options --disable-tests
ac_add_options --disable-debug
ac_add_options --disable-updater
ac_add_options --disable-mozril-geoloc
ac_add_options --disable-webrtc
ac_add_options --disable-safe-browsing
ac_add_options --disable-parental-controls
ac_add_options --enable-release
ac_add_options --disable-necko-wifi
ac_add_options --disable-eme
ac_add_options --disable-gamepad
ac_add_options --disable-dbus
ac_add_options --disable-gio
ac_add_options --disable-pulseaudio
ac_add_options --enable-strip
ac_add_options --enable-install-strip
ac_add_options --enable-application=browser
ac_add_options --with-branding=browser/branding/arcticfox
ac_add_options --enable-optimize
key points to make it compile on ppc32 are (don't omit any of these):
Code:
export CC="gcc -flax-vector-conversions"
export CXX="g++ -flax-vector-conversions -fpermissive"

export LDFLAGS="-latomic"
ac_add_options --enable-release
#if you forget --enable-release you'll run out of address space at linking phase if you're on 32-bit linux
You may try to put compiler flags in $CFLAGS and CXXFLAGS since that's where they should belong.
Compilation succeeds boths with gcc 5.4 and 6.4, but 7.3 will barf on exception code.

mix these with the "standard" palemoon mozconfig found at (http://developer.palemoon.org/Developer_Guide:Build_Instructions/Pale_Moon/Linux) and it should do the job.

Oh, wow, I just noticed I forgot to use jemalloc in my mozconfig. I'm rolling one more build tomorrow it seems.
Thanks for that. I'll give it a try in the coming weeks once my machines are unpacked.

EDIT: your archive would be a great help. Just please let me know where you upload it.
 
Last edited:

RhianB

macrumors 65816
Sep 3, 2016
1,389
1,938
505 USA
Wow, this is working great on my mp 1,1 running 10.6.8 + an ad free MR experience using the Adblocker Latitude extension. Love all of the extension options that are available.

Thanks a bunch wicknix. This is great.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.