Sailfish OS update from Jolla
Jolla Phone delivery update
As noted in the previous newsletter, we moved into the Batch #2 shippings in August and those have been progressing nicely - we are delighted to note that about half of the Batch #2 is already shipped!
Anyone suspecting that you’re still missing your Batch #1 order, or that your Batch #2 order should have shipped by now, kindly provide (in private message) the details of your order(s) so we’ll find it and match:
- Your Full Name
- Pre-order number(s) and the final order number(s)
- email address(es) used
The most common reason of such order being delayed is that there has been different email addresses with pre-order and the actual final payment order. This has created two separate customer ID’s to the system and it won’t match in the normal shipping process. Thus, such orders will go to separate process with more manual clearance required.
Memory prices & Jolla Phone
While there is some cooling down of the memory price increases the market continues to be challenging and volatile, coupled with shortage of supply. In particular the combo chip of 8/128GB has continued and forecasted shortage of supply, whereas e.g. the 8/256GB chip has better availability for our volumes. Thus we have changed the minimum configuration from now on to be 8/256GB and will gradually phase out the 8/128GB model. There is no changes to the 12/256GB model.
From September 21, 2026 onwards we’ll also apply a price increase of +30€ to the smaller 8/256GB configuration.
Please see more and join discussion at post below
The Other Half update
The Other Half (“TOH”) is a unique feature of Jolla Phones, originally introduced back in 2013 already. Within the new Jolla Phone we set a perk target to release the new The Other Half if we reach minimum 10k pre-orders. The target was met in February 28 and we committed to make TOH to the product.
A month ago we published The Other Half designs. The new TOH daemon called symbiosis was left private and planned to be published after summer vacation period. It’s now available in github, please enjoy.
Further, we designed that with the new TOH we target to I3C interfacing to provide higher bandwidths. Later in the program we found a hardware bug at the sub-board (where the TOH i/f is managed) which limits the bandwidth to I²C only.
Important clarification is to note that in the Jolla TOH, the I3C is required only for higher bandwidth applications and the Jolla TOH spec does not specify I3C specific capabilities. The I3C will come in need only with use cases that require high bandwidths (like megabits per second), such as e.g. video streams or other high data volume and bandwidth applications implemented in the TOH side. As an example many internet music streaming services use 320 kbits per second by default.
I²C and I3C have been designed with a high degree of interoperability. In practice, common I3C peripheral chips also support I²C operation. It should also be noted that I3C devices (future I3C capable TOHs in our case) are designed to be backward-compatible with I2C and are therefore compatible with both sub-board variants. Similarly, I3C host on the phone side supports both I3C and I²C devices.
We’ve been now able to verify the revised sub-board to support I3C TOH interfacing and it will move into production during September.
All-in-all, we expect that most TOHs (and customers) will use I²C with the Jolla TOH. To keep it clear going forward and for all customers, we’ll add a requirement to the Jolla TOH specification that all official Jolla TOH’s need to be backwards compatible also with I²C.
Sailfish OS
Thinking regarding Sailfish OS 5.2 roll out for more devices is such that we would publish next Sailfish OS 5.2 for Jolla C2 Community Phone. Reasoning for this is that we already have audio routing issue fixed for Jolla C2. This audio routing issue exists still for Xperia devices. Hopefully we get supported Xperia devices fixed soon as well.
Some have been asking about open sourcing more components i.e. continuing where we left last spring. We’ll continue that effort later this year once we have a bit more bandwidth. There are good candidates such as XMPP account integration which was asked at point.
Energy from the Community
Interested in translation apps? Please check 3rd party app translation topic
It’s a list of all third party apps that accept translations with direct links to where a translator needs to go to start translating, sorted by translation platform (Hosted Weblate, Transifex, pull requests, and others). Developers are encouraged to add their apps to the list by editing the first post, and translators are encouraged to ‘Watch’ the topic to get notified about new apps they can translate.
Repository roundup
Main interface
wayland, Wayland compositor, mal updated it to 1.26.0.wayland-protocols, Wayland protocols that adds functionality not available in the core protocol, mal updated them to 1.49.mce, a framework exposing hardware status of display, buttons…, spiiroin modified the script listing the available batteries on a device, ensuring that the listing always happen in the same order, so the UI can report consistent battery information. spiiroin also removed some code from the original Jolla phone era, where the proximity sensor misbehaved during the boot sequence, requiring to read the kernel event device directly. Nowadays, this trick may misbehave with some specific bluetooth devices, making the phone diming itself unexpectedly. He fixed the issue of devices rebooting in a too dim state when set to auto-brightness with a very low base.
Network, communication and telephony stack
messagingframework, the email Qt framework, pvuorela contributed upstream various fixes and code clean-ups, particular about the possibility to get the always up-to-date feature to work when more than 10 folders are selected (at least the ten first folders are using an idle connection to the server, while before the operation was silently failing when there were more than 10 folders selected by the user).nemo-qml-plugin-email, QML bindings for emails, working on allowing support for different cryptographic backends, dcaliste modified the detection of the signature protocol from hardcoded to GnuPG, to using the MIME type information. He also reused the account settingcrypto/pluginName, initially introduced for signature purpose, as a generic setting allowing to choose the cryptographic backend, also for verification or decryption. He proposed some modifications allowing to reply to or forward the content of an encrypted email in its decrypted form.sofia-sip, a SIP library, mal updated it to 1.13.18.voicecall, the open source part of the calling application, abranson proposed a large modification, bringing a complete support of emergency cell broadcasts. This include regional classification and subscription management, durable alert queueing and history, warning-area geofencing, restart recovery and attention policy.
Browsing the web
gecko-dev, Mozilla’s Gecko web rendering engine, abranson updated the 115 branch to the latest Mozilla release for this version. He also opened a merge request to move to ESR153, porting all patches and Qt support to the new engine.qtmozembed, Qt bindings for the Gecko engine, abranson submitted a port to ESR153’s hosted runtime and logical-tab model. This is a major revamp of the package with the removal of legacy API.embedlite-components, QML components for the browser, abranson proposed to move to ESR153, updating hosted components, including prompt handling, error pages, desktop UA support, download cancellation, and WebRTC capture reporting.sailfish-components-webview, the high-level QML components exposing a web page, abranson modernised the component for ESR153, making some API changes, like adding a support for 3-buttons confirmation dialogs…sailfish-browser, the browser itself, abranson adjusted the browser for the ESR153 changes. nephros proposed to improve theabout:configpage, by rendering the modified settings in bold (like on desktop), adding a context menu to config entries to copy their name to the clipboard and also adding an option to only show the modified preferences.
Multimedia and sounds
gstreamer, a multimedia framework, mal upgraded to the (almost) latest upstream version 1.28.6. The various plugins were also upgraded accordingly.droidmedia, Android media wrapper library, mal added support for Android version 15 and 16, fixing also some camera permission issues on Android 14. Michal-Szczepaniak fixed a crash ofqmlglsinkwith the help of LLMs. The fix was to expose the size of the output buffer sogst-droidavoid guessing it (wrong).gst-droid, plugin for GStreamer allowing to use hardware accelerated codecs, now thatdroidmediaproperly reports the buffer size, Michal-Szczepaniak fixed a segmentation fault when decoding NV12 frames.qtdocgallery, Qt module to create a gallery, pvuorela added support for the ISO values in image metadata.sailfish-components-gallery, QML components to handle the image and video gallery, pvuorela added the ISO information, when available, on the detail page of an picture.ffmpeg, a framework to encode and decode multimedia resources, mal updated it to 8.1.2.libjpeg-turbo, a fast encoding and decoding library for JPEG, mal updated it to 3.1.4.1.thumbnaild, the daemon generating image and video thumbnails, mal proposed modifications to adapt the code to newerffmpegversions.
Low level libraries
qtcontacts-sqlite, SQLite-based plugin for QtPIM contacts, henrikschnor fixed the tests: some of them were failing on his machine when running them more than once. That was due to the fact that they didn’t properly clean up the entries created in the database. He also proposed various fixes when running the tests with Qt 5.15 on Debian, including fixes for memory leaks. He worked on moving the build system tocmakeand allowing compilation with Qt6.sailfish-components-accounts, QML components on top of the account framework, pvuorela found and fixed code paths marking the accounts as modified even without any change happening.libnice, a GLib ICE implementation for peer-to-peer UDP communications, mal updated it to 0.1.23.orc, a library to generate optimized code operating on arrays of data, mal updated it to 0.4.43.
Developer’s corner
python3, the popular and widely used programming language, mal updated it to 3.11.16.rpm, a software package format and tools, direc85 updated it to 4.19.1.1. He also fixed a script not working withbusybox.rust, the Rust programming language compiler, direc85 worked on an update to 1.95.0.rust-cbindgen, utilities to create C/C++11 headers for Rust libraries, abranson proposed an update to 0.29.4.llvm, the machinery to build compilers, direc85 proposed an update to 20.1.8.meego-rpm-config, specific rpm configuration files for Sailfish OS, direc85 enabled threaded zstd compression to limit very large packages to timeout while rpm compresses and writes the packages.nasm, a portable x86 assembler, mal updated it to 3.02.sdk-harbour-rpmvalidator, the harbour validation scripts, nephros proposed to allowRequiresof the formqml(Import.Name)for the already authorised components. monich ensured that the test for an existingmainentry in the packaged binary still works for earlier version of Sailifsh OS.glib2, the Glib library from GTK / Gnome, mal updated it to 2.88.3.
Please feed us your news
This is a community update, and frankly we can’t always keep up with all the exciting stuff happening in the Sailfish community. Plus, the less of this we have to actually write ourselves the better. So please help us out by posting your Sailfish news updates to the forum as a reply to this post. We’ll collate as much of it as possible into one easily digestible post for the next update. This is your news!
Please do also join us at our community meetings on IRC, Matrix and Telegram. Next community meeting will be on the September 17.
