At KDE, we take licensing of our software very seriously. In order to make licensing code more straight-forward for developers, and easier to evaluate for third parties, we’ve created the licensing policy which can be found on Techbase. With this tool, we provide guidelines for developers which licenses to choose for their code, so that it matches pieces of software that it is shipped alongside with. It also provides insight for those who would like to distribute KDE software to get an idea how our software is structured, license-wise.
There’s another, not too widely known tool we created a few years ago: The Fiduciary License Agreement, or in short FLA. The FLA is a tool that reduces the headache and work for us in case in the future a license used by us need a change. The FLA is a tool to make this process easier, especially in cases where it would otherwise be impossible (imagine the death of a developer, as an example).
The FLA is simply a mechanism that allows the KDE e.V., as steward of the KDE community, to relicense a piece of code in case the original developer cannot do that anymore. Within this process, the KDE e.V. is bound by strict rules. First of all, it has to act within its mission, which is (paraphrased) to do good for KDE and Free software. If you’re interested in a more complete explanation of this, I’d suggest to read Carlo Piana’s article about it.
Signing the FLA is not mandatory for contributing to KDE, but it does make it easier to deal with unforeseen problems, and thus it can save someone in the future a lot of headaches. (Hopefully, for different reasons, we’ll never run into this case, but you never know.) Even if it’s not mandatory, it’s is, as I explained still a very good idea to sign the FLA. If you care about KDE’s future, please consider doing this. You can download the FLA document on ev.kde.org, and send it to our office in Berlin (address is one the same website). You might recall that I’ve written about this topic earlier — so if those guys sign it, you should, too! :-)
Two weeks ago, we had an exciting parcel arrive in the KDE e.V. office, originating from KDAB. KDAB is a software consultancy, which employs many talented KDE hackers, who still contribute to KDE, either in their Free time, or in time alotted by KDAB. The parcel contained FLAs from many KDE contributors who work for KDAB, and KDAB has organised a batch-signing of those FLAs. Obviously, we’re very happy to see this happen, as it future-proofs KDE’s licensing significantly.
Dived Japanese Garden and White Rock yesterday, after refreshing my Scuba diving skills. I’m doing that at New Heaven Diving on Koh Tao, Thailand, a smallness diving operation who do a lot of work in marine life conservancy. I really dig their regular reef cleanup efforts, and their mission to turn more diving schools into marine life conservancy agents. In the process of experiencing the fantastic underwater world, it gives a lot of background to environmental (and underlying socio-economical) problems.
Among yesterday’s highlights were a blue-spotted stingray, porcupine fish, trigger fish, various scorpionfish and thousands of other cute and sometimes curious sea creatures.
I’ve also started using my underwater camera with so far very promising results. I need to work a bit on handling of the cam, but over the course of today’s photos, I am quite thrilled of the results after about just one hour of diving with it. As I didn’t bring my laptop or tablet, uploading those will have to wait until I’m back home in early March — until then some impressions from my phone camera will have to suffice.
Plasma Active‘s goal is develop an elegant, Free user experience for the device spectrum, for example touch-based tablets. Active Settings is a modular application hosting configuration user interfaces for apps and the system.
With Plasma Active Two, we released a first version of Active Settings, an app that lets you configure a few key parts of your system, such as time settings, and options for web browsing. Plasma Active Two contains a first stable, but still fairly bare-bones release, with only two modules.
Active Settings provides a one-stop shop for app and system settings, and an interface for developer to ship settings user interfaces with their applications, or extend Active Settings with custom, or vendor-specific modules. Active Settings is a shell that loads, and displays a number of modules, in order to add a module, the app doesn’t need any code changes. This is done using KDE’s plugin system and Plasma packages.
Embeddings settings modules
In order to achieve a higher degree of consistency, settings modules can be loaded both from the settings app, and directly inside applications. This is done using a new set of QML bindings, which provide a settings loader item. This item is designed to lazy-load the settings plugin, so you can avoid touching config files, or loading a complex UI on startup and rather do it when the UI is needed, keeping startup times of your app low.
In the screenshots, you can see the web browser module running in the settings app. I’ve also integrated the settings dialog into the dashboard of the web browser, so you can easily change things while browsing. Settings are synchronized across applications.
Workflow and design
Active Settings modules get loaded into the settings app. Often you will find that embedding these pieces of UI into your app makes the workflow more natural, as it puts things into context, which means you don’t have to switch to another app to change settings, both is possible. One of the reasons we want to share this code between apps and the general settings app is to present a more consistent UI. Along with the work on the guts of Active Settings, Thomas Pfeiffer has started to work on a HIG, human interface guidelines for designing settings dialogs. These guidelines complement the implementation nicely, and will make it easier for developers to write apps that feel naturally integrated into the system. One thing we’re implementing in Active is instant apply of settings, so you’ll only find those “apply” buttons very rarely (we’re still discussing a few corner cases). Active Settings uses the new Plasma QML Components, providing a standard implementation of the Qt Components API. Plasma Components can appear in different variations, in Active we default to the touch-friendly components. This of course makes it easier to share settings dialogs across devices, as we can provide standard widgets optimized for a given input method, screen form factor, etc..
Writing a settings module
We have now made it very easy to write settings plugins. A new set of QML bindings allow loading and embedding dialogs by providing components for the shell and loading of the modules, and a few pre-made bindings for domain-specific settings (time for example). These bindings allow you to ship a Plasma package containing your QML code, data files, images, etc. with your application, and have it available both in the settings app, and also in your own application. You can write pure QML settings modules, and it is very easy to extend your module with C++ code, which is automatically loaded and can export additional functionality to your QML runtime. These plugins are in principle really light-weight with minimal build dependencies (basically QObject, KPluginFactory and kdelibs’ macros for plugins), so deployment is made rather easy. Even if you’re doing a QML-only app, you can still provide a compiled plugin for the settings with it.
The API is designed to be minimal, the plugins can be very light-weight, as they’re basically exporting QObject-deriven classes to the QML runtime. Of course you can go completely wild here. Plasma packages provide a loading mechanisms for “pieces of UI” written in QML. This mechanism makes it very easy to share parts of the UI across different applications. As these packages do not contain compiled code, they’re architecture independent, small and easy to share and deploy. I’ve described the whole process of writing your own Active Settings module on TechBase, so hop over there if you’re interested in more details.
Those familiar with kdelibs’ classes and frameworks such as KControl, System settings, KCModule will not be surprised that much of this architecture has been inspired by these fine shoulders of giants. :)
For some time, I’ve been the more or less proud owner of a Sony Vaio VPC Z12 laptop. It’s quite a nice machine with a Core i5 CPU, a fast SSD and a superb FullHD panel at 13″. Hardware support on Linux hasn’t been great however, so it needed some fiddling to get everything working properly for me. Well, everything I care about at least.Here are some pointers that might help somebody getting things set up.
Since this model has a hybrid graphics setup, essentially two graphics chips, it drains a lot of power in a default Linux setup. As I do not need the fast NVidia graphics most of the time, I switch the chip off (it’s on by default and consumes a good 10W, even when unused). Needless to say, that this vastly improves battery life.
For this to work, you need to install an updates sony-laptop Kernel module, which will also bring a bunch of other useful features. This module is based on Eva Brucherseifer’s work and continued by Norbert Preining (thanks to both for making my laptop a lot better!), you can find its latest version here. I’ll not go into the details of installing and loading the module, I think if you don’t know how to do that, I should probably not enable you to fiddle with your expensive hardware on this level.
After installing the kernel module, add a bunch of options to your grub command line, I have the following:
Let’s look at the interesting option here: speed_stamina: set this option to 0 for intel only (stamina), to 1 for nvidia only (speed), or two 2 if you want to choose automatically. I haven’t figured out the automatic bits, since it needs some user space components and I don’t care a lot about that at the moment. You can find a bunch of pointers on this useful page, if you’re interested in the details. i915.i915_enable_rc6=1: This option enables a few power consumption improvements that are rather critical. If not enabled, certain devices won’t be powered down properly. If you encounter stability problems with this option enabled, try removing it.
With these options, power consumption goes down from 25W to a 15W, making the battery last about two hours longer on the road while saving the world!
Keyboard backlight, etc.
There’s a few annoyances left. Since I’m very much a nightly hacker, the keyboard backlight is a very useful thing to have — yet it doesn’t work out of the box for me. Again, the sony-laptop kernel module relieves me. It has a good bunch of interesting options, most of them nicely documented in its source code ;). By adding a bunch of actions to one of the scripts run at boot (I’m using /etc/rc.d/boot.local), we fix some issues: This enables the keyboard backlight, and sets its timeout to 30 seconds: (use 0 as timeout setting for no timeout, 1 for 30 seconds, 2 for 60 seconds):
If you look into /sys/devices/platform/sony-laptop/, there is a couple of other interesting files in there: als_*: helps you using the ambient light sensor lid_resume_control: Used to control the behaviour when the lid is opened. 0 means do nothing, 1 means resume from hibernate (S4), 2 means resume from Suspend (S3) and 3 means resume from both. touchpad: Allows you to enable and disable the touchpad at runtime
In some cases, the laptop doesn’t switch off its internal speakers when you plug in a headphone (which can lead to rather embarrassing situations in public places, believe me). Switching the output from External speakers to headphone in “pavucontrol” (Pulseaudio’s mixer app) is able to change that, though I’m still looking for a more automatic solution here.
You may find your touchpad to be lacking some features which are rather critical for ergonomic usage, such as two-finger scrolling or tap-to-click not working. By passing a couple of options to the Xorg touchpad driver, we can enable this functionality. Try putting the following into a file /etc/X11/xorg.conf.d/50-synaptics.conf:
This enabled two-finger scolling, tap-to-click, scrolling on the edges and right mouse button triggering when tapping the lower right corner of the touchpad, making your machine much less frustrating to operate.
I hope these pointers make it easier for some owning the same hardware to get the best out of it.
Plasma Active brings a flexible, elegant, activity-driven user experience to a spectrum of devices. This article is part of a series of articles about different perspectives on Plasma Active. This installment looks at the user story, and aims at answering the questions “what does Plasma Active bring me as a user?”, what are the underlying concepts and how do we plan to achieve these goals.
For the user who wants to enjoy the Internet, multimedia and data away from his laptop or desktop, right now choices are rather slim. This means, for example, that you will choose a platform with some sort of critical mass, meaning that your favourite 3rd party apps are available, enough services supported, etc.. A Free software platform has to bring a lot to the table for users: There’s a lot of cool software available, systems such as Plasma Active offer a system without lock-in to a single vendor, but rather being able to take apps across vendors and devices. Plasma Active already comes with a good amount of interesting widgets, new ones are being developed all the time, the development platform is proven to be stable and working in real world use, and it’s easy for 3rd parties to develop and bring support for (even “4th” party) services. Plasma Active extends the Free software ecosystem into user experiences for devices, bringing a critical mass with it.
I personally use Plasma Active almost every day, I prefer the tablet form factor for “light reading”, checking on news, social networks, the blogosphere. For me it’s an ideal “on the couch in the living room” device, although I tend to use it in trains for reading and watching movies as well. With its powerful email client Kontact Touch it allows me quite conveniently read longer email threads. The virtual keyboard works well enough for entering short texts. For longer texts, I usually either plug in a keyboard and put the tablet into a stand, so it feels more like a ‘stationary laptop’.
User experience central
Plasma Active has been designed, from the ground up for the user. Our goal is to create an elegant experience for the user, with as little friction in the UI as possible. The device(s) support the user’s workflow, are ergonomic to use on a given formfactor. The device should get the work done, be fun to use and flexible enough to easily adapt to the user’s wishes and needs. In our development process, this is strongly reflected by the integral role designers play. Usability and interaction engineering is not an afterthought, but the driving force behind the work we do.
Contour, Plasma Active’s primary workspace uses semantic technologies to represent to the user. On a low level, this means that the user deals with photos, persons rather than .jpg files and email addresses. The semantic layer provides the data abstraction, including files, online resources, but also more abstract things such as locations. The Contour shell uses this information, and melds it with smart algorithms into a mapping for the user. The building blocks of this mindmap of the user’s digital life are activities. Activities are easily created, customized and removed, and you can use them go group similar items, bookmarks, widgets, apps, images, music tracks or videos. Activities allow you to organize all the interesting things you encounter while using your device. The Share Like Connect feature allows you to interact with these activities, so instead of generally bookmarking a website, you can also directly connect it to one of your activities and have it neatly organized among the rest of your digital artifacts.
Where are we going?
Plasma Active devices are interconnected and work together well, as they offer similar functionality across a range of devices. In Plasma Active One we’ve delivered the first bits that will lead to this goal: The Contour shell which gives a stronger connection between the user, his data and network and the device. In future releases, we will enhance Contour to provide more handles and “background support” to the user. Share-Like-Connect’s like and share features provides stronger connections to the (social) network, a perfect feature for the Free Culture community, and one of the strong selling points of Free Software (even if for many people outside the “geek crowd” perhaps not consciously). It will also be used to easily share anything across devices, imagine watching photos in a group, moving an interesting article from your desktop onto your tablet to read it on the couch or on the go, showing your friends on Facebook, Google+ and other social networks your preferences.
Plasma Active brings a flexible, elegant, activity-driven user experience to a spectrum of devices. This article is an overview of a series of blog posts I will be publishing over the coming days about different perspectives, or view points to Plasma Active.
As Plasma Active is a new user experience and integrated Free software stack for a range of devices, such as tablets, media centers, smartphones in-vehicle infotainment and $NEXT_POPULAR_FORM_FACTOR (tricorders, communicators, etc.).I will take the opportunity of our first release to explain Plasma Active’s underlying ideas in more detail. A series of blog will each tell the story behind Plasma Active from a different point of view. In the first installment, I’ll shed some light on the app story. We’ll look at Plasma Active’s answer to groupware, office and documents, multimedia and of course the web. In upcoming installments, we will look at Plasma Active’s developer story, its user story, its ODM and hardware story, and possibly more. With each installment, I will update the list below as the articles go online.
Plasma Active brings a flexible, elegant, activity-driven user experience to a spectrum of devices. This article is part of a series of articles about different perspectives on Plasma Active. In the first installment, we look at a number of applications that come with Plasma Active. Kontact Touch, Calligra Active, Bangarang and a collection of Active Apps provide a stable and powerful set of functionality, making Plasma Active suitable for personal and professional use cases.
Email & Groupware: Kontact Touch
In the area of groupware and email, Plasma Active really shines thanks to Kontact Touch, a mature groupware suite designed specifically for touchscreen interfaces. Kontact Touch has all the features already known from its desktop counterpart, among which a vast variety of connectors to groupware servers, among which Exchange and Kolab. For on-the-go use-cases, Kontact Touch’s offline features are a big win, making it easy to catch up on what happened during offline periods. Kontact Touch’s email client performs really well on the underpowered tablet, even for insanely large mailboxes with tens of thousands of emails. Since Kontact Touch’s underlying data cache, Akonadi also feeds its data into the Nepomuk semantic store, all the groupware data is not locked into an application, but naturally available in Contour, becoming part of your activities. Kontact Touch supports strong encryptions methods in an audible, open source code-base, satisfying even highly security- and privacy-aware use cases. There is a number of companies offering commercial support and services around Kontact Touch, and its integration in enterprise infrastructure. Kontact Touch with its touch-friendly ergonomic interface, feature set, scalability, groupware server compatibility and strong contender satisfying unique use-cases for enterprise and institutional use-cases, allowing to organically extend an organisations groupware infrastructure onto new devices.
Office: Calligra Active
Another highlight in Plasma Active is Calligra Active. In Plasma Active One, we ship it as a beta version, with a stable follow-up planned for one of the next releases. The first release of Calligra Active will be a capable, performant document, finger-friendly viewer for tablets that can pan and zoom smoothly and display office documents. Calligra comes with excellent support for OpenDocument and compatibility with many of Microsoft’s office applications such as Word, Excel and Powerpoint. With its capable engine, which is also part of the office suite on Nokia’s N9 and its touch-friendly user experience specifically built around Plasma Active, Calligra Active fills another important role by adding dependable office capabilities to Plasma Active devices. Calligra Active builds on top of Plasma Quick and semantic engine, bringing a seamless UX between your activities and documents.
Web: Active Browser
One of the most important applications on a device is the web browser. For Plasma Active, we have developed a touch-friendly and lean web browser that builds on top of WebKit for HTML rendering, and the kdewebkit integration for cookies, network and SSL, caching and cookie sharing. Some of its features, such as AdBlock could be re-used from the Rekonq project. It uses the bookmarks from Nepomuk and shares these with the Contour shell. Building a customized web browser for Plasma Active ended up being the way to go after we had looked at alternatives, such as making Rekonq touch-friendly, or using Fennec, since the work to adapt these browsers really well would have been too extensive. Designing the browser from the ground up allows us to have it perfectly integrate with the Contour workspace and the rest of the system (such as sharing login credentials with widgets or other apps). While the Active Browser provides already a basic set of features, it is still a first release, that being a central part of Plasma Active will see further improvements. There are many good things we basically get for Free through Qt Webkit, such as 100% ACID compliance, excellent support for CSS, good performance and stability and a lot of “just works” for many websites around. The Active Browser does not manage bookmarks itself. It rather makes the currently open page known to Share Like Connect, so you can bookmark a page from the top panel — or connect it to your activity and thereby collect links on the go. Keeping multiple pages open and organized is aided by the peek area at the top, where you can find open pages belonging to your current activity.
For all your multimedia needs, we have pre-installed a slightly adapted version of Bangarang. Bangarang comes with an elegant interface, it provides a stable and feature-rich media player. Bangarang also uses the Nepomuk semantic layer as underlying data store, so its knowledge blends in with the Contour workspace and other applications and widgets. Additionally, Bangarang supports retrieving meta data from various online sources, and adds this lyrics, information about artists to your movies and music to your media. This data is transparantly available in the Contour shell as well. The Now Playing widget can be used as widget in your actvity as a remote control, for example for skipping a song, pause, play.
Bangarang and the Now Playing widget show nicely, how the Activities in the Contour workspace extend and adapt for different use cases. Media can be controlled directly from the activity (more useful for music) or viewed and managed in a fullscreen app. The data is not locked into a single application, and neither is the user. Like Now Playing, there are hundreds of useful widgets already available, as many of them can be reused from other Plasma workspaces, such as Plasma Netbook or Plasma Desktop. We have pre-selected a number of useful widgets, such as notes, weather, calendar, clocks (Plasma is, after all about clocks!), and a few fun others. In principle, all Plasma widgets are installable also on Plasma Active. On top of that, with Plasma Quick, we’ve made it very easy to create new widgets, or adapt existing ones — more on that in a later episode.
Plasma Active comes with a number of powerful applications. These, roughly fall into three categories: Active apps, touch-friendly apps, and everything else. Since Plasma Active builds on top of a well-known Linux stack, many applications from this “eveything else” group are readily avaiable. Among these a huge number of command-line tools which can be used using the Konsole terminal application which we have adapted for on-screen keyboard input. Traditional desktop applications do run on Plasma Active as well, but they might or might not be suitable (or fun to use) on touchscreens. In our testing, we’ve seen varied success from simple showstoppers (“press space to start”) to flawlessly working and beautiful applications. Especially many games are well-suitable for Plasma Active, some even a lot more fun, such as KDiamond, Blinken, or . (You can tell, I’m not much of a gamer. :-)) Qt and KDE’s refined, system-wide UI settings allow us to take a few general measures, such as ensuring minimal button sizes, suitable text sizes, etc..
As it’s easy to install all kinds of applications, we categorizes applications in categories to make it easier for the user to find high-quality applications. Active Apps are applications that are specifically designed or adapted to run in a Plasma Active environment. They work well on a given formfactor, are stable and functional, blend in well with the rest of the system (visually, but also through things like share like connect) and quality-controlled. Examples for Active Apps are the pre-installed webbbrowser, the image viewer, the news reader and of course Kontact Touch, our powerful groupware solution. Touch-friendly apps are a set of applications we have specifically selected to compensate for functionality we have not yet a Plasma Active app for. These apps might not be super-elegant, but do the job well and fill in important functionality. Konsole and kwrite are good examples here, those have been fixed to work well with an on-screen keyboard. A lot of games fall into the same category, there is a good number that work surprisingly well on a touch-screen (Blinken my four year-old nephew’s favourite, KDiamond is mine).
Third Party applications
Users or device vendors can extend Plasma Actives with more applications. Next to a large number of Free software applications, the Plasma Quick stack allows for development of proprietary applications, as its libaries are available under the LGPL license. This allow vendors to extend Plasma Active with product-specific components, and makes available closed source 3rd party components (such as Flash or Skype) on Plasma Active devices.
Where do we go?
Plasma Active aims at creating a desirable user experience for a spectrum of devices, based on a fully Free software stack, developed in the open. The first release is planned for October. In the following article, you can read about the latest status and recent improvements made.
One our way to our first release (begin of October as it currently looks like), we’re in serious make-it-work mode, crunching bugs left and right and filling in gaps of the workflows we want to suppport in our first release of Plasma Active. As we’re a month away from that, it’s a good point in time to give an update of our progress towards Plasma Active One. So where do we stand today? What has been the progress lately?
My overall impression of the state of Plasma Active is very positive. We’ve made some tremendous progress, and are now at a point where we’re confidently calling it a beta. If we continue at this rate, Plasma Active One will be a very interesting first release, and a lot of fun to use. The basic functionality is in place, the focus is shifting from filling in gaps in the UI towards performance and interaction improvements, and bugfixes. In ten days, we’ll be meeting at the Basyskom offices to finish Plasma Active One, plan the release process and communication bits around it and think about what Plasma Active Two will look like.
Contour, our semantic workspace has seen a number of UI flow improvements, better visual hints and ergonomy enhancements. Switching between activities is much faster now, and it has become easier to add Bookmarks and applications launcher to the Contour activities right now, and a few bugs in the wallpaper handling have been fixed. The top panel now drags a lot smoother. Contour feels solid, performs well and really starts to work nicely for every day use cases. I’ve been starting to use the Activities more actively, it serves as a very useful tool, and brings a very innovative concept to the tablet. Most importantly, it adds real value, while not getting in the way. Mad props to basyskom for working with us on this integral part of Plasma Active. The Contour workspace offers resources such as documents, bookmarks and applications), connected to one Activity. As an Activity, you can think of “Planning a trip”, where you’d collect your ticket receipt, bookmarks of the hotel, your reservation) for example. The Contour shell shows those resources, and you can extend this with Plasma widgets which provide additional information, or small apps inside your activities. Activities also serve as launchpad for apps and the webbrowser. On the left, you find the recommendations panel, which are “magically” (based on real science!) provided by the system based on their relevance to the current context. The recommendations are non-intrusive, but turn out to be quite useful during normal usage.
We’ve integrated a few performance fixes in KWin now. One fix is especially interesting, as Kwin now skips disabled plugins entirely in its frame rendering cycle. This makes a noticable difference on a desktop system, but it really pays off in Plasma Active, where we’re using only a very limited number of effects. We have experimental Balsam packages that use OpenGL-ES for the compositor, which fare nicely in my stability tests. Martin has been making kwin a real winner.
The virtual keyboard now works in more applications, some would not pop up the keyboard when needed, which makes konsole for example pretty tedious to use. Fixes for Kate, Konsole and Calligra have already upstreamed. Getting at the ‘second layer’ of keys in the keyboard is also much easier now, as double tapping shift acts as ‘lock’ here. There’s also a good bunch of performmance improvements in there, so typing also feels more swift. It’s now also possible to quickly move the keyboard to another screen edge, in case it hides interesting information beneath it. Aaron has been bugsquasher No#1 here.
The Active Webbrowser has seen a bunch of improvements which make it a lot more usable and enjoyable. New features include that opening windows is now fixed. I’ve implemented sharing cookies across the whole system (using KDE’s cookiejar), uses KIO for loading (and caching) the page content, remembers passwords and completes your text input from the browser history and your bookmarks. KDEWebKit makes all this very easy. Marco fixed Flash support, so watching youtube on your Plasma Active tablet is now possible as well, in that area we’ve successfully surpassed the iPad. ;-) I’ve borrowed the Adblock implementation from Rekonq, so the browsing experience a lot cleaner now, which is especially important on mobile devices where you might be short on bandwidth (blocked ads are not even loaded at all), the screen space is often more limited, and animations used in banners are an unnecessary drain to the battery. The browser is maturing. Features such as Share-Like-Connect extend the web browsing experience naturally to the overall workspace, which also serves as a launchpad for the webbrowser as you can see in the first screenshot. On top of all that goodness, Marco has created a purty icon for the Active browser.
Marco has published an interesting blog with a movie showing Share-Like-Connect, on of the new concepts we’re delivering with Plasma Active.
Aaron explains and demoes the overall concepts of Plasma Active and Contour, its semantic workspace.
If you’d like to read up on the general ideas of Plasma Active, our wiki pages provide an excellent starting point. For our German-speaking audience, the Plasma Active section on the open-slx Wiki is a good place to share experiences and ideas.
Personal wishes go out to Maurice, our tireless Meego-Ninja who broke a finger in a bicycle accident, and Fania, Contour chief-design princess who got married.
The past weeks, I’ve been working on getting Kwin, the window manager and compositor in Plasma Active (and Plasma Desktop ;) to work on top of OpenGL ES instead of OpenGL. After some updating of packages lower in the stack, especially Mesa and parts of Xorg, we now have working OpenGL ES support on our hardware. Today, I’ve finished packaging it as an option on top of our Plasma Active packages. These packages in the :Devel subsection of the KDE:Active repository in the OBS run on top of Balsam Professional and openSUSE 11.4. We will give this some more testing and improve a few things, in order to move to GLES by default. OpenGL ES is very interesting as this is an API often used on mobile devices, so I’m glad that I can state that we’re ready for this. This of course needs proper support in the drivers, something we can not always solve by ourselves. I have been running this successfully on two Intel Atom-based tablets.
All the props of course to to our Akademy-award winning window management and compositing hero, the one and only Martin Grässlin. He’s been working on OpenGL ES support (and a lot of other features to make kwin “ready for the future”) for quite some time already. OpenGL ES support in kwin has been introduced in the recent Plasma Desktop 4.7 release, a few weeks ago.
So, is it much different? Nope, it’s very much a thing of underlying technology. There’s no noticable performance improvement, but it runs stable and well. Given that OpenGL ES support has only very recently been introduced in kwin, it’s already surprisingly good. There is probably still a lot of room for improvement, which is something we can investigate now and easily test much better.
In the screenshot of the Contour shell of Plasma Active, you can see that I’m all set up to go to FrOSCon tomorrow, where I’ll be presenting the ideas and demoing the prototypes, hoping to get some feedback on concepts, and give some understanding of the challenges and opportunities we face in this exciting endeavour. And of course show some serious bling. :) If you’re in the area around Bonn, drop by.