Sailfish OS

From Wikipedia, the free encyclopedia
Jump to: navigation, search
Sailfish
Sailfish logo.svg
Developer Jolla
OS family GNU/Linux
Working state Current
Source model Open source with added components of third parties which can be of other licences also.[1][2]
Latest release 1.1.7.24 / July 15, 2015; 47 days ago (2015-07-15)
Marketing target Mobile and general purpose
Package manager RPM Package Manager[3]
Platforms 32-bit ARM and 64-bit x86
Kernel type Monolithic (Linux)
License For end-user the EULA defines used open source and other licences components with a component's origin.[1][2]
Preceded by MeeGo
Official website sailfishos.org
Hackday with Jolla, Mer and Nemo Mobile in September 2012

Sailfish OS is a Linux-based general-purpose operating system, widely known as a mobile operating system combining the Linux kernel for a particular hardware platform use, the open source Mer core middleware, the proprietary UI contributed by Jolla, and other third party components some of which are free software, and others of which are proprietary.[1][2]

Sailfish is being developed by Jolla in permanent cooperation with the Sailfish community (which in open model makes development requests and decides development priorities in voting), the Mer project and its community (open source project contributing middleware for Jolla which also is active Mer project contributor, what assures compatibility of both projects with established standard), corporate members of the Sailfish Alliance and various open community members.

Sailfish is used in the Jolla smartphone, the upcoming Jolla Tablet, and by other licensees.[4]

History and development[edit]

The OS is an evolved continuation of the Linux MeeGo OS previously developed by alliance of Nokia and Intel. The MeeGo legacy is contained in the Mer core in about 80% of its code; the Mer name thus expands to MEego Reconstructed.

Jolla and MERproject.org follow meritocratic government to avoid the mistakes that lead to the MeeGo project's then-unanticipated discontinuation.

Sailfish 2.0 is currently in development for mobiles and the announced Jolla Tablet. Sailfish OS 2.0 is developed with a continuous integration model, with the aim to provide monthly software updates to all Sailfish OS users and development partners. Customers using Sailfish 1.x with any device can upgrade to Sailfish 2.0.

The main elements for Sailfish OS 2.0 include:

  • Technically stronger OS core
  • Improved Android application compatibility
  • Support for Intel architecture, including the Intel Atom x3 processor
  • Design to provide visibility in the UI for digital content providers and to enable OS level integration for mobile commerce
  • Strong multitasking (one of the most important advantage of the OS and declared to be the best one at market)
  • Strong privacy and personalization features
  • Enhanced user interface with new UI/UX features, including simpler swipe access to main functions, enhanced notifications and events views.

Software architecture[edit]

The Sailfish OS and the Sailfish software development kit (SDK) are based on the Linux kernel and Mer.[5][6][7] Sailfish OS includes a multi-tasking graphical shell called "Lipstick" built by Jolla on top of the Wayland display server protocol.[8] Jolla uses free and open-source graphics device drivers but the Hybris library allows use of proprietary graphics device drivers for Android.[9][10] Jolla's stated goal is for Sailfish to be open source eventually.[2][needs update?]

Sailfish OS can run Android applications through a proprietary compatibility layer.[11]

Targeted device classes[edit]

Sailfish is commonly known to be targeted at mobile devices, although like MeeGo previously and as part of its legacy because around 80% of Sailfish code is de facto MeeGo code, Sailfish can be used with any device as it is complete general-purpose Linux OS, for such devices as IVI, navigation, smart TV, desktops and notebooks, yachts, automotive, e-commerce, house goods, measuring and control equipment, intelligent building equipment etc.; See use use of original MeeGo to compare. See the Devices section for devices that run the Sailfish OS.

Sailfish OS SDK[edit]

The Sailfish OS SDK was announced in Helsinki at Slush in 2012, and the alpha was published in February 2013.[12] The SDK, installation and coding tutorials are available for free download from the Sailfish OS website although the overall license is not open source.[1]

Sailfish SDK uses Qt with VirtualBox for development, compiling and emulation purposes, in contrast to simulation method.[citation needed] This technique allows compilation on the Sailfish OS and full testing of developed software in the virtual machine, emulating but not simulating the whole Sailfish OS.[citation needed] The technique also separates development activities and side effects from everything else running on the host particular computer, leaving it undisturbed by developments and tests.[13] According to Jolla, development with Sailfish SDK is development on Sailfish OS itself; there are no differences between developed software appearance and behaviour in the SDK and on a device running Sailfish OS.[citation needed]

The availability of source code to the SDK allows shaping and rebuilding for companies' or developers' specific needs[citation needed], creating a context-specific environment that is set once and needs no preparation when the device is booted. The SDK runs on the operating systems Android, 32- and 64-bit versions of Linux, 64-bit versions of OS X, and Microsoft Windows.[14] It can be used for compiling software for Sailfish OS devices from Linux sources. Its general console/terminal mode follows a commonly used standard. Compatible binaries or libraries can also be used.[citation needed]

Application programming interfaces[edit]

SailfishOS uses open source Qt APIs (Qt 5, QtQuick 2 etc.) and a closed source Sailfish Silica for the UI. Standard Linux APIs are provided by the Mer Core.[15]

Sailfish, Ubuntu and Plasma Active have been cooperating to share common APIs and this, when successful, will make the platforms compatible on the API level.[16]

Software overview[edit]

Public "Early access" for betatesters[edit]

After positive experiences with testing of pushing early updates to a small group of opt-in users for update9 and the connectivity hotfix Jolla has allowed all interested in via "Early access" to try new version of Sailfish OS about 1-2 weeks before official release. It is expected to be useful for developers and technically minded users, and a step towards more community integration into Sailfish release process, including improvement of quality by identifying critical issues which only show up in certain environments or device setups before rolling the update out to the larger crowd. As an added bonus it provides a window for developers to test their applications on new releases.

In the long term it will help Jolla to establish a developer program with early release candidate access for registered developers, and to have more community involvement in platform development. The first detail Jolla is hoping to learn from this is how can gather feedback from a large audience in a reasonable way.

Basic details about the early access update:

  • The early release access is meant primarily for advanced users, and/or developers.
  • To sign up for the program there is a checkbox in the Jolla accounts profile page.
  • Installed early-access release will not be downgraded. The only way to downgrade from early access releases is to do a factory reset after removing the sign up check from your account profile.
  • Early access releases should be considered "stable". Issues found during that period will either be fixed, or added to "known issues" on the release notes
  • Signing up for the early access releases will not void warranty [17]

Version history[edit]

SailfishOS has three naming conventions: version number, update number and version name. Each Sailfish OS version is named after a Finnish lake.[18]

Software version Release date Name
v1.0.0.5
(Initial release)
27 November 2013 Kaajanlampi[18]
v1.0.1.10 9 December 2013 Update 1, Laadunjärvi[19]
v1.0.1.12 16 December 2013
v1.0.2.5 27 December 2013 Update 2, Maadajävri [sic][20]
v1.0.3.8 31 January 2014 Update 3, Naamankajärvi[21]
v1.0.4.20 17 March 2014 Update 4, Ohijärvi[22]
v1.0.5.16 11 April 2014 Update 5, Paarlampi[23][24]
v1.0.5.19 24 April 2014
v1.0.6.x N/A Update 6 was merged into Update7[25]
v1.0.7.16 9 June 2014 Update 7, Saapunki[26]
v1.0.8.19 14 July 2014 Update 8, Tahkalampi[27][28]
v1.0.8.21 6 October 2014
v1.1.0.38
(Opt-in update)
23 October 2014 Update 9, Uitukka[29][30]
v1.1.0.39
(Opt-in update)
24 October 2014
v1.1.1.26 18 December 2014 Update 10, Vaarainjärvi[31]
v1.1.1.27 19 December 2014
v1.1.2.15 19 February 2015 Update 11, Yliaavanlampi[32]
v1.1.2.16 25 February 2015
v1.1.3.x N/A Update 12 was merged into Update 13[33]
v1.1.4.28 15 April 2015 Update 13, Äijänpäivänjärvi[33][34]
v1.1.4.29 4 May 2015
v1.1.5.x N/A Update 14, dropped during Release Candidate phase[35]
v1.1.6.27 8 June 2015 Update 15, Aaslakkajärvi[35]
v1.1.7.24 15 July 2015 Update 16, Björnträsket[36]

For readers not speaking Finnish it might be difficult to remember the Finnish words. It might be helpful to note that the names start in the order of the Finnish alphabet. R, Å, and Ö are skipped with updates 6, 12, and 14.

Porting[edit]

Sailfish is able to run most applications that were originally developed for Android, in addition to native Sailfish applications. This was done in collaboration with the creators of Alien Dalvik, Myriad Group.[37] As Sailfish OS is a GNU/Linux-based operating system, it is also possible to install other GNU/Linux applications on it.

A number of projects successful on other platforms are migrating to become native Sailfish OS applications. This gives abandoned Harmattan or Symbian projects a new life. Porting Qt-written projects may take only a few hours. This process is supported; for this purpose sailfish.org collects and publishes[38] an online compendium of knowledge, links and instructions on:

  • software porting and migration to Sailfish OS
  • similarities and differences between Harmattan and Sailfish
  • guides how to port MeeGo 1.2 Harmattan applications for the Nokia N9 to the Sailfish OS devices
  • porting framework (Qt 4 to Qt 5, SDL 1.2 is SDL 2.0, Debian packaging is RPM packaging)
  • application porting tutorials and examples (QtQuick QML applications, the Flickr application Qt 5, SDL / OpenGL ES applications)
  • Qt Quick Components map to Sailfish Silica.

It gathers and links development resources of different kinds and origins.[38]

Hardware overview[edit]

Advantages of the Mer standard[edit]

Sailfish OS can be used on any hardware with a Linux kernel supported by the Mer core distribution. A list of devices running Sailfish has been created by enthusiasts. Rather than designate a specific reference hardware platform, a VirtualBox implementation with the Sailfish OS SDK is available for development on popular operating systems Linux, OS X and Windows. This VM contains the whole Sailfish OS isolated from local resources to enable comfortable work. This allows evaluating coded or ported software behaviour and performance in future on any real device and safe experimenting de facto on Sailfish OS itself.[citation needed]

Devices running Sailfish OS[edit]

Sailfish runs on the Jolla Tablet and Jolla Phone. It has also been ported [39] to other devices including:

Sailfish runs on the following devices as the OS licensed by its manufacturers including:

OS development status[edit]

Sailfish OS is promoted and supported by the open Sailfish Alliance established in 2011, a group established to unite OEM and ODM manufacturers, chipset providers, operators, application developers and retailers.[64] On 16 August 2012, the user interface was reported to be ready for release. Jolla's CEO Jussi Hurmola stated in a ZDNet interview, " ... Our UI is ready now, we haven't released it yet, we will save it for the product launch and the platform is getting up now so the project looks pretty nice".[65]

The next day, Jolla's CEO Marc Dillon said on social networking website Twitter that the company had reached the first development target. Sailfish was debuted by the Jolla team, including a worldwide internet stream, as a demo of the OS, and the UI and SDK during the Slush event in Helsinki, Finland, on 21–22 November 2012. The alpha stage of Sailfish OS SDK was published at the end of February 2013 and was made available for free download.

On 16 September 2013, Jolla announced that its OS had been made compatible with Android applications and hardware.[66] The first telephone to use it was launched on 27 November 2013 at a pop-up DNA Kauppa shop in Helsinki. The first 450 telephones were sold at this event, while the rest of the preordered devices were shipped shortly after.[67]

On 18 May 2015, it was announced that the Russian government intends to make it official for use in its country.[68]

See also[edit]

References[edit]

  1. ^ a b c d "Sailfish End User License Agreement". Jolla. Retrieved 30 November 2014. 
  2. ^ a b c d "Sailfish License Information". Jolla. Archived from the original on 1 January 2015. 
  3. ^ "Packaging Applications for Distribution". SailfishOS.org. SailfishOS.org. Retrieved 24 February 2014. 
  4. ^ Chief Editor at JollaTides. "Editorial: #Jolla Chairman, Antii Saarnio Is Open To Nokia Collaboration". www.jollatides.com. JollaTides. Retrieved 22 November 2014. 
  5. ^ "SailfishOS.org". 
  6. ^ "What is Sailfish OS? 5 Things to Know". 
  7. ^ "SailfishOS.org". 
  8. ^ Holwerda, Thom (30 January 2014). "From Providence to Lahaina: the Jolla review". Retrieved 21 April 2014. 
  9. ^ "Jolla Brings Wayland Atop Android GPU Drivers". 
  10. ^ "SailfishOS.org". 
  11. ^ "Jolla OS Will Run Android Apps Says CEO Jussi Hurmola". 2012-08-20. 
  12. ^ "Sailfish OS SDK Alpha released". Tizen Experts. Retrieved 21 February 2015. 
  13. ^ "Developer FAQ". Retrieved 23 March 2015. 
  14. ^ "SDK Installation - sailfishos.org". Retrieved 20 February 2015. 
  15. ^ "Software Development Kit". SailfishOS. Retrieved 21 February 2015. 
  16. ^ "[Qt-components] QML component APIs and techniques". Retrieved 20 February 2015. 
  17. ^ Wachter, Bernd (Aard). "[Official announcement] Early access to SailfishOS releases". https://together.jolla.com. https://together.jolla.com. Retrieved 28 August 2015. 
  18. ^ a b Suomalainen, Aleksi (28 November 2013). "Jolla system updates will be named after a Finnish lake". The Jolla Blog. Retrieved 24 April 2014. [unreliable source?]
  19. ^ Wachter, Bernd (9 December 2013). "[SailfishDevel] [Update] Changelog for SailfishOS update 1 (1.0.1.10)". devel (Mailing list). Retrieved 24 April 2014. 
  20. ^ Wachter, Bernd (27 December 2014). "[Release notes] Software version 1.0.2.5, Maadajävri". Jolla. Retrieved 24 April 2014. 
  21. ^ Wachter, Bernd (31 January 2014). "[Release notes] Software version 1.0.3.8, Naamankajärvi". Jolla. Retrieved 24 April 2014. 
  22. ^ bijjal (17 March 2014). "[Release notes] Software version 1.0.4.20, Ohijärvi". Jolla. Retrieved 24 April 2014. 
  23. ^ bijjal (11 April 2014). "[Release notes] Software version 1.0.5.16, Paarlampi". Jolla. Retrieved 24 April 2014. 
  24. ^ Wachter, Bernd (24 April 2014). "[hotfix] MMS changes for Paarlampi (1.0.5.19)". Jolla. Retrieved 24 April 2014. 
  25. ^ Bijjal, Soumya (22 May 2014). "[Official announcement] Next OS update in early June". Jolla. Retrieved 22 May 2014. 
  26. ^ bijjal (9 June 2014). "[Release notes] Software version 1.0.7.16, Saapunki". Jolla. Retrieved 9 June 2014. 
  27. ^ bijjal (14 July 2014). "[Release notes] Software version 1.0.8.19, Tahkalampi". Jolla. Retrieved 14 July 2014. 
  28. ^ bijjal (6 October 2014). "[Release Notes] Security Hotfix for Tahkalampi 1.0.8.21". Jolla. Retrieved 6 October 2014. 
  29. ^ bijjal (23 October 2014). "[Release notes] Software version 1.1.0.38, Uitakka". Jolla. Retrieved 24 October 2014. 
  30. ^ bijjal (24 October 2014). "[Release Notes] Hotfix for opt-in Update9, version 1.1.0.39". Jolla. Retrieved 3 November 2014. 
  31. ^ bijjal (18 December 2014). "[Release notes] Software version 1.1.1.26, Vaarainjärvi". Jolla. Retrieved 18 December 2014. 
  32. ^ Bijjal, Soumya (13 February 2015). "[SailfishDevel] Update on SailfishOS roadmap". Retrieved 13 February 2015. 
  33. ^ a b Wachter, Bernd (16 April 2015). "[release notes] 1.1.4 / Äijänpäivänjärvi, early access". Jolla. Retrieved 16 April 2015. 
  34. ^ Dillon, Marc (19 March 2015). "Jolla iteration 3: finalizing the first Jolla Tablet demo". Retrieved 19 March 2015. 
  35. ^ a b "[release notes] 1.1.6 / Aaslakkajärvi, early access". Jolla. 8 June 2015. Retrieved 14 June 2015. 
  36. ^ "[release notes] 1.1.7 / Björnträsket". Jolla. 15 July 2015. Retrieved 15 July 2015. 
  37. ^ McAllister, Neil (2013-11-15). "Jolla's Android-aping Sailfish OS smartphones to land in November". The Register (Situation Publishing). Retrieved 16 November 2013. 
  38. ^ a b "Porting/Hartmattan - SailfishOS". Archived from the original on 6 October 2014. Retrieved 2 May 2015. 
  39. ^ merproject.org community, Sledge. "Adaptations/libhybris". https://wiki.merproject.org/wiki. merproject.org. Retrieved 28 August 2015. 
  40. ^ Sfiet_Konstantin. "Sailfish on an Acer Iconia tab W500". vimeo.com. Vimeo.com DMCA. Retrieved 21 April 2013. 
  41. ^ vgrade100. "Sailfish on Exopc #merproject". youtube.com. vgrade100. Retrieved 21 April 2013. 
  42. ^ vgrade100. "SailfishOS for Android on Nexus One". youtube.com. vgrade100. Retrieved 25 May 2014. 
  43. ^ Eilimö, Jonne. "Video: Sailfish OS running on a Google Nexus 4". Retrieved 23 January 2013. 
  44. ^ -, nick: carepack. "[ROM][19Jun][GNU/Linux] Sailfish OS 1.1.6.27 (community port)". http://forum.xda-developers.com. xda-developers.com. Retrieved 28 August 2015. 
  45. ^ vgrade100. "SailfishOS for Android on Nexus 5". youtube.com. vgrade100. Retrieved 25 May 2014. 
  46. ^ merproject.org community, Siteshwar. "Adaptations/libhybris/Install SailfishOS for hammerhead". https://wiki.merproject.org/wiki. merproject.org. Retrieved 28 August 2015. 
  47. ^ Carlos_Gong (产品观察家). "Retrieved 15 July 2013". Geekpark.net. Retrieved 7 August 2013. 
  48. ^ Junnuvi, merproject.org community. "Adaptations/libhybris/Install SailfishOS for grouper". https://wiki.merproject.org/wiki. merproject.org. Retrieved 28 August 2015. 
  49. ^ a b "Sailfish". Mer Wiki. Retrieved 19 November 2013. 
  50. ^ Pigg, Adam. "Adam Pigg on Twitter: "#sailfish on the HTC Desire HD! @JollaHQ @lbt_ @vgrade http://t.co/xVWSlquHLA"". Adam Pigg. Retrieved 5 September 2014. 
  51. ^ "Sailfish for the HTC Desire HD". http://forum.xda-developers.com/htc-desire-hd/development/sailfish-htc-desire-hd-t2882123. xda-developers.com. Retrieved 28 August 2015. 
  52. ^ Leleiva, Simonas. "First #hwkbd phone #DesireZ! Fancy porting mobile #Linux? Waiting for #Jolla in your country? http://bit.ly/port-news". Simonas Leleiva. Retrieved 23 September 2014. 
  53. ^ vgrade100. "Sailfishos running on O2 Joggler. Modesetting xorg driver on gma500_gfx kernal driver with mesa-llvm". youtube.com. vgrade100. Retrieved 21 April 2013. 
  54. ^ vgrade100. "SailfishOS pre-alpha1 on #oneplus one". youtube.com. vgrade100. Retrieved 22 March 2015. 
  55. ^ Locusf. "Installation". SailPi Run Sailfish OS on your Rasberry Pi. Locusf. Retrieved 26 February 2015. 
  56. ^ "Sailfish on a Raspberry Pi". together.jolla.com. Jolla. Retrieved 26 February 2015. 
  57. ^ a b "Sailfish OS su Nexus 4, Samsung Galaxy S3 e Xiaomi Mi2 - MWC 2014". YouTube. Retrieved 21 March 2014. 
  58. ^ Pegoraro, Ilan. "Sailfish OS Port for Samsung Galaxy S3". http://impegoraro.github.io. http://impegoraro.github.io. Retrieved 28 August 2015. 
  59. ^ beidi. "[August 3rd]SailfishOS for Galaxy Nexus (Alpha)". Retrieved 15 October 2014. 
  60. ^ Deordiev, Igor. "Sailfish OS boot-up on Samsung Galaxy Nexus (i9250)". Retrieved 15 October 2014. 
  61. ^ merproject.org community, Mugna. "Adaptations/libhybris/Install SailfishOS for maguro". https://wiki.merproject.org/wiki. merproject.org. Retrieved 28 August 2015. 
  62. ^ Ruoho, Simo. "Install Sailfish OS on Sony Ericsson Xperia Pro [How-to] Renew an old Android Phone with a new operating system". http://reviewjolla.blogspot.de. Simo Ruoho. Retrieved 10 August 2015. 
  63. ^ -, merproject.org community. "Adaptations/libhybris/Install SailfishOS for huashan". https://wiki.merproject.org/wiki/Adaptations/libhybris. merproject.org. Retrieved 28 August 2015. 
  64. ^ "Jolla". Retrieved 19 November 2013. 
  65. ^ Tung, Liam. "Jolla's MeeGo UI is ready to go - and it's on the hunt for mobile talent". ZDNet.com. 2012 CBS Interactive. Retrieved 16 August 2012. 
  66. ^ Bhushan, Amarendra. "Jolla Sailfish OS Now Supports Android Hardware And Applications". CEOWORLD Magazine. Retrieved 16 September 2013. 
  67. ^ "First Jolla Phone with Sailfish OS to launch on November 27th". 
  68. ^ Carrillo, Gabriel. "Russia Launches Its Own Phone Operating System". Phone Tips. Gabriel Carrillo. Retrieved May 20, 2015. 

External links[edit]