sailfish-browser-next153

Rating: 
4.666665
Your rating: None Average: 4.7 (3 votes)

Experimental Gecko ESR153 (Firefox 153) browser for Sailfish OS 5.1 and 5.2.

Sailfish OS ships a browser based on Gecko ESR91 from 2021; this is a community port of the current ESR153 engine, the successor of my ESR140 port (sailfish-browser-next).

Installs alongside the stock browser

Every package in this stack carries a "-next153" suffix and uses its own directories and profile. The system browser is not touched, and the ESR140 "-next" stack can stay installed as well — all of them appear in the app grid and can be used side by side. Uninstalling the -next153 packages leaves everything else exactly as it was.

Installation

Enable this repository and install ONLY this package. The dependencies (xulrunner-qt5-next153, embedlite-components-qt5-next153, qtmozembed-qt5-next153 and the three sailfish-components-webview-qt5-next153 packages) are pulled in automatically. Download is roughly 70 MB, installed size around 200 MB.

The app grid entry uses a purple icon, so it is easy to tell apart from the stock browser's blue one.

New in this release: extensions

WebExtensions work. Open the menu, tap the puzzle-piece icon, and search addons.mozilla.org from inside the browser — installing, enabling, disabling and removing all work from there.

Tested and working:

  • uBlock Origin — filtering, including its dynamic rules
  • Cookie-banner blockers (I still don't care about cookies) — banners are removed on load
  • Tampermonkey — installs and its settings page opens; running userscripts not verified yet
  • Social Fixer for Facebook (in desktop view; it targets the desktop layout)

Extensions are on by default. Earlier builds needed a pref set by hand, so a fresh profile silently had none.

What works

  • Mobile layout and a mobile user agent (Firefox/153 Mobile) — sites no longer render in desktop mode
  • Touch: tap, scroll, flick, pinch zoom, double-tap zoom; long-press context menu and text selection
  • Dialogs (alert/confirm/prompt), HTTP authentication
  • FIDO2 / WebAuthn security tokens over USB, including PIN entry — registration and login tested with a YubiKey on webauthn.io
  • Downloads with the native Sailfish transfer UI
  • Camera and microphone access (WebRTC / getUserMedia) with permission dialog
  • Sign-in popups that close themselves (Google OAuth), landscape orientation

For developers: remote debugging

The Firefox devtools protocol is available, off by default. To turn it on, add these to ~/.local/share/org.sailfishos/browser-next153/.mozilla/user.js and restart the browser:

user_pref("devtools.debugger.remote-enabled", true);
user_pref("devtools.debugger.prompt-connection", false);
user_pref("devtools.chrome.enabled", true);
user_pref("embedlite.devtools.enabled", true);
user_pref("embedlite.devtools.port", 6000);

The server then listens on port 6000 on localhost and speaks the standard remote debugging protocol, so anything that talks RDP can attach — Firefox's about:debugging, or a terminal client for evaluating chrome-privileged JavaScript, which is how most of the extension work was debugged.

To reach it from another machine, forward the port over SSH rather than opening it up:

ssh -L 6000:localhost:6000 defaultuser@<device>

There is a devtools.debugger.force-local pref that would make the server listen on all interfaces. Don't set it: the protocol grants full chrome privileges with no authentication, so anyone on the same network could read your cookies and run code in the browser.

Known issues

  • Extension popups — the small panel a toolbar button opens — are not shown yet. Extensions that are configured through a popup (VPN clients, for instance) can be installed but not set up. In progress
  • Context menu entries added by extensions are missing
  • ID Austria login (login.id-austria.gv.at) reports a wrong password even with the correct one; the password arrives byte-exact, the site rejects the session. Affects the ESR140 port as well. Under investigation
  • Occasional crash on first start; restarting usually succeeds
  • Rear camera delivers frames but shows a still viewfinder on the Xperia 10 V (device HAL issue)

This is alpha software. Tested on Sony Xperia 10 V (pdx235) with SFOS 5.2.0.15 and on the Jolla Phone 2026 with SFOS 5.1, both aarch64. Reports from other devices are very welcome — please include the device model and SFOS version.

Sources

Engine and EmbedLite layer: https://github.com/smatkovi/gecko-dev (branch fork-esr153) JS components: https://github.com/smatkovi/embedlite-components (branch next153) Browser UI: https://github.com/smatkovi/sailfish-browser (branch next153)

Release notes and direct RPM downloads: https://github.com/smatkovi/gecko-dev/releases/tag/esr153-alpha1

Support this work

This port was built in my free time. If you find it useful:

https://www.paypal.me/smatkovi https://liberapay.com/smatkovi

Application versions: 
AttachmentSizeDate
File sailfish-browser-next153-3.0.0-1.aarch64.rpm4.27 MB23/08/2026 - 01:18
File sailfish-browser-next153-3.0.0-2.aarch64.rpm4.27 MB23/08/2026 - 15:47
File sailfish-browser-next153-3.0.0-3.aarch64.rpm4.27 MB23/08/2026 - 18:27
File sailfish-browser-next153-3.0.0-4.aarch64.rpm4.28 MB24/08/2026 - 19:12
File sailfish-browser-next153-3.0.0-6.aarch64.rpm4.28 MB24/08/2026 - 22:19
File sailfish-browser-next153-3.0.0-7.aarch64.rpm4.31 MB27/08/2026 - 20:39
Changelog: 

finally got extensions working, without popups though, but ublock origin, i still don't care about cookies and social fixer in desktop mode work, tampermonkey i didn't test, but the settings page opens.

Comments

ahjolinna's picture

I tested the new extension support, and at least ublock seems to work. Okay the browser did crash when I try to configure the first time, the 2nd time it worked just fine.

I was thinking maybe it would be better if you could access extension configure page with "longpress  and then choose configure" instead one click/press (for better accessibility)

ahjolinna's picture

like I mentioned on 140 version about areena.yle.fi there is about same amount of errors on 153
here is the logs for 153(-3.0.0-6) just in case: https://paste.opensuse.org/pastes/a7d050f8c95a

(it does load another video site first, then goes to yle)

lorenzo's picture

Hi!
Trying it in sfos 5.2 on jp26. Screen is blanking and then all goes dark. Do i have to install some other to let it work?

aviarus's picture

 Hi, nothing else to install — Hardware rendering itself is fine, so no need to fall back to software. Paste this into a terminal without the three quotes, then restart the browser: ```bash python3 - <<'PY' import os p = os.path.expanduser("~/.local/share/org.sailfishos/browser-next153/.mozilla/user.js") os.makedirs(os.path.dirname(p), exist_ok=True) s = open(p).read() if os.path.exists(p) else "" prefs = {     "gfx.webrender.compositor": "false",     "gfx.webrender.compositor.force-enabled": "false", } added = [] for k, v in prefs.items():     if k not in s:         s = s.rstrip("\n") + '\nuser_pref("%s", %s);\n' % (k, v)         added.append(k) open(p, "w").write(s) print("added:", ", ".join(added) if added else "nothing (already present)") PY ``` If the screen still goes dark after that, start it from the terminal: ```bash sailfish-browser-next153 2>&1 | tail -40 ``` and send me the output — that'll tell me whether it fails at EGL or somewhere above it.

lorenzo's picture

Just updated and now it works good!
Sorry for reading this late and haven't helped debugging.

abranson's picture

This all looks very promising, though forking off my WIP esr140 branch has meant things have diverged quite a lot already, and your esr153 work is very different to mine. You've done some useful issue finding there already, so thanks for that! Definitely saved me some time.

Hopefully we can get some of your contributions in to the main browser once the Jolla gecko 153 gets released?

aviarus's picture

Yes of course. I always wanted to use fido tokens, so i added that feature. I hope i didn't make some things worse. I'm glad if it saves you time. Thanks for your good work. The new jolla phone is amazing.

abranson's picture

I saw that! Very cool. I think for the core browser I'd prefer to wait until we have some hardware crypto to back it properly. But a community browser is exactly the right place to experiment with that sort of thing.

treagod's picture

Hi, thanks for this great port!

Tested on Jolla Phone 2026 / Sailfish OS 5.2. Sailfish keyboard word suggestions do not work in the browser (tested on multiple websites). Typing works normally.

Also: ChatGPT web sends the message on Enter instead of inserting a new line.

Thanks for bringing a modern Firefox engine to Sailfish!

sdworks's picture

Hitting the back-button, the browser crashes every time on my JP2026 ... . Restarting makes me land on the previous page.

aviarus's picture

Update xulrunner, the last version fixes this

duskull's picture

Thanks a lot for making this and good idea to rename it as it can be confusing if it has the same name as the default browser

ahjolinna's picture

also recoloured icon would also be nice to add, this is what browsers typically do to sperated their stable, beta, nightly version

ahjolinna's picture

tested both version on my xperia x compact, xperia 10 and JP26.

153 is noticeable smoother compare to 140. There are some regression, my guess its mostly related to the port.

one example if you watch any video from https://areena.yle.fi/ and then try to leave and it crashes

here is a log from my JP 26 when I try to play a yle video from and then leave and then it crashed: https://paste.opensuse.org/pastes/471b4b46e85f

edit/update: okay seems the new update fix the crash issue, but its not as smooth as 140 when scrolling