Problems plaguing Sailfish OS for too long

I’m honestly not sure where this topic is best to be placed, but what I’m saying here is wholly part of my experience using Sailfish X since June 2019 on my Sony Xperia XA2 H3123, in the US on a T-Mo network. Sailfish has largely contributed to my transition to Linux as a whole, but in general, these problems are largely centered around the Sailfish experience, both natively and with use of the Alien Dalvik in substitution of Android.

First, I want to address a serious problem with the simple process of upgrading Sailfish. This has been discussed as recently as the newest update from 3.3.0.16 to 3.4.0.24, however, it has been prevalent for a long time, as seen here in the older Together forum, dating back to early 2017. Sailfish OS installs with a 2.44GB system partition, and the rest of the space is applied to a data partition, where the home and other central files reside. The problem at this stage is that Sailfish OS takes up 1GB of space within the system partition as is. Combined with the end user potentially installing software with several dependencies from the Jolla Store alone (nevermind the need for OpenRepos) it is all but guaranteed that an end user will use up too much of the system partition, and thus make it impossible to install an update to Sailfish OS, let alone download the 600MB+ package. This precise issue forced me to re-flash my device to recover any of that space back. I’d even gone to the trouble of generating a filelist to find what was taking up all my space, and it largely was a result of libraries left over from programs I had uninstalled by then.
I can only surmise that we’ve not seen this change because of the continued support for the original Jolla phone, Jolla C, and Intex Aqua Fish. This conflicts with the rest of the userbase, however, which is likely users of Sony devices. Nevermind that due to how these Android-based phones are designed, we’re already losing 8GB of the storage to keep the device stable. Given that, we’re all likely to have expandable storage in use anyway.
To get around this problem is to use the proposed guides with the e2fsck command and make manual changes to the partition table in recovery mode. This is entirely doable, but absolutely frustrating to someone wanting their device to “just work.”
I can confidently say that I found the right variables for a fully functional Sailfish experience without compromising dramatically on the storage, given it’s a 32GB partition on an XA2.

31500000 for /dev/mapper/sailfish-home
-654 for the Logical Extent of sailfish/home, 4494 down to 3840 extents. That’s 15GB for user data.
+100%FREE sailfish/root brings it from 625 extents to 1279 extents, from 2.44 to just under 5GB.

I would propose 1279 extents as the new standard for system storage on Sailfish OS, and I’m confident this change would improve usability for many users alone.

But that’s only one problem. Other issues exist in the system itself. The Reset device function has been rather unstable. Doing so before the upgrade to try and regain that storage resulted in a flashing screen on boot. The same thing occurs resetting my device after the upgrade, which indicates this is a persisting issue, at least for my case.

I only discovered that Reset device issue because of another issue altogether, one that has also been mentioned before. If you fail to configure a Jolla account during the introduction sequence, and restore a backup that has a Jolla account, you’ll likely run into a snag with the error of “Could not store app keys” when you have to log back in. This issue is likely a matter of conflicting permissions not set correctly if you skip it in the introduction, but I tried it twice and was met with the same issue both times. Only when I added the account from the beginning, then restored the backup, was I able to configure it correctly.

But then yet another snag with the backup, and this is one that should be addressed ASAP, as it’s a more direct problem for any user transferring between devices or even doing what I did with re-flashing my phone. It fails to complete the restore due to a permissions problem with “jolla-notes/notes-vault” which I only discovered when I saw my text messages had no names attached. I can only reference the glory days of DOS here, but when a floppy disc failed to read, you were given three options: Skip, retry, fail. Such a thing should be implemented in the restore procedure. I can live without my notes, that’s far less important than my entire contact list. I need my contacts list. The notes can go wherever, as far as I’m concerned. More effort should be made to give the end user context for an error, and options should be provided. As it was, the notes failing to import kills the entire rest of the restore process! I had to manually grab the backup tar from my SD card, open it in 7Zip, remove the notes backup, put the modified tar back onto my SD card, and THEN I was able to complete the restore. That I had to do this at all is absurd.

At this point, I can maybe consider this nitpicking, but an issue is still an issue, and I don’t think anyone’s really mentioned this one. Ambiences are unreliable at best. Packaged ambiences, from OpenRepos for example, with their own files included, those work without a hitch. This problem might be more to do with how Tracker-miner-FS works, but it seems that any audio files selected from external media, such as the SD card, will be ‘cached’ in Sailfish for reboots, but if you have done a reboot, and switch to another ambience that has audio files set from external media, it will not keep those files assigned in the new ambience, and will reuse the ones from your previous ambience.
This is easily replicable by creating two ambiences, and setting files for each ringtone and clock with files from SD card. Select either A or B ambience you want, then reboot. After reboot, if you select the other ambience made, we’ll say we selected A before reboot and then switched to B afterwards, any phone call or alarms set will use ambience A’s cached files. Regardless, neither ambience will have their files listed in the configuration. This is minor, but given that ambiences are one of the only ways to customize the interface, and I personally take advantage of the ambiences a lot, especially at work to mute my phone, this is a pretty frustrating issue to have, and has also persisted since I started using Sailfish back in 2019. I’m a big fan of vaporwave music, so that combined with the enamoring artwork for some albums make for a great pairing of interface, color, and audio. Ambiences were a big selling point for me, as was most of Sailfish’s user experience. This neglect to such a core aspect of the OS is sad to see.

There’s also obvious ones to complain about. The web browser should be updated, the latest Gecko ESR is 78, we’re all the way down at 52. The changes to how the Mail client works is a slap in the face to your UX team, and is boldly inconsistent to the rest of the OS. The new approach to phone calls is just bad, if we’re going to integrate horizontal swipes, I would rather that be for declining a call, given swiping from the outer edge is how we usually leave apps, and swiping up would have the natural effect of PICKING UP a phone, including as your thumb will naturally rise to a position where it will hold the phone as you take the call. Fresh flashing of 3.4.0.24 obviously sets up defaultuser to introduce multiple users, but breaks some software depending on static nemo userprofile, which also breaks Aliendalvik’s signature spoofing capability. Should be symlinked.

This doesn’t even cover the many smaller problems Sailfish has, but these are some of the most pressing issues that need to be remedied. The storage issue prevents the most important thing for any and all end users, a system upgrade, along with an inability to update many programs! The backup issue prevents users from getting back to working condition, the Reset device function all but guarantees your device is soft-bricked until you can connect it to a PC. As indicated, I’m also not the only one to experience these issues, and that so many of them have pervaded the OS for over a year and a half is a serious problem for anyone wanting to explore an alternative to the Android and iOS duopoly.

14 Likes

Wonderful analysis. You should be hired by Jolla as a troublefinder.

5 Likes

You mean wonderful rant with a lengthy description of known problems demanding to fix asap?
I am sorry to be so blunt again and I feel for anyone being frustrated by the many bugs, papercuts and issues that there are. At times they make it hard for me not to start shouting and test out the aerodynamic properties of my phone.

But why does nearly everyone

  • consider their issues the most pressing?
  • think themselves in a position to make demands and set priorities for what should be fixed ‘ASAP’?
  • not distinct between a technical issue/bug report and a letter of complaint?
  • not rather think about what might actually help developers fixing stuff instead of just accusing them?
  • not try to understand (technical, circumstantial) reasons for shortcomings or at least ask for them?
  • not accept that certain things take time to develop, even if it seems a trivial thing to end users?

Justin, don’t get me wrong. But you’re reiterating well known issues. It won’t speed up work on them nor help anyone, including you, deal with them any better.

  • Browser: In the works, reasons for stalling development were discussed at length
  • Phonecall UI: There’s even a topic of it’s own, with Jolla’s UX study made available. Extensively documented, making their rationale clear. Even with open discussion how to improve things
  • Mail client UX situation: Has been explained, too. Although not very discoverable. Consequence of the works on the Browser engine (Gecko)

Also: Why did you not use the Bug category for reporting the issues with e.g. ambience sounds? Then you’ve got a few interesting feature requests / ideas. But they’re lost somewhere in your post

edit:
Links added. Thanks @spark

14 Likes

This! (rozgwi’s answer) Because just liking was not enough.
Links:
browser
phone call UI
mail client UX

3 Likes

moved from ‘Bugs’ to ‘General’ category

2 Likes