52
Kritika Purohit 3 rd Sem CSC Sailfish Operating System

Sailfish operating system

Embed Size (px)

Citation preview

Sailfish Operating System

Kritika Purohit 3rd Sem CSCSailfish Operating System

1

OutlineIntroduction of Sailfish Operating system History and Development Architecture of Sailfish OS Design Comparison with Other Operating Systems Applications OS Development Status Develop Summary References

SAILFISH OS2

2

Introduction

Jolla is an Independent Designer, Developer and Vender of various mobile devices. In Finnish it is pronounced as YollaJolla Headquarter is in Helsinki, Finland. Jolla was formed in October 2011 by some of the developers of NOKIA and it went public on 6th July 2012, announcing its intension to develop new Smartphones which utilized gesture-oriented user interface. They named their Operating System as SAILFISH.Sailfish is a Linux-Based General purpose operating system.

SAILFISH OS3

Mer Project

SAILFISH OS4

History and DevelopmentThe operating system 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. Sailfish 2.0 is currently in development for mobile and the announced Jolla Tablet .It 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.

SAILFISH OS5

Cont.The main elements for Sailfish 2.0- 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 Strong Privacy and Personalized features Enhance user interface SAILFISH OS6

Architecture of Sailfish OS

SAILFISH OS7

Mer is an open, mobile- optimized, core distribution aimed at device manufacturers; powered by Qt/QML and HTML5 - openly developed, inclusive, and meritocratically governed. They have some clear goals:- Openly developed with transparency built into the fabric of the project- Provide a mobile device oriented architecture- Primary customers are device vendors - not end-users.- Have structure, processes and tools to make life easy for device manufacturers- Support innovation in the mobile OS space- Inclusive of projects and technologies (eg. MeeGo/Tizen/Qt/EFL/HTML5)- Governed as a meritocracy

SAILFISH OS8

SAILFISH OS9

Sailfish operating system is built like a classic Linux distribution. The core of the OS is based on theMer Project, an open, mobile-optimized , core distribution. The signature Sailfish UI has been developed by Jolla using QML, a powerful user experience design language provided by Qt framework. The QML language and features give Sailfish OS the ability to provide a rich set of UI elements, to create animated, touch-enabled UIs and lightweight applications. Jolla has created the UI building blocks to build native applications with custom components calledSailfish Silica. Sailfish OS also includes the capability to run Android applications. It is based on Android libraries, ensuring performance comparable to the native environment. With Sailfish using Qt5 and Wayland technology, existing hardware adaptations made for Android can be leveraged, significantly easing the hardware adaptation work required to support the OS. Everything is a package- Sailfish OS is built to require every development detail packaged for ease of maintenance, rangingfrom traditional (multiple) architecture binaries, project documentation to image building scripts, translations, process documentation and changelogs auto generated from git. Modular system- Sailfish OS and integration is designed to be modular by nature and easily support multiple hardware targets. Third party components are maintained separately as features and are plugged-in into the core OS. Currently, Sailfish UX is part of the core system, but in due time, it will be separated as well to allow flexibility in building the OS.

SAILFISH OS10

Design User Experience Gesture Design Principles Navigation Architecture App IconsSAILFISH OS11

User Experience Logic, Consistency and Intuitive Movement Multitasking on Sailfish OS shows all our running apps conveniently in one single view. At a glance, well see everything thats going on, as well as easily switch between apps. We can also control Sailfish OS apps directly from the multitasking view for example, change our music or play and pause our video stream without opening the app in full. Sailfish OS works with our natural hand movements via gestures. We dont have to push tiny buttons or search our way back home everything is always under our thumb.Sailfish gestures soon become muscle memory and every touch-point a fluid, simple, faster task. It changes the way people interact with their devices. All about gestures, user interactions, the UI framework and moreThis guide provides information and support on how to create a stunning user experience for our Sailfish applications.

SAILFISH OS12

Gestures Tap- The most basic gesture with touch screen is Tap. When we briefly touch the screen on top of an object, the default action of an object is performed. Double Tap- In sailfish os Double Tap is used to wake up the device when the display is off. In apps it is used for zooming in addition to pinch to zoom gesture. Edge Swipe- Getting back to home, as well as accessing App Grid and top menu rely on edge swipes. Edge swipe from top brings up the top menu. 1. When we are within an application, edge swipe from right (or left) takes us back to home, where we can see our minimized applications. 2. we can also take a peek at home by starting an edge swipe and then, without lifting our finger reversing the swipe back to edge. This way we dont need to actually leave the application for checking system status or updated information on application covers. Edge swipe from bottom always open an App Grid. SAILFISH OS13

Gesture for Navigation and ActionsIn sailfish os there are also more gestures than just edge swipe. Following gestures are mainly used for navigating inside apps or accessing actions which are not necessarily directly visible in UI.SAILFISH OS14

Design Principle Effortless Interaction - Interaction is effortless even in hectic mobile environment. The core interactions are based on simple gesture, supported by visual, tactile and audio feedback. True Multitasking- It allows us to quickly and seamlessly move around running applications. This keeps us up to date, enables us to fetch and play content and get something done even after pushing the application away from the foreground. Reflect Our Ambiance- In sailfish personal style and cooperation with brands are valued. The easy tailoring of user experience enables user to create truly individual device, reflecting their personal style and ambiance. All Screen Estate is Ours- For the user, Content is one of the most important parts of the user experience. In sailfish UI, the static screen estate reserved by the OS is reduced to an absolute minimum letting the user content shine. SAILFISH OS15

Simply Beautiful- Sailfish designs are simple, beautiful and uncluttered. Content is presented clearly, text is legible, animations, haptics and sounds follow an overall theme and support user interactions.

Logical- Sailfish designs are logical and consistent. Consistent means here that similar interaction flows and visuals are reused for similar tasks.

Magical- Instead of just doing something different, the intension behind sailfish is always improve, innovate and create magical design.

Integrated Services- Sailfish features framework that enables a deep integration of services. Users can access service related content and options during their core tasks instead of opening and closing a set of dedicated applications.

SAILFISH OS16

Navigation Architecture

On a mobile device, its crucial to break down complexity into a sensible and understandable form. Sailfish OS apps use pages to form a simple hierarchy thats compatible with common content and application types. Special care went into harmonizing how horizontal touch gestures are used by applications. This saves development time and make it easier for new users to get up to speed with the app.SAILFISH OS17

Application Pages When opening a new application page, it stacks up with its parent. Moving application page horizontally, user can navigate back to the previous page. When a singlepage is not enough, we can use an attached page. Its another page thats appended to the page stack, after the current one. We can access it moving the current page to the opposite direction (next page, instead previous one). If we are porting an app to Sailfish OS, we can use attached page as a replacement for the Hamburger/basement menu or different sidebars.SAILFISH OS18

Pulley MenuA pulley menu is an interactive extension of apage. It can be placed at the top or bottom of a page, and when user moves the content, the pulley menu is revealed. This pattern frees user from the need to reach a certain part of the screen to tap a touch target. Using a pulley menu depends of the distance between press and release coordinates alone. Keeping the number of menu options below five guarantees that the app works also in landscape orientation.SAILFISH OS19

dialogsWhen we need user confirmation to a functionality, use a dialog page. It uses the page stack gestures to cancel or accept the dialog. User will go back to cancel, or forward to accept the changes presented in the dialog. Dialog page has a distinctive header to separate it from a traditional page. User is taken back to the parent page, after interacting with a dialog.SAILFISH OS20

Apps icons

SAILFISH OS21

Comparison with Other OS- Sailfish OS vs Ubuntu Touch Sailfish OS vs Tizen OS Sailfish OS vs BB10 (Blackberry 10) Sailfish OS vs Android Sailfish OS vs iOS Sailfish OS vs Windows

SAILFISH OS22

Sailfish OS vs Ubuntu Touch

SAILFISH OS23

Sailfish OS vs Ubuntu TouchSailfish over Ubuntu More user friendly UI More lightweight than Ubuntu on slower devices Much more applications available before launch More simple to useTrue MultitaskingUbuntu over sailfish Some individuals like the complex UI In some design queues its more modern looking than other In many ways its more OrganizedIts more known to Linux enthusiasts due to its name

SAILFISH OS24

Sailfish OS vs Tizen OS

SAILFISH OS25

Sailfish OS vs Tizen OSSailfish over Tizen More Modern , gesture based UI Much more smoother with a normal hardwareHas more applications due to Android compatibility layer No buttons needed to run the OS

Tizen over sailfish Two very big companies ( Samsung and Intel ) are behind it It has more history which say its basically older and more time spent on its development. SAILFISH OS26

Sailfish OS vs BB10(Blackberry10)

SAILFISH OS27

Sailfish OS vs BB10(Blackberry10)Sailfish over bb10 More simple gesture Less confusing More organized More user customizable Slightly more innovative design Interactive multitasking More open than BB10 BB10 apps can be easily ported to SailfishBb10 over sailfish More focused on messagingBeing a bit older and having more native apps in comparison The best keyboard everSAILFISH OS28

Sailfish OS vs Android

SAILFISH OS29

Sailfish OS vs AndroidSailfish over android Modern UI True multitasking with no pause on the whilst minimized More user friendly and ease of use Having many of the android apps + sailfish apps More open and truly Linux (not Linux based) Usage of simple gestures everywhere No buttons needed More lightweightAndroid over sailfish Many native apps already available for it More customizable via custom ROMs Wise choice of hardware for it from different companiesMore known to the publicSAILFISH OS30

Sailfish OS vs iOS

SAILFISH OS31

Sailfish OS vs iOSSailfish over iOS Fully gesture based with no home button Fully open source, to allow the user do whatever they want More up-to-date and modern UI True multitasking with no pausing the app in backgroundIOS over sailfish More users at the moment Being the starter of this game Vast amount of native apps available for it Great support of Apple Company behind it Lots of developers are interested in developing apps for iOSSAILFISH OS32

Sailfish OS vs Windows

SAILFISH OS33

Sailfish OS vs WindowsSailfish over windows Heavily gesture based UI No buttons for the back or home Wider support of hardware Open source Simpler, better and more modern UI True Multitasking Even before launch it has more apps than WP Much more unlimited SDK for developers to play withWindows over sailfish Windows phone dont have any specialty over sailfish OS. The only feature Windows phone have live tiles so the Sailfish multitasking cards are live and being updated every time and they change their appearance time-wiseSAILFISH OS34

ApplicationsAcer Iconia Tab W500 Google Nexus 4 Google Nexus 7 HP Mini Nokia N950 and Nokia N9 HTC Desire HD and HTC Desire Z Samsung Galaxy S3 and Samsung Galaxy Nexus Xiaomi Mi2 One Plus OneSony Ericson Xperia Pro

SAILFISH OS35

Jolla and Intex are launching a new device with latest Sailfish OS called AQUA FISH in November 2015SAILFISH OS36

OS Development StatusSailfish OS has three naming conventions- Version number Update number Version name Each Sailfish OS version is named after a Finnish Lake. SAILFISH OS37

SAILFISH OS38Software versionRelease dateNamev1.0.0.5(Initial release)27 November 2013Kaajanlampiv1.0.1.109 December 2013Update 1, Laadunjrviv1.0.1.1216 December 2013v1.0.2.527 December 2013Update 2, Maadajvriv1.0.3.831 January 2014Update 3, Naamankajrviv1.0.4.2017 March 2014Update 4, Ohijrviv1.0.5.1611 April 2014Update 5, Paarlampiv1.0.5.1924 April 2014v1.0.6.xN/AUpdate 6 was merged into Update7v1.0.7.169 June 2014Update 7, Saapunkiv1.0.8.1914 July 2014Update 8, Tahkalampi v1.0.8.216 October 2014

SAILFISH OS39v1.1.0.38(Opt-in update)23 October 2014Update 9, Uitukka v1.1.0.39(Opt-in update)24 October 2014v1.1.1.2618 December 2014Update 10, Vaarainjrviv1.1.1.2719 December 2014v1.1.2.1519 February 2015Update 11, Yliaavanlampiv1.1.2.1625 February 2015v1.1.3.xN/AUpdate 12 was merged into Update 13v1.1.4.2815 April 2015Update 13, ijnpivnjrvi v1.1.4.294 May 2015v1.1.5.xN/AUpdate 14, dropped during Release Candidate phasev1.1.6.278 June 2015Update 15, Aaslakkajrviv1.1.7.2415 July 2015Update 16, Bjrntrsketv1.1.7.2831 August 2015

Sailfish os updates Latest update or version of Sailfish is Sailfish 2.0 New in the Update- New User Interface Android Apps Notes can be shared as text files Media Control on lock screen for native app Support for US English Language in OS Record video of H.264 format This easy access version is launched in September 2015 and the full version will be launched in November 2015 with Intex Aqua Fish device.SAILFISH OS40

Jolla sailfish by the developersSAILFISH OS41

Develop Software Development Kit Hardware Adaption Development Kit Harbour

SAILFISH OS42

Software Development Kit Sailfish OS SDK is a collection of tools for developing Sailfish OS applications. Qt Creator integrated development environment (IDE) Mer build engine for cross compilation The Sailfish OS Emulator Tutorial, Design and API Documentation Repositories for additional libraries and open source codeSAILFISH OS43

Qt Creator- Qt Creator is a cross platform integrated development environment (IDE) tailored to the needs of Qt developers. It has been extended to add support for Sailfish UI application development using Sailfish Silica components. It provides a sophisticated code editor with version control, project and build management system integration.

Mer Build Block- The Mer build engine is a virtual machine (VM) containing the Mer development toolchains and tools. It also includes a Sailfish OS target for building and running Sailfish and QML applications. The target is mounted as a shared folder to allow QtCreator to access the compilation target. Additionally, your home directory is shared and mounted in the VM, thus giving access to your source code for compilation.

Emulator- The emulator is an x86 VM image containing a stripped down version of the target device software. It emulates most of the functions of the target device running Sailfish operating system, such as gestures, task switching and ambience theming.

SAILFISH OS44

Building Blocks- Qt 5- Qt 5 is the latest version of Qt. It enables developers to develop applications with intuitive user interfaces for multiple targets, faster than ever before. Qt 5 makes it easier to address the latest UI paradigm shifts that touch screens and tablets require. Qt Quick 2- Qt Quick2 is next generation of Qt Quick being a high-level UI technology which allows developers and UI designers to work together to create animated, touch-enabled UIs and lightweight applications. Wayland- In current release of Sailfish OS uses Wayland instead of X11 in graphics pipeline giving improved user experience. Sailfish OS is delivered with a fully functional compositor which takes care of window management and outputting graphics to screen. Sailfish Silica- Sailfish Silica is a QML module which provides Sailfish UI components for applications. Their look and feel fits with the Sailfish visual style and behavior and enables unique Sailfish UI application features, such as pulley menus and application covers. Platform APIs- Sailfish OS uses Mer, an openly developed and mobile optimized core, for the majority of its own core components.

SAILFISH OS45

Hardware Adaption development kit Fill the Phone with Sailfish OSWell encounter challenges along the way, as every phone has numerous differences, but our #sailfishos-porters IRC community on Freenode will be there to help. The following porters traits are desired:- Linux Kernel and OS knowledge and development- Fluency inGit, GitHub code-review process- Android Platform SDK- Observed IRCguidelines- That immense desire to have Linux in your pocket! 1. Read 2. Port 3. Chat 4. ReleaseSAILFISH OS46

Harbour Sailfish OS apps- When our app is ready we bring it to the Harbour and Harbour will make sure its working, compatible with Sailfish OS and help us launch it for Jolla device. After that we can follow the development on our dashboard and make any corrections. Submit a new app- SAILFISH OS47

Monitor our app- Monitor downloads, likes, reviews simply and easily! Engaging with our user base is made easy with the Harbour dashboard.SAILFISH OS48

Summary

SAILFISH OS49

References www.sailfishos.org www.wikipedia.org www.pocket-lint.com www.androidcentral.com

SAILFISH OS50

Query???SAILFISH OS51

SAILFISH OS52 Thank You!!!