Plasma Products

In the open-source world, we’re quite familiar with projects. Write some code to solve a problem, make sure it works for you, maybe put it in a Git repo, and voila! A project is mostly personal; you scratch an itch and improve your life a bit. It’s how everything starts.

Then you put your Git repo online to share your project with others, and it begins to transform into a product. A product is outward-focused; its purpose is to be of value to others. To succeed, it must grow organizational components such as defined scopes of features and support, documentation, promotion and advertising, methods of distribution and updating, formalized feedback channels, decision-making processes, and so on.

This transition is hard, and it can burn out FOSS maintainers of productized projects who suddenly find themselves corresponding with rude strangers without pay and lacking the time to focus on the parts of the project they found fun. It takes a very special and rare kind of volunteer to consistently do this work for free.

In the commercial world, product development and maintenance is sustained by the money people pay to buy the product. But in the FOSS world, we’re in this awkward valley where our products are frequently competitive in functionality and reach with the commercial ones, but we don’t generally charge money or benefit from a funding stream to keep them going sustainably.

FOSS funding

…But sometimes we do! For example, the Krita foundation pays several engineers to work on the product. KDE e.V. now also pays multiple people to do critical technical work for Plasma and its surrounding app and library ecosystem: porting and platform maintenance, writing and maintaining customer-focused features, documentation, and packaging. This isn’t cheap! And because we give our products away for free, the money to pay the people consistently doing this important work is very limited and comes from corporate patronship, individual donations, grants, and sometimes paid downloads on the proprietary app stores. Keeping this financial flow going is itself a lot of work! This is normally the part where I beg you to donate! 🙂 But not right now. Right now I want to explore alternatives.

Software is hard to sell. Always has been. These days the most successful funding models for software are not a great match for what we typically build, and some even seem sort of fundamentally icky or morally objectionable, like DRM-restricted subscription services, micro-transactions, or being ad-supported. Software sold with these models is exploitative, so that’s no good. And the older model of paying for download makes even less sense for us since the source code of our products is available for free and there’s already an enormous surrounding infrastructure for the packaging and distribution of open source software. Why would anyone pay to download something they can get for free legally and almost effortlessly?

To get people to pay for a product or service, you have to provide something they can’t already easily and legally get themselves for free.

Like hardware devices

This is why I think it’s so important that we have hardware vendor partners: hardware devices are inherently products that people pay for. When KDE’s hardware vendor partners use KDE’s software in their products, it pushes that software more in the direction of being product-friendly–which is to say, user-friendly. Some of our vendor partners even pay people to work on improving KDE software directly, which is amazing and it’s something I’d like to see even more of. There are also financial benefits for KDE e.V. in the form of patronship dues and getting a portion of sales, which can be re-invested to pay for work on the software in general; I think it’s important that a majority of technical decision-making remains in KDE.

But if the product is the laptop or phone or gaming console, what does that make Plasma?

A toolkit for building products

My KDE colleague Niccolò Venerandi published an interesting video about this the other day (and also here in text/blog form). Basically he echoes an Akademy 2022 talk given by KDE e.V. president Aleix Pol Gonzalez about how Plasma itself is a kind of toolkit for building the software UX for products. I’ve also written about this before.

In this way of looking at it, the Plasma Desktop we’re all familiar with is one such UX built by KDE itself, and companies like Valve, Slimbook, Kubuntu Focus, Tuxedo, and Pine64 ship Plasma-powered products using that desktop UX and others. We even learned at least year’s Akademy that Mercedes is driving their in-car UI with KWin, Plasma’s window manager!

Now, this doesn’t mean you should go all “well akshually…” on your friends when they say “Plasma” or “KDE” to mean “Plasma Desktop.” Who cares! It’s obvious. And the Plasma Desktop is probably going to be our biggest thing for a while. It’s got the longest history and the most passion behind it. But the point stands: beneath Plasma Desktop lies a whole flexible system for quickly building other UX paradigms better suited for different kinds of devices.

If you don’t use that capability in your daily life, that’s fine. If you do use it to transform your Plasma Desktop into something totally unique that’s perfectly adapted to your personal needs and desires, that’s fine too! And what’s even more fine is when companies use this functionality to sell products with a Plasma-powered UX and invest in KDE! Seen in this way, Plasma is a powerful tool for all kinds of embedded software-driven products. We’ve already done most of the R&D that you’ll get for free; it just makes sense.

Being product-friendly

If Plasma is a tool to reduce cost and risk when building a product that uses it, we need to treat it more like what it is: a B2B developer tool. This means things like focusing on distro and hardware vendor use cases; ensuring painless and bulletproof customizability; maintaining documentation for all features; providing a rich library of components; offering a friendly and adequate out-of-the-box UX; having our own distribution and updating tools you can use if you want; and pitching our work to potential customers. Do all of those things sound familiar? They should! It’s what many members of the KDE community have been focusing on over multiple years. Documentation in particular is sorely needed to improve adoption by product-focused companies, and that’s why KDE e.V. hired a documentation contractor early this year. And KDE e.V. has a marketing team too, to improve outreach! Hmm, almost sounds like there’s a plan in place!

How to help

If being part of a movement to help get a Plasma-powered UX on all sorts of devices sounds cool and exciting, there a lot of ways to help!

  • Keep using Plasma Desktop, submitting bug reports, and fixing stuff; keep being awesome! Focus in particular on hardware integration and developer UX.
  • Help write developer documentation, particularly around shell customization and theming.
  • Be aware of the larger context and understand how proposed changes will affect others who use Plasma and Plasma-powered products. We don’t exist in a vacuum! The project is larger than us.
  • If the company you work for is using Plasma on their devices, start a conversation internally about becoming a KDE Patron, or about devoting engineering efforts towards direct upstream contributions to Plasma.
  • If the company you work for isn’t using Plasma on their devices, pitch it to them!
  • Donate to KDE e.V. so we can hire more people to technical work and offer expanded hours and work opportunities to the people we already have (they are currently part-time or less).

Highlights from 2022

2022 is over, and it’s time to recap! Like in previous years, this isn’t in any way, shape, or form a list of everything that happened in KDE; it’s just an overview of the big things I noticed or was involved with. More is always available at https://planet.kde.org!

Roadmap items

Many but not all of the items I was hoping for from my 2022 roadmap are finished now.

While we didn’t get a new style for Breeze icons or inertial scrolling everywhere, we did get the merged “Formats and Languages” KCM and a major overhaul for multi-monitor support to make it all finally work properly. “The Wayland session can completely replace the X11 session” is a bit fuzzier, but I can tell you that it’s done so for me! I only ever use the X11 session for occasionally testing merge requests. This doesn’t mean it’s there for everyone, of course. But it got ever closer in 2022. And finally, the 15-minute bug initiative was a big success! We didn’t fix every one of the 142 bugs classified as “15-minute bugs” in 2022, but we did fix 95 of them! That’s a pretty good rate. We’ll keep up the focus on these quality-of-life issues in 2023, too.

Hardware Partnerships

Linux hardware vendor Tuxedo Computers started shipping Plasma by default on all of their machines, a huge win for everyone!

KFocus, makers of Kubuntu-based hardware, added some new machines to their line-up–all shipping KDE Plasma and apps by default, of course!

Slimbook released a new version of their KDE Slimbook laptop, the best yet!

Finally, the Steam Deck became a smash hit, selling over a million devices worldwide and introducing so many people to the world of KDE!

So overall it was a pretty good year for getting KDE software into more people’s hands through hardware. But there is still so much more to do. We need to get more big names here, like Dell, Lenovo, and HP!

Akademy

For the first time in a few years, we had a real, in-person Akademy. Hallelujah! It was so wonderful to reconnect with KDE folks in person. You can see videos of the sessions and talks here. And here’s my talk.

In addition, I ran for a seat on the KDE e.V. board of directors and was elected!

Professionalizing KDE

KDE has done incredibly well over its 26-year history as primarily a volunteer organization. But there was always a dirty little secret: some of the most prominent contributors along the way have been sponsored to work on KDE in a quiet way. In the same way that Red Hat quietly funds the work of a lot of GNOME people, a lot of KDE people over the years have been sponsored by Nokia, KDAB, the city of Munich, Blue Systems, Valve, and other institutions in KDE’s orbit.

And this is great! It’s a very good sign when outside companies that derive value from KDE software pay to make it even better. But it also means they’ve been paying to make it better for their use cases, their pet projects, their areas of interest.

What’s always been missing was a cadre of paid professionals to work on KDE from a big picture perspective–people who are from the KDE community, and paid by the KDE community; people who can make a living as professionals working on KDE software from a community perspective.

Well, no longer! KDE e.V. has started hiring engineers for technical positions this year, beginning with a packaging engineer. We’re working through the process of hiring a software engineer at the moment, and we have an open position for an integration engineer too.

This is big stuff! Paid professionals in the employ of KDE e.V. can counterbalance and augment the work paid for by 3rd-parties, ensuring a healthy mix, so that KDE’s future and direction can remain in the hands of KDE. It can help to ensure a certain amount of continuity of technical knowledge, so that more people get to stay in KDE once their life circumstances change to reflect a different balance of free time and monetary needs. And of course, none of this in any way diminishes the volunteer efforts the remain the backbone of KDE! On the contrary, volunteers–who by nature come and go as life circumstances and interests dictate–can really benefit from a stable core of paid professionals to interact with.

This isn’t cheap, though. If you want to help the initiative succeed and expand, please make a donation–preferably a recurring one! 🙂 If you already have, tell your buddies, your family members, your boss, anyone you know who uses and enjoys KDE software!

New Goals

This year, KDE did a third round of goal-picking, cementing this process as a key part of KDE’s culture. The three goals chosen were “KDE For All” (accessibility), “Sustainable Software”, and “Automate And Systematize Internal Processes”–three very important goals! You can see more here.

Infrastructure

This year, Bugzilla got a re-organization to make it easier for normal people to figure out where to submit a bug report:

KDE also got a better donation and fundraising platform, powered by Donorbox. This makes it much simpler for people to donate to KDE e.V.:

Finally–and this is quite new–there’s a new forum powered by Discourse in the works, currently being beta-tested and rolled out at https://discuss.kde.org. Exciting times!

Qt 6

This year KDE contributors spent an enormous amount of time porting KDE software to Qt 6, the latest version of the Qt toolkit. This is unsexy work, so I didn’t blog about it. But it’s critically important, so thanks to everyone involved! And the work is now more than half done, with most common software and nearly all of Plasma already done; you can see the progress here.

Wayland

The Wayland session made enormous progress. Slimbook started shipping their new KDE Slimbook laptops with Wayland by default, following Fedora KDE 34 doing the same in late 2021. Our list of showstoppers continues to shrink, and new issues added to it are or notably less bad then the ones they replace. There are discussions about defaulting to Wayland in Plasma 6 next year, either for the inaugural release or one of the ones soon after it. The future really is here! And if you’re tempted to grumble, “well, Wayland still doesn’t work for me for $REASON,” please do it in a bug report so developers can fix it!

Plasma

It was a big year for Plasma! Among many other changes, we got custom window tiling layouts; massive stability improvements for multi-monitor workflows; Wayland fractional scaling; non-blurry scaled XWayland apps; a UI overhaul for Discover; many KRunner UX improvements; mouse button re-binding; resizable Panel popups; finger-following touchpad gestures on Wayland; support for alternate calendars such as the Chinese lunar calendar and Islamic civil calendar; picking-and-choosing what you want to apply from Global Themes; accent color generated from wallpaper’s dominant color; and full-window tinting with the accent color.

Plus a lot more, of course! You can see everything in the Plasma release announcements, found at https://kde.org/announcements.

Apps

KDE has so many apps that I really can’t possibly do them justice here! Nevertheless, here’s an extremely small assortment:

Dolphin got a new Selection Mode, a new (optional) list view selection style, the ability to browse iOS devices using their native afc:// protocol, an eject button in the sidebar list items of ejectable/unmountable volumes.

Okular got a welcome screen, a new Breeze icon that better matches the original, a UI overhaul for its sidebar.

Gwenview gained features to annotate images and edit their brightness, contrast, and gamma.

Kate and KWrite got welcome screens, KHamburgerMenu support, searchable settings windows, keyboard macro support, and even more massive UX and feature improvements of all kinds due to an influx of new contributors and a higher tempo of regular development work.

Konsole got Sixel support, adopted KHamburgerMenu, added a plugin to save and restore text snippets, and moved its tab bar to the top of the view by default.

Spectacle was ported to Kirigami and now lets you annotate in Rectangular Region mode.

Filelight was ported to Kirigami and gained a sidebar.

Ark got a welcome screen, KHamburgerMenu support, and overhauled toolbar contents.

Elisa gained support for displaying auto-scrolling lyrics from songs using embedded LRC lyrics, .pls playlists, a real Full Screen mode, and improved presentation in Artists view, touchscreen UX improvements and overhauled playlist styling

NeoChat got encrypted chat support and a boatload of features and UI improvements!

Many QtWidgets apps adopted KHamburgerMenu for a streamlined presentation


Well that’s all for now, folks. Happy new year and let’s do awesome things in 2023!

A better fundraising platform

KDE is getting a much more user-friendly fundraising platform, and it’s a big deal!


Currently our small-donor donation page is https://kde.org/community/donations, which lets you make a single one-time donation. To make a recurring donation, you have to visit https://relate.kde.org, which is less user-friendly, and it’s always struck me as odd to have these split up in two locations.

Well, KDE is getting a much better donation system powered by Donorbox, which I hope will turbocharge our fundraising! It’s very user-friendly and allows you to easily make recurring donations, which is important. We already set this up for the Kdenlive fundraiser, and it was a smash hit, raising 100% of the funds in the first month of the 3-month campaign. That fundraiser has since moved into stretch goals!

We’ve now done it again, rolling out a Donorbox-powered donation UI on https://kde.org/bluefriday, our tongue-in-cheek anti-black-friday fundraiser, which will become a general end-of-year campaign. This work was done by members of KDE’s promo team and fundraising working group, principally Lays Rodrigues, Carl Schwan, and Paul Brown. And so far the response has been huge! The fundraiser opened yesterday, and at the time of publication, it’s already collected 530€ from 28 generous donors! And after the new year, the current plan is to continue to use the Donorbox-powered UI for all small donations.

This really goes to show how important user-friendliness is. When you make it easy for people to give you money… they give you more money! Thank you so much, everyone.

Why is all this money stuff so important? Well, it’s how the KDE e.V. pays for hiring (such as for the Platform Software Engineer position I blogged about two days ago), development sprints, conferences, infrastructure, and similar activities that help KDE thrive and grow. If we’re gonna hugely expand technical employment–which is a major goal of mine–then we’re gonna need a lot more recurring donations to do it.

So what are you waiting for? Head over to https://kde.org/bluefriday and make a donation today. If it’s a recurring donation, we’ll love you forever! 🥰

KDE is hiring a software engineer

Yes that’s right folks, it’s happening!!! KDE is growing up, joining the big leagues, and cooking on all burners!

The KDE e.V. recently dipped its toes into the waters of technical hiring by contracting with longtime KDE contributor Ingo Klöcker to maintain and improve KDE’s packaging infrastructure for non-FOSS platforms. Now we’re at it again with a new open position for a “Software Platform Engineer.”

This is an open-ended development position, with responsibilities for work on KDE frameworks, Plasma, Qt, middleware like Pipewire and Wayland protocols–basically, the same things that a lot of people are already doing. But… on a consistent work-work basis, for money, with your KDE friends as professional colleagues and supervisors!

If this interests you, check out the job ad and apply! We want lots of good candidates so we can feel bad about only hiring one person and then feel even more incentivized to open more positions for them too! And we have other open positions as well! So go apply for a career in KDE today!

Of course sustaining these high-pay technical positions won’t be cheap. The KDE e.V. can just barely afford it now, and needs a larger and growing budget to be able to sustainably keep up the pace of hiring. Please donate today! Every little bit helps. If you can swing it, make it an annual donation!

Interview on the Sudo Show

The latest episode of the Sudo Show with Brandon Johnson and Neal Gompa has an interview with me, on the subject of Kommercializing KDE. It’s quite relevant to my goal of getting our software on the all the hardware we can (AKA World Domination) so give it a listen!

You can also listen right here:

Hope you enjoyed it! And if you like what KDE is doing and want to help its contributors make a living, consider making a donation!

On hiring, and fundraising to make it more biggerer

This year at Akademy, I took the plunge and decided to run for a seat on the KDE e.V.’s board of directors.


What is the KDE e.V.? It’s the nonprofit organization that represents the KDE community in legal and financial matters. It has several paid employees who work on KDE stuff, most notably promotion & marketing, project management, and event planning. You can see more at https://ev.kde.org/corporate/staffcontractors.

By the way, in case you were wondering (as I did at one point), “e.V.” is short for “eingetragener Verein” which is German for “registered association”–basically a type of nonprofit entity.

For several years, I’ve believed and publicly suggested that the KDE e.V. needs to have more technical positions. We need to directly hire KDE community members so they don’t have to seek employment with a 3rd-party company, or even drift away from the community when they have less free time and age into positions of greater financial need. In fact the KDE e.V. has already been moving in this direction, but slowly, because the available budget is pretty small compared to the vastness of the KDE community and the scope of more ambitious hiring. You can get an idea by looking at the report of the Financial Working Group in the 2021 annual report.

So I ran on a platform of hugely increasing both fundraising and technical hiring. And I’m honored to report that I won the election and am now a member of the board!

i got board

To those of you who voted for me, thank you so much for your support. For those of you who didn’t, I hope I can represent you well anyway, and if you get ticked off with anything I’m doing… please tell me! I welcome feedback. This position is all about being a good representative, and that’s what I want to be.


So what does this mean?

It means that a majority of the KDE e.V. membership approves of these goals, so when it gets more money, the KDE e.V. has a mandate to do more hiring–especially for impactful technical positions. It means we will eventually be able to have the big names in KDE paid by KDE, so they can stay in KDE over the long haul! And it also means we need a lot more money to make this happen.

There are a lot of steps to this, including figuring out the legal technicalities of full-time hiring, and increasing the budget so we can make sure we’re always offering market wages. We’ll be investigating potential ways to boost fundraising: hiring a professional fundraising director; applying for a lot more grants; having more explicit fundraising campaigns; gamifying fundraising; sending out nudgey newsletters to people who have donated in the past; making it easier to donate on a recurring basis; and more.

But for now, if you want to see us do more hiring, the best way is to make a donation to the KDE e.V. at https://kde.org/community/donations. It helps. It really does! This money is going to transform KDE into a professional powerhouse with its own internally-employed cadre of world-class superstars. We’re going to take on the Big Tech dogs and win, and we’re going to let our heavy-hitters make a living within KDE while doing it. But it can’t happen without your help, so please consider making a donation today!

Akademy 2022 talk: Konquering the World – Are We There Yet?

Two weeks ago I attended Akademy in Barcelona, KDE’s annual conference. Let me tell you, it was great to finally, finally, finally see people in person again! It was so nice to meet up with old friends, and put faces to names for new ones!

Four years ago I gave a perhaps arrogantly ambitious talk at Akademy 2018 entitled “Konquering the World – a 7-Step Plan to KDE World Domination“. In it, I described how the at-the-time new Usability & Productivity goal supported a deeper end goal of getting KDE Plasma pre-installed on commercially available hardware–that being the only way I believe we can introduce a truly huge number of new people to KDE’s friendly and powerful flavor of free software.

Four years later, the Usability & Productivity goal has been completed, with basically everything it set out to do being done now! So at this year’s Akademy, I gave a talk to discuss the progress in getting KDE Plasma preinstalled on hardware. What were our successes, and what do we still need to work on to make further gains in the arena of pre-installation? Find out here!

TL;DW version: check out https://kde.org/hardware 🙂

KDE roadmap for 2022

Another year, another roadmap! Last year’s was a smashing success, as we delivered on everything. So here’s what I think we can expect in 2022. As always, this is not an official planning document or a promise; it’s just me giving you a sneak peak of some things that are in progress or about to start, and that I think will be feasible to complete before the year’s end!

Merged “Formats and Languages” KCM

The Languages and Formats pages in System Settings have long been problematic because their scopes overlapped. Not for long! Han Young is working on merging them together into one new page that handles both, making it clear what applies when and making it harder or impossible to mess up your system by choosing incompatible settings. This is in progress and I expect it to be completed sometime in the first half of 2022.

Overhauled Breeze icons

KDE designer Ken Vermette is working on improving and modernizing Breeze icons! Colorful icons will be softened and rounded a bit, and visually updated to remove old ugly elements like the long shadows. Monochrome icons will eventually get attention too. All of them are expected to become more responsive to your system color scheme, and look better when doing so. Initial work for Places icons has already been submitted and is being reviewed. This work will soon start landing piece by piece, and you can read more about it on Ken’s blog.

Multi-monitor stuff finally works properly

We plan to focus quite a bit on resolving multimonitor issues this year, and some of that effort has already borne a bit of fruit so far. But there will be a much heavier focus in 2022!

Inertial touchpad scrolling in QtQuick software

A big improvement went in recently that will make this possible to do soon! It seems quite likely that we’ll finally have this sometime in 2022.

The Wayland session can completely replace the X11 session

This is a bit of a moonshot but I think it’s possible. The list of issues on our “Wayland Showstoppers” wiki page is quite low, and when new ones are added, they’re notably lower in severity than the ones that have already been fixed. And now that NVIDIA has added GBM support to their driver and KWin already supports it, I think life should really start to get better for NVIDIA users, who represent a large chunk of dissatisfied Plasma users and those still unable to use the Wayland session at all. Let’s call this a stretch goal, but I think it’s not impossible!

“15 minute bug” initiative

This year I’d like to start something I call the “15 minute bug” initiative–an effort to fix as many of the bugs as possible that are trivially encountered within a quarter hour of basic usage. These are the kinds of issues that form permanent negative opinions in people’s minds, and reinforce the perception that KDE software is buggy and unreliable.

So far I’m limiting it to Plasma and Plasma-aligned software (e.g. KWin, System Settings, Discover) to avoid getting overwhelmed by scope creep. But if it’s wildly popular and successful, I’d love to extend it to apps and frameworks as well! Check out the current list here. I’ll be writing about this in more detail soon!


So that’s the list! What do you think? Is there anything else you think we should focus on in 2022?

Highlights from 2021

The coronavirus pandemic frustratingly continued to spread misery this year, but one silver lining to this cloud was that keeping people at home meant lots of contributions to KDE! As a result this was an enormous year for KDE and all who use its software. Like I did last year, I’d like to mention some of my favorite big features and improvements from the past 12 months. Also like last year, what’s written here is just the tip of the tip of the iceberg, probably not even a tenth of a percent, and also a very selective look at just some of the software I use and follow on a regular basis. There’s a whole lot more at https://planet.kde.org!

Roadmap items

We managed to accomplish all items from last year’s roadmap: a production-ready Plasma Wayland session (Fedora KDE even switched to using it by default!), fingerprint reader support, the Breeze Evolution finished up and landed, a new Kickoff, and text reflow in Konsole! But that’s not all; we also managed to finish up Polkit in KIO, which allows Dolphin and other KIO-using apps to request elevated privileges for editing files and folders you don’t own!

Hardware Partnerships

The big news this year was the Steam Deck: a handheld gaming console made by Valve that’s running KDE Plasma under the hood on a custom Arch-based Linux distro! Valve has been sponsoring improvement for Linux gaming up and down the stack, including KDE. This showcases the power of getting vendors to pick your software: they put their own engineering resources into making it even better!

But that’s not all: the new PineBook Pro also ships with Manjaro KDE by default!

Wayland

As I mentioned earlier, I really think the Plasma Wayland session became production-ready this year. It’s still not a full replacement for the X11 session in all cases due to some remaining issues, especially for users of NVIDIA graphics hardware. But I expect those to diminish greatly in 2022.

2021 saw a truly monstrous number of bugfixes and quality of life improvement for Wayland session users, plus tons of new features, including support for Activities, GPU hot-plug, direct scan-out, setting the overscan and underscan, variable refresh rate/FreeSync/adaptive sync, DRM leasing, “Broadcast RGB” for the Intel GPU driver; the ability to choose, enable, and disable the virtual keyboard; a “Primary Monitor” setting like on X11; a new Activation protocol that will eventually let windows come forward when activated from other apps (once all toolkits and/or apps have opted into it); automatic DND mode when screencasting/sharing/recording; and animated transitions when rotating the screen.

As a result of all this improvement, I’m using the Plasma Wayland session full time now. And you know how picky I am!

Akademy

Akademy 2021 was once again virtual, and went quite well. I was feeling kinda burned out at the time and didn’t give a talk this year, but you can watch recordings of everyone else’s talks and sessions here: https://www.youtube.com/c/KdeOrg/videos

Infrastructure

KDE’s GitLab instance at https://invent.kde.org finally got pre-commit continuous integration, so now each merge request can be checked to make sure it compiles, that tests work, code quality doesn’t regress, and so on! Support is fairly basic right now but this should be improving over time.

In addition, https://bugs.kde.org got a major facelift and now look much nicer!

Plasma

This year Plasma got tons of major new features, such as a microphone recording input level visualizer right there in the Audio Volume applet, adaptive panel transparency, support for the power-profiles-daemon feature, two-click renaming in Folder View when using double-click (just like in Dolphin), and the ability to set the wallpaper from the context menu in Dolphin and Folder View!

Plenty of UI improvements landed too, including giving a blurred background to desktop widgets, a new better Digital Clock popup, multi-line text support in KRunner so that the Dictionary runner is now usable, inline help in KRunner, a Meta+V shortcut to open the clipboard history popup, a Meta+speaker mute shortcut to mute the microphone.

On X11, many more icons throughout Plasma are now the correct size when using a HiDPI scale factor

Oh and let’s not forget literally the most important thing of all: desktop widgets are no longer jaggy and aliased when rotated. Killer feature, right there.

KWin

This year KWin’s compositing code was rewritten for better performance and smoother animations, which has made a huge difference! It also gained support for the proprietary NVIDIA driver’s GBM backend.

A new “Overview” effect will replace the older Present Windows effect soon. In addition to Present Windows’ current functionality, it also shows virtual desktops and also lets you search using KRunner! It’s like half of GNOME shell, right in KWin. 🙂

Finally, KWin benefited from a few changes to its default settings, including opening new windows in the center of the screen (on whichever screen the cursor is located) and no longer making windows transparent while being moved or resized.

System Settings

This was a big year for System Settings. It got a new Quick Settings page holding commonly-used settings, including a button to change the wallpaper, and a new accent color feature with accent-colored icons too! The Printers page gained support for browsing and adding network printers shared with Samba. We made a new Firewall page. The SDDM and Formats pages were rewritten in QtQuick for much greater user-friendliness and future hackability. Bluetooth adapter on/off status is now remembered across reboots by default and can be explicitly forced on or off. There were many search keyword improvements, making it easier to find System Settings pages by searching. And you can search in English even when using another language.

Discover

Many UI and UX improvements were made this year, including preventing you from doing anything that would uninstall Plasma, improving the comprehensibility of update issues, offering further help when a search doesn’t turn up something you know exists, letting you enable and disable Flatpak and distro repos, and letting you install locally-downloaded Flatpak apps.

Discover gained support for “offline updates”, and several distros have opted into it (KDE Neon and Fedora KDE, at a minimum), but you can go back to interactive updates if you want.

Applications & Frameworks

All QtWidgets-based apps implemented KCommandBar, a ludicrous-mode productivity enhancement that shows a command palette when you hit Ctrl+Alt+I and lets you search and run any action in the app!

Another major new UI element for QtWidgets apps is KHamburgerMenu, which lets small and medium-sized apps for which a full menubar is overkill to opt into a simple hamburger menu. Several apps have already opted in, though this is user-configurable and you can turn it off if you prefer the menubar!

In addition, many apps now have expandable tooltips that show you more information when you press the Shift key!

Finally, a variety of apps now have better default window sizes.

Dolphin and file management

In addition to the aforementioned Polkit-in-KIO project being merged, Dolphin now lets you hit tab/shift-tab while renaming a file to quickly start renaming the next or previous item. the up and down arrow keys also work in Details view! And now its entire context menu is configurable, so you can customize it to your heart’s content.

Elisa

This year Elisa gained a mobile interface for its Plasma Mobile and Android packages. It also lets you rate songs inline without having to go to the metadata window, and use a “Favorite”/”Not favorite” style for ratings if you don’t like 0-5 stars. It also has a responsive two-column Now Playing page and lets you drag-and-drop music from the file manager to the playlist sidebar.

Gwenview

Gwenview got a major UI overhaul this year, including adopting KHamburgerMenu and showing it by default instead of the menubar, a new toolbar layout, a prettier sidebar, and, more controversially, the replacement of Fit/Fill/100% buttons with a zoom combobox and the addition of a background color chooser to the status bar. It also gained a Print Preview feature and its Resize feature now shows you the expected new file size. Finally, it now inherits the sort order from Dolphin when Dolphin is used to open an image in Gwenview.

Spectacle

Spectacle now includes more annotation tools and has the ability to annotate an already-taken screenshot from the notification or the command-line. And it also remembers the last-used capture mode for its automatically taken-screenshot on launch by default, and can be configured to take no screenshot at all. Finally it now respects the last-used values of “include mouse pointer” and “include window titlebar and borders” when taking screenshots using global shortcuts.

Other apps

Ark got a nice welcome screen.

Kate gained Git integration and touchscreen scrolling support.

Kalendar was created and is amazing already!

KCalc gained a history view and its main window can now be resized.

Konsole got support for changing the app’s color scheme independent of the rest of the system.

NeoChat became amazing this year, and is almost a full replacement for Element–lacking only Encrypted chat support, which is being worked on!

Okular got KHamburgerMenu support, which is off by default for now but you can opt-in by hiding the menubar.

Partition Manager doesn’t create new filesystems as root anymore.

Skanlite gained the ability to scan files to the PDF format, and got a new batch mode feature.


And remember, this is just a subset of a subset! KDE has over a hundred other apps which you can find out about at https://apps.kde.org. Next year promises to be very big for KDE. More about that tomorrow!

What desktop Linux needs to succeed in the mainstream

You might be aware of the recent Linus Tech Tips videos about switching to Linux, including one with some complaints about KDE software. For those of you who are following along, I want to let you know that we’re working on fixing the issues Linus brought up, and you can track our progress here. Thankfully most of the issues are fairly minor and should be easy to fix.

This blog post is my version of Sway developer Drew DeVault’s post about the videos, regarding the question of what desktop Linux needs to go mainstream. Drew emphasizes accessibility, and I agree, but with a slightly different conclusion:

Desktop Linux needs to be pre-installed on retail hardware to succeed in the mainstream.

That’s it.

Allow me to explain.


People get hung up a lot on features and usability, and these are important. But they’re means to an end and not good enough ends by themselves. Quality means nothing if people can’t get it. And people can’t get it without accessible distribution. High quality Linux distros aren’t enough; they need to be pre-installed on hardware products you can buy in mainstream retail stores! “The mainstream” buys products they can touch and hold; if you can’t find it in a mainstream store, it doesn’t exist.

Think about it: why do normal people use Windows or macOS? Because the physical computer they bought included it. iOS or Android? Because it was shipped by default on their physical smartphone. The notion of replacing a device’s operating system with a new one doesn’t exist to “the mainstream”. Only the “three-dot” users ever do that, and they’re about 5% of the market. If the only way to get your OS is to install it yourself, you have no chance of succeeding in the mainstream.

As for features, people generally use only a very small fraction of what’s available to them. When it comes to usability, most users memorize their software rather than understanding it–and you can memorize anything if you really have to. A better user interface helps, but it isn’t needed for the memorizers and mostly benefits power users (the 30% of the market “two-dot and up” crowd) who recognize patterns and appreciate logic, consistency, and good design. So these are not good enough on their own.

This doesn’t mean we should forget about features and usability! Not at all! But if the goal is to “go mainstream,”we have to understand the true audience: hardware vendors, not end users. The goal is to have a software product appealing enough to get picked up by vendors when they go shopping for one, because that’s mostly how it works. Companies like Apple that do their own custom top-to-bottom hardware and software for big-name products are rare. Most build on top of 3rd-party software that requires the least integration and custom work from their in-house software team. If your software isn’t up to the task, they move onto the next option. So when some hardware vendor has a need, your software better be ready!

And what do hardware vendors need?

  • Flexibility. Your software has to be easily adaptable to whatever kind of device they have without tons of custom engineering they’ll be on the hook for supporting over the product’s lifecycle.
  • Features that make their devices look good. Support for its physical hardware characteristics, good performance, a pleasant-looking user interface… reasons for people to buy it, basically.
  • Stability. Can’t crash and dump users at a command line terminal prompt. Has to actually work. Can’t feel like a hobbyist science fair project.
  • Usability that’s to be good enough to minimize support costs. When something goes wrong, “the mainstream” contacts their hardware vendor. Usability needs to be good enough so that this happens as infrequently as possible.

It doesn’t need to be perfect. It just needs to do that stuff. This is how Windows conquered the PC market in the 90s despite being terrible! And our stuff is much better!


I see evidence that this is already working for KDE. Pine ships Manjaro with Plasma Mobile and Plasma Desktop on the PinePhone and PineBook Pro, respectively. Valve also picked Plasma Desktop for the Steam Deck, replacing GNOME for their new version of SteamOS. I see KDE software as well-positioned here and getting better all the time. So let’s keep doubling down on delivering what hardware vendors need to sell their awesome products.