[SailfishDevel] Update on SailfishOS roadmap

Soumya Bijjal soumya.bijjal at jollamobile.com
Fri Jan 16 13:03:58 UTC 2015


Hi all,

We are keen to share our plans with you after our iteration planning day 
this week. This turns out to be quite a long post, but should provide a 
good overview on whats cooking.

2015 will see Sailfish OS evolve towards a display resolution and form 
factor independent operating system capable of running on a range of 
devices. It will also bring a renewed Sailfish UI. We plan to demo this 
evolution at the Mobile World Congress in March.

We have now started to work full speed on the new UI framework changes 
and are currently in the prototyping phase. Our main driver is to 
introduce changes that
1. enhance user experience on both the phone and tablet
2. strengthen the OS core
3. simplify implementation for a better managed code base

Here is a list of things we are trying out w.r.t the new UI framework:
* improved notifications system
* richer Events View with more widgets and actions
* separating lock screen from the home screen for simplified UX and 
technical architecture
* home screen interaction improvements with revamped navigation hierarchy

We have progressed quite well in the direction of Sailfish UI 
scalability already, for example we have the following implemented in 
our internal development branch:
* scalable icons
* home screen and application layouts take physical display dimensions 
into account, for example larger displays are able to show more content
* display-size optimised graphical effects

During this month we'll continue adapting ambience wallpapers to 
different display sizes and aspect ratios.

Our next big UI task is to enable landscape mode in apps, system 
dialogs, active covers, and optimise the design for the best use of the 
additional space.

On the platform level, in this iteration we are working towards the 
following goals:

* System update improvements (will be utilised for update 12 onward):
	- run btrfs balance operation before installing OS update - Part of 
https://together.jolla.com/question/66595/request-automaticbackground-btrfs-balance-defrag-type-cleaning-of-filesystem/
	- enablers to allow factory reset operation to reset the OS to the 
latest available public version instead of the age old factory image
provide an API to check the system update size
	- enablers to allow store client to handle downloading the OS update in 
the background without interfering with the user
	- upgrade to using latest upstream versions of libzypp and zypper to 
get new features (to allow us to later take them into use, namely better 
pattern support and conflict calculations)

* Adaptation work for the tablet:
	- make Jolla tablet turn on promptly and give understandable 
progress/status information
	- design and implement filesystem layout
	- check power management functionality on the tablet
	- bring bluetooth related fixes to tablet kernel
Sensor detection, USB and camera adaptation
	- check stereo speakers functionality
	- check iphb wakeups functionality on the tablet
	- ensure USB charging works
	
* adapt middleware to modemless device i.e. tablet
* work towards Pulseaudio 6.0
* drop upower in favour of statefs - this has been in plans for a while 
and we are now on it as fixing issues on upower is not the best use of 
our efforts
* dual-stack implementation (ipv4 and ipv6) for cellular connectivity
* prototyping excrypted filesystem
* research SELinux as a solution for system security and application 
access control
* toolchain updates - we are working towards upgrading to GCC 4.8, 
binutils 2.25, switch to Thumb2+NEON for ARM by default, march=i686 and 
SSE2 minimum for X86

* Performance improvements:
	- continue to analyze memory usage and chopping off bits wherever possible
	- work on a benchmarking tool to measure progress <- this may not 
happen (yet or completely) due to priority shifts
	- continue work on the QML engine and forking to save memory

As you may notice, there is lots to do in the lower levels and 
middleware to take the OS to the next stage. Nevertheless, we are keen 
to continue provide new features where and when bandwidth permits. In 
the next update we intend to release:
* renewed browser UI - simplified tab view, search for word on webpage, 
user friendly toolbar and URL field - 
https://together.jolla.com/question/4197/search-in-browser/
* weather info integration to events view (Foreca) - 
https://together.jolla.com/question/1967/weather-application/
* option to customise the highlight color of your favourite ambience in 
ambience settings (in Gallery app)
* notification to the user if there is insufficient disk space (< 500MB) 
while attempting to upgrade the OS
* allow editing of mobile data setting always (currently if the device 
is in roaming and data roaming is set to "Do not allow", mobile data 
settings are disabled)
In the spirit of supporting the community TOHkbd project, we have also 
implemented keyboard slide policy that will guide the display 
(un)blanking behaviour when sliding the hardware keyboard in/out.

During this month, we have planned to work on the following features:
* private browsing 
https://together.jolla.com/question/1821/private-mode-in-web-browser/
* lock screen media player controls 
https://together.jolla.com/question/3414/control-music-from-the-lock-screen/
* enable USB tethering in the UI 
https://together.jolla.com/question/3798/usb-tethering/
* IMAP idle/push support 
https://together.jolla.com/question/493/imap-idle-imap-push-for-the-e-mail-app/

Not to mention that bug fixing is part of our daily work and will carry 
on in parallel with all of the above activities. Sailfish OS updates 
will continue to be delivered frequently.

Due to the nature of the tasks at hand, the gap between releases may 
vary. It does not imply that we are intentionally slowing down -- on the 
contrary, we are ramping up with extreme dedication in the next few 
months to deliver a scalable, refreshed and coherent platform, requiring 
time and focus to make things right. In order to better support our 
goals, our internal QA setup has been further enhanced to allow working 
on multiple releases in parallel and keep release instances longer for 
possible updates at a later point in time.

In a nutshell, we are excited to work towards the new horizon and will 
continue to share our progress with you. Cheers!

-Soumya


More information about the Devel mailing list