Hawaii is usable now

Pier Luigi pierluigi.fiorini at gmail.com
Mon Apr 1 07:46:17 PDT 2013


Hawaii is a lightweight desktop environment for Wayland written using
QtQuick 2.x.
One of my goals is to provide shells for different form factors,
although at the moment only the traditional desktop is implemented
(mouse + keyboard).

I'm writing this email to inform you that the Hawaii desktop
environment is now in a usable state and runs on Weston.
It's of course not feature complete, might be buggy and eat your
hamster but it's good enough for the second pre-alpha release of Maui
(www.maui-project.org) that will hit the roads soon.

Building Hawaii is easy and requires both Wayland and Weston (master
branch + a patch for Wayland and another one for Weston) and Qt (dev
branch + some patches for qtbase and qtwayland), checkout the
following module and read the instructions contained in README.md:


This repository contains several git submodules and scripts to build
all the software with the right order.

Assuming you will install under the /opt/hawaii prefix, the shell
executable will be installed as
/opt/hawaii/libexec/hawaii-desktop-shell and the Weston plugin will be
installed as /opt/hawaii/lib/weston/hawaii-desktop-shell.so

Remember that you might have Weston installed in a different prefix
(say /usr) and if this is the case it won't probably find
hawaii-desktop-shell.so, a symbolic link should work:

$ cd /usr/lib/weston
$ ln -s /opt/hawaii/lib/weston/hawaii-desktop-shell.so

Wayland patch

To make wayland-server.h C++ friendly you will need this patch:

I mirrored wayland on GitHub and applied the patch on the hawaii branch.
See the repository at https://github.com/plfiorini/wayland

Weston patch

To avoid loading both hawaii-desktop-shell.so and desktop-shell.so you
need this patch:

I just sent it to the list and it's also available on my GitHub mirror
on the hawaii branch.
See the repository at https://github.com/plfiorini/weston

Qt patches

Hawaii needs this patch applied to qtbase:

I constantly rebase it on top of upstream's dev branch in a mirror on GitHub:

  https://github.com/plfiorini/qtbase (hawaii branch).

The qtwayland module needs more patches, here's a list:

 - https://codereview.qt-project.org/#change,46142
 - https://codereview.qt-project.org/#change,52023
 - https://codereview.qt-project.org/#change,52123
 - https://codereview.qt-project.org/#change,52416
 - https://codereview.qt-project.org/#change,52645

These patches are rebased on top of upstream's dev branch on my GitHub mirror:


This GitHub mirror also contains two reverts:

 - https://github.com/plfiorini/qtwayland/commit/3fe0a79aff2cb5ad05095738598690a3ce2e946c
 - https://github.com/plfiorini/qtwayland/commit/f5b6ec8fe9a527aa9a9007967f704a4cb02ad051

Of course the revert is not a proper fix but until a proper fix is
sent upstream this would work.

I mirrored and patched upstream copies of wayland, weston, qtbase and
qtwayland to easily build ArchLinux packages but I will drop the
repositories when everything goes upstream.

That should be all, if you need some help I'm often on IRC. My nick is
plfiorini and you can find me on irc.freenode.net on #maui-project,
#maui-project-it (for Italians), #wayland and #qt-lighthouse (and many
others but these are the channels where I mostly talk in).

Remember I'm GMT+1 (these days GMT+2 :)

Out of the box experience

More information about the wayland-devel mailing list