The Mer Wiki now uses your Mer user account and password (create account on https://bugs.merproject.org/)


Zephyr

From Mer Wiki
Jump to: navigation, search

(work in progress)

Zephyr is an attempt at creating a stack for use by other projects to be exploring lightweight, high-performance, next-generation UIs based on Mer, Qt5, QML compositor and Wayland. Come to #mer on irc.freenode.net to discuss and participate.

Contents

Reference hardware

  • VirtualBox on X86, with LLVMpipe+Wayland
  • ExoPC, X86 with Intel+Wayland (TBD)
  • Raspberry Pi with QML compositor hardware integration for BRCM (TBD)

OBS projects and architecture

We're hosting on the new Mer community OBS (https://build.merproject.org )

zephyr:devel:mw

Shared middleware for Zephyr based stacks.

  • Lipstick2 (homescreen and compositor framework)

zephyr:devel:ux:breeze

Breeze is a open source, low end, QtQuick1, non-GLESv2 UX based on Zephyr middleware

zephyr:devel:ux:storm

Storm is a open source, QtQuick2, GLESv2 UX based on Zephyr middleware

zephyr:devel:hw

Zephyr-specific hardware adaptation pieces building against Zephyr middleware.

Kickstart files

Can be found through https://github.com/stskeeps/zephyr

zephyr-i586-vm.ks is for VirtualBox

Get Mer Platform_SDK to work with these.

TODO

  • VirtualBox/X86 QML compositor needs to wait properly for input devices and framebuffer devices to appear before launching and sometimes fails to start compositor 3-4 times
  • Get Harmattan QML components working on Qt5
  • Integrate Maliit on Qt5

Architecture

Zephyr is based on the Mer Core. It boots with the help of systemd user sessions. The user session is described in zephyr-session package and it launches the Zephyr compositor (based on example QML compositor from qt-wayland). The Zephyr compositor signals to systemd that it has started and wayland clients can connect to it.

Adaptation: VirtualBox

You can make a 'livecd' image (mic cr livecd -A i686 zephyr-i586-vm.ks in Platform SDK) that you can run on a virtual machine.

You will need to make a virtual machine and run this:

 VBoxManage setextradata "Mer" CustomVideoMode1 "800x480x16"

before starting first time, here "Mer" is the name of your virtual machine. Set this to your desired resolution.

Steps to create Zephyr livecd image (without OpenGL support)

sudo mic cr livecd -A i686 nogl-i586-vm.ks 

This will create iso image.

  • Boot a new VM in virtualbox with iso image, make sure VM is configured to use bridged networking in VirtualBox.
  • VM won't boot into UI, press Host + F2 to get into tty session, login as username=root and password=nemo
  • Grab address of VM using ifconfig -a in virtualbox session, then ssh in using host and execute :
cd /usr/lib/qt5/examples/qtwayland/qwidget-compositor
QT_QPA_EGLFS_DEPTH=16 ./qwidget-compositor -platform linuxfb &
qmlviewer -platform wayland
Personal tools