KDE's yearly world conference - Akademy - was held last week in Almería, Spain. Lots of interesting things happened in the Plasma-verse during Akademy 2017.
State of the Union
Right after the first day's keynote (slides), Marco Martin and Sebastian Kügler caught the general audience up in their presentation "Plasma: State of the Union". Sebas talked about how the architecture around Frameworks 5 and Plasma 5 worked out very well, and how the 5.8 LTS release was received positively, especially by the users who value stability and predictability.
Marco then presented a number of new features that have been added to Plasma since last year's Akademy and that are planned for the upcoming 5.11 release. There is the improved integration for web browsers, better support for touchscreens, enhancements in the taskbar, return of the App Menu (Global Menu), encrypted volumes through Plasma Vault, more elegant artwork, a redesign of the System Settings user interface, and many more.
The KDE Store has gained a lot of traction since its relaunch at Akademy 2016, and now even allows its contributors to receive donations directly from happy users. (Full disclosure: Your editor was able to buy a pizza last week from donations coming through this new feature in the KDE Store).
Plans for the future of Plasma include getting the Wayland port ready for end-users, and thereby delivering on the promise of smoother graphics, a leaner graphics stack, better protocol semantics, improved high-DPI support and more features for touchscreens and convertible devices (such as edge-swipe support).
Another talking point which deserves a special mention is Plasma's vision statement. The statement had been discussed on Plasma's mailing list and on KDE's Phabricator collaboration tool over the last couple of months, and it is now finalized. Plasma's vision statement reads:
"Plasma is a cross-device work environment by the KDE Community where trust is put on the user's capacity to best define her own workflow and preferences.
Plasma is simple by default, a clean work area for real-world usage which intends to stay out of your way. Plasma is powerful when needed, enabling the user to create the workflow that makes her more effective to complete her tasks.
Plasma never dictates the user's needs, it only strives to solve them. Plasma never defines what the user is allowed to do, it only ensures that she can.
Our motivation is to enable actual work to happen, across devices, across different platforms, using any application needed.
We build to be durable, we create to be usable, we design to be elegant."
Its cornerstones are stability, usability (which includes features to make the users' lives easier) and elegance, meaning that the team aims to create stable software that helps users get their job done elegantly, but swiftly and with pleasure. For a more detailed explanation of Plasma's vision, head over to sebas' weblog.
Halium Unifies Mobile Linux
Bhushan Shah, maintainer of Plasma's user interface for mobile devices, talked in detail (slides) about the latest endeavour - Project Halium. Halium is a collaboration that aims to share the development effort among several groups. By creating a common base, Project Halium wants to make it easier to bring Plasma Mobile to a wider range of devices. In just a few months, Halium has not only allowed Plasma Mobile to run on its new reference device (the Google Nexus 5X), but has also provided the basis for ports to the Fairphone 2 and a few other handsets.
With other Free software mobile stacks (such as Ubuntu Touch and Firefox OS) being discontinued, Plasma Mobile positions itself as the best option to create truly Free and community-developed mobile devices. While its development is not very fast-paced, its continued improvements begin to bear fruit. This makes Plasma Mobile an increasingly attractive platform for people and companies that want to escape the Duopoly of today's smartphone market and bring something entirely new to the table.
Kirigami Makes Convergence
Most of today's applications are written using QWidgets, which is still the most powerful tool for certain kinds of applications. QWidgets does have some graphical limitations, which may sound bad, but this limitation leads to more consistent UIs across applications. Using QWidgets makes it difficult to deviate from the human interface guidelines (HIG) too much, thus enforcing visual consistency.
This is about to change. Qt is investing heavily into QML, which has fewer graphical limitations, putting more power into developers' hands. A side-effect, however, is that it makes it (too) easy to create applications visually and interactively inconsistent with each other.
Kirigami was born both as a human interface guideline (HIG) and a framework implementing it. Kirigami has been stabilized over the past year and will be released together with KDE Frameworks 5 starting August 2017.
Kirigami provides the skeleton for applications, allowing developers to write visually and interactively consistent applications with little effort. While it seems that Kirigami limits the endless flexibility that QtQuick-based UIs offer, it solves common problems of in-app navigation. Moreover, it solves the lack of consistency across applications, providing uniformity and reducing the need to 'learn' a new application. In order to think outside of the box, you need a box in the first place, and Kirigami provides that box.
One example of a Kirigami app is Koko, a simple QML-based image viewer. Although Koko never received any real designer input, it has been resurrected as a Google Summer of Code project by Atul Sharma, and has been redesigned to be a textbook case for Kirigami. Other Kirigami-based applications are Discover (Plasma's software center), the new System Settings user interface (to be released with Plasma 5.11), and of course, Kirigami's first adopter: Subsurface Mobile, an application for logging scuba dives. Kirigami provides a morphing UI, which allows creating applications that work equally well on desktop and mobile. With Kirigami, creating a convergent application is a breeze.
The main target platforms for Kirigami are Plasma Desktop and Plasma Mobile, with the convenient side-effect of working nicely on Android. While we care a lot about following the look of Material on Android, we're not interested so much in the feel. With Plasma Mobile, we want to innovate without the legacy that Android and iOS have on their top-heavy UIs. Such interfaces are very hard to use with a single hand on big screen phones, and this is something we want to avoid.
Kai Uwe Broulik wins Akademy Award for Plasma
Kai Uwe Broulik, a Plasma Hacker extraordinaire, was lauded an Akademy Award this year for his work on Plasma. As the developer behind features like the App Menu, web-browser integration, and many other cool features big and small, Kai is a tireless and positive force that many of his teammates follow as a role model. The award, which also reflects positively on the rest of the Plasma team, is well-deserved and received gratefully.
Swapnil Bhartiya interviewed Kai shortly after the Akademy Awards ceremony. In this interview, Kai reveals his ideas and thoughts on Plasma and the desktop in general. It's well worth watching.
On Monday, the Plasma team held a day-long birds-of-a-feather (BoF) session. BoFs are collaborative meetings where everyone with the same interest is welcome to participate. The sessions are focused on making plans and finding solutions for problems that need face-to-face interaction. Naturally, they are also a great opportunity to look into the developers' kitchen. Let's take a peek!
The Plasma team plans to improve support for convertible devices (laptops with touchscreens and detachable keyboards). In order to do that, some improvements to the virtual keyboards are planned.
Other aspects that need improvement include screen rotation, sensors support, and the appearance of the UI when used with one's finger. Furthermore, the team talked at length about structuring the (somewhat dynamically grown) battery of QtQuick imports in a more logical way.
Finally, a BoF session on Wayland resolved a number of problems in applications using Wayland, leading to direct results. For example, KMail will support the Wayland display server natively in an upcoming releases.
Changes planned for Plasma Mobile include a more efficient and clean implementation of the top panel, better backend-sharing between desktop components and mobile UIs, and better support for third-party applications, especially those left in the rain by the demise of Ubuntu Touch.
Akademy provided a great opportunity to prepare for the next big leaps in different areas of Plasma. As always, it was also a wonderful opportunity for the Plasma team to get together, socialize, and keep working as a team of friends.
Last week, members of the Plasma team met in Nürnberg, Germany to discuss open questions on the road to Plasma Workspaces 2. The meeting was kindly hosted by SUSE and supported by the KDE e.V.. For the Plasma team, the meeting came at a perfect point in time: porting of Plasma to a new graphics has commenced, is in fact well under way, and has raised some questions that are best discussed in a high-bandwidth setting in person.
Graphics Stack Options
The developers laid out the plans for an eventual release of Plasma Workspaces 2, based on KDE Frameworks 5 and Qt5. Wayland is also part of this plan. Starting with Plasma Worskpaces 2, Wayland will join X11 as a supported windowing environment, and all new development is taking this into consideration. Wayland is a replacement for most of the functionality which is today offered by Xorg. Wayland simplifies the graphics stack significantly with the goal of making every frame shown on screen perfect, something that is hard to achieve reliably with X11. Wayland's leaner graphics stack and improved security model also make it more appropriate for use on modern devices. As such, it is widely seen as the successor to X11 in the Free software ecosystem. Most of the gruntwork needed for this transition is already offered in Qt, however, there are still quite some X11-dependent code pathes in the KDE Frameworks, especially in KWin and the Oxygen widget style. While KWin is making excellent progress towards being able to be used as Wayland compositor, the future of the Oxygen widget style is still an unsolved problem.
For people who prefer the KDE 3.5-style desktop, a new version of the Trinity Desktop Environment (TDE) has been released. Trinity is a continuation of the KDE 3.5 Desktop Environment with ongoing updates and new features. Trinity Desktop Environment 3.5.13 source code is available and the project also provides packages for Debian, Ubuntu and Fedora. Read on for an overview of what is new in Trinity 3.5.13!
KDE has enjoyed great success over the years and today marks another important step in the evolution of our growing community. Many years ago when KDE was just beginning we had a small user base and similar expectations of how the software should work. But with growth and success also comes new users and new expectations. As an effort to meet the growing demands of our user community KDE has identified 3 key areas in which we would like to better cater to users' needs. In order to achieve this it has been determined that there will be, going forward, 3 separate releases of each Software Compilation tailored to these areas.
Last week, the third Plasma developers meeting was held in the Swiss Alps. 15 developers from 3 continents came to Randa, Canton Wallis to work on Plasma's code, design new ideas and concepts and to strengthen their bonds as a sub-community within KDE. Topics of this third Plasma sprint, which is named after a plasma fusion reactor, included but were not limited to Plasma on mobile devices, network-enabled Plasma widgets and a richer user interface thanks to a new animation framework. Furthermore deeper integration of web services in the Plasma shell, semantic awareness of Plasma components, secure privilege elevation and polishing of the existing functionality, among many other things, were on the agenda. The results of Tokamak III are, with all due modesty, nothing short of mind-blowing and display the health and swift pace of development of the whole KDE community. Plasma lead developer Aaron Seigo wraps up "It's been one of the longest KDE sprints ever, and after a week, we're all quite exhausted. Looking back at the results, however, the we have shown impressive progress all over the KDE desktop shell. We're reaching out to new use cases, new developers, new devices. Meanwhile the social aspects within the Plasma team continue to impress me. The Plasma team has grown into a small community, a group of friends that have set out to revolutionize the desktop. With the previous KDE releases, we mainly focused on providing and improving existing technology, now we're pushing the boundaries of the Free Desktop. Looking at the results that have materialized over the past week, this is the Plasma promise coming true. And we've only just begun..."
Over the last weekend, the Plasma team held their second meeting in Porto, Portugal. The meeting was organised by Akademy Award winner Nuno Pinheiro inviting the Akademy Award-winning Plasma team to his home country. The meeting was kindly hosted by the Departamento de Engenharia Informatica (Department of Software Engineering) of the Instituto Superior de Engenharia do Porto. The Plasma team (and most probably many of the KDE users) are grateful for being provided this opportunity to collaborate on the desktop.
At the Decibel Hackathon sponsored by NLnet and basysKom GmbH in Darmstadt, Germany last
weekend, hackers from the KDE community met to discuss the handling
of contact data in KDE 4. Read on for a summary of the event.
D-Bus 1.0 ("Blue Bird"), the Freedesktop.org inter-process messaging system has just been released. A collaborative effort between industry and open source developers, D-Bus was created to allow arbitrary applications to easily communicate with each other and exchange data. An additional system daemon allows for communication with system services.
Try KDE is a new resource listing ways that you can try out KDE without commiting to a full GNU/Linux or BSD install. It includes links to live cds, VMware player images and Klik bundles as well as links to KDE desktops available over NX, with explanations of these technologies. It is linked to from the KDE frontpage and will be updated regularly as more resources are discovered.