Hi there 
I have been working on Salama, a new native web browser for Sailfish OS. I’m not submitting this to Harbour/Jolla Store just yet, but that is the goal.
Salama is a Silica interface on top of the Gecko engine already shipped with Sailfish OS. It uses Sailfish.WebView and Sailfish’s Gecko stack. In other words: Salama is primarily a new browser UI, all the rest remains Jolla’s.
It is built specifically for the Jolla Phone 2026, on Sailfish OS 5.2 or newer. There is no support for older devices or architectures.
(Pre-)Release: Release salama 0.8.0 · muhnschein/salama · GitHub
Source (MPL-2.0): GitHub - muhnschein/salama: An experimental native web browser for Sailfish OS 🌍⚡ · GitHub
Screenshots
Features
- Navigation bar is an omnibar: URL and search in the same field. Search suggestions from open tabs, bookmarks, history and downloads.
- Tab overview, with search across tabs and tab groups
- Recently closed tabs when holding the plus button in tab overview
- Built-in Reader View based on Mozilla’s Readability
- Salama exposes Firefox’s Enhanced Tracking Protection functionality
- Native Web notifications.
- Configurable cover action for things such as Bookmarks, Downloads, History or opening a particular bookmark. When a page is playing audio, the second cover action becomes a media mute control.
Where are the tabs?
The tab overview is opened by dragging the navigation bar upwards, and pulled back down to return to the page.
Caveats
Many, I call this experimental for a reason:
- English and Finnish only for now.
- Overall lack of UI/UX polish, e.g. in settings, hamburger menu, tab groups editing. It’s my daily driver, but I also find something I want to fix every day.
- All media playback on the current tab is paused as soon as another tab becomes active (with or without media in it). To my understanding, this Jolla’s Gecko patches, not Salama. Very happy to be corrected here.
- No private tab group. I would have wanted to lock this behind a device code/fingerprint auth, but we still lack the public API for that, so I rather left it out. It’s on my list of things to nag Jolla about.

- Links will always open in sailfish-browser. (Also on the list of things to nag Jolla about.)
- Web notificatons only for the 5 most recently opened tabs. No Push API. (Also on the list of things to nag Jolla about.)
Bug reports welcome
Bugs are best reported as GitHub issues.
Thanks
Thanks to @Jolla for exposing the WebView APIs that make this possible and for @abranson in particular for putting in the heroic work of upgrading things again and again. Also to @flypig and anyone I may have missed here. 

29 Likes
You picked a good name.
Would it be hard to make a version based on the servo rendering engine?
1 Like
Believe it or not, that was actually the first thing I tried.
Failed miserably, though.
That is not to say that it can’t be done, but I found that it is best not to reinvent the wheel.
So I’m doing the hubcaps… so to speak.
1 Like
Cool, it’s nice to see more native web browsers popping up. It’s great for testing out different UI/UX ideas and tech. Which version of Gecko is it using? (update…just checked its v115)
As for using the Servo engine, it would be awesome, but I wouldn’t recommend even trying until the project reaches its first stable release (around next year). Also, if wanting to do that it will be much easier to build upon the work done on Atlantic, which uses WebKit …that project has already handled most of the heavy lifting to get the existing UI working with a other backend.
Anyway I will test Salama soon on my JP26 and report if I find any issues
hmm time to resuscitate this?
4 Likes
That would be cool! Had not even been aware!
2 Likes
spoiler : it didnt go far back then; mainly due to the fact mozilla doubled down on gecko…it could render basic pages iirc tho…dont know if things would make more sense nowadays anyways…
1 Like
I love the idea - just to see where it goes. I’d personally focus on keeping this a thin UI layer over the platform’s webview for now, though. Just to keep things more managable.
Still, having more choices would be awesome.
1 Like
I recently read reports on Servo, but never went there. Curiosity killed the cat 
I assume you @muhnschein relied on LLMs to build this, all the way to the image?
It’s the polite thing to be open about that.
4 Likes
yes I actually did. I actually had to get rust to worj; and to get that/compile it, I ported llm (and wrote about my Struggles in my blog) to sfos 3.something (or was it 4). Heavy duty with the reeeally old glibc of mer at the times ( outdated floating point support, as well as issues with rust & scratchbox…); but a fun adventure nevertheless!
1 Like
I think I’d like to polish the UI, wait for ESR 153, polish some more and then submit a first release to Harbour/Jolla Store. Only after that has passed QA, I’d add more features.
I don’t want to extend this faster than I can maintain it. 
That said, some ad-blocking functionality would eventually be nice. I’d like to find a way to do it that does the form factor justice, i.e., power efficient and without adding much GUI complexity.
5 Likes
Looks really good! Had a quick play with it 
1 Like
having a “portable” ui for all browsers (gecko, servo, webkit, you name it) sounds like tempting…not sure it would have much value…
The reverse “Safari on iPhone” situation 
1 Like
indeed
would.be unique for sure: