Plasma’s road ahead

My Plasma Desktop in 2016
My Plasma Desktop in 2016
On Monday, KDE’s Plasma team held its traditional kickoff meeting for the new development cycle. We took this opportunity to also look and plan ahead a bit further into the future. In what areas are we lacking, where do we want or need to improve? Where do we want to take Plasma in the next two years?

Our general direction points towards professional use-cases. We want Plasma to be a solid tool, a reliable work-horse that gets out of the way, allowing to get the job done quickly and elegantly. We want it to be faster and of better quality than the competition.

With these big words out there, let’s have a look at some specifics we talked about.

Release schedule until 2018

Our plan is to move from 4 to 3 yearly releases in 2017 and 2018, which we think strikes a nice balance between our pace of development, and stabilization periods around that. Our discussion of the release schedule resulted in the following plan:

  • Plasma 5.9: 31 January 2017
  • Plasma 5.10: May 2017
  • Plasma 5.11: September 2017
  • Plasma 5.12: December 2017
  • Plasma 5.13: April 2018
  • Plasma 5.14 LTS: August 2018

A cautionary note, we can’t know if everything exactly plays out like this, as this schedule, to a degree depends on external factors, such as Qt’s release schedule. Here’s what we intend to do, it is really our “best guess”. Still, this aligns with Qt’s plans, who are also looking at an LTS release in summer 2018. So, what will these upcoming releases bring?

Breeze Look and Feel

Breeze Look and Feel

UI and Theming

The Breeze icon theme will see further completion work and refinements in its existing icons details. Icon usage over the whole UI will see more streamlining work as well. We also plan to tweak the Breeze-themed scrollbars a bit, so watch out for changes in that area. A Breeze-themed Firefox theme is planned, as well as more refinement in the widget themes for Qt, GTK, etc.. We do not plan any radical changes in the overall look and feel of our Breeze theme, but will further improve and evolve it, both in its light and dark flavors.

Feature back-log

The menu button is a first sign of the global menu returning to Plasma
The menu button is a first sign of the global menu returning to Plasma
One thing that many of our users are missing is support for a global menu similar to how MacOS displays application menus outside of the app’s window (for example at the top of the screen). We’re currently working on bringing this feature, which was well-supported in Plasma 4 back in Plasma 5, modernized and updated to current standards. This may land as soon as the upcoming 5.9 release, at least for X11.

Better support for customizing the locale (the system which shows things like time, currencies, numbers in the way the user expects them) is on our radar as well. In this area, we lost some features due to the transition to Frameworks 5, or rather QLocale, away from kdelibs’ custom, but sometimes incompatible locale handling classes.

Wayland

The next releases overall will bring further improvements to our Wayland session. Currently, Plasma’s KWin brings an almost feature-complete Wayland display server, which already works for many use-cases. It hasn’t seen the real-world testing it needs, and it is lacking certain features that our users expect from their X11 session, or new features which we want to offer to support modern hardware better.
We plan to improve multi-screen rendering on Wayland and the input stack in areas such as relative pointers, pointer confinement, touchpad gestures, wacom tablet support, clipboard management (for example, Klipper). X11 dependencies in KWin will be further reduced with the goal to make it possible to start up KWin entirely without hard X11 dependencies.
One new feature which we want to offer in our Wayland session is support for scaling the contents of each output individually, which allows users to use multiple displays with vastly varying pixel densities more seamlessly.
There are also improvements planned around virtual desktops under Wayland, as well as their relation to Plasma’s Activities features. Output configuration as of now is also not complete, and needs more work in the coming months. Some features we plan will also need changes in QtWayland, so there’s some upstream bug-fixing needed, as well.

One thing we’d like to see to improve our users’ experience under Wayland is to have application developers test their apps under Wayland. It happens still a bit too often that an application ends up running into a code-path that makes assumptions that X11 is used as display server protocol. While we can run applications in backwards-compatible XWayland mode, applications can benefit from the better rendering quality under Wayland only when actually using the Wayland protocol. (This is mostly handled transparantly by Qt, but applications do their thing, so unless it’s tested, it will contain bugs.)

Mobile

Plasma’s Mobile flavor will be further stabilized, and its stack cleaned up, we are further reducing the stack’s footprint without losing important functionality. The recently-released Kirigami framework, which allows developers to create convergent applications that work on both mobile and desktop form-factors, will be adjusted to use the new, more light-weight QtQuick Controls 2. This makes Kirigami a more attractive technology to create powerful, yet lean applications that work across a number of mobile and desktop operating systems, such as Plasma Mobile, Android, iOS, and others.

Plasma Discover
Discover, Plasma’s software center integrates online content from the KDE Store, its convergent user-interface is provided by the Kirigami framework

Online Services

Planned improvements in our integration of online services are dependency handling for assets installed from the store. This will allow us to support installation of meta-themes directly from the KDE Store. We want to also improve our support for online data storage, prioritizing Free services, but also offer support for proprietary services, such as the GDrive support we recently added to Plasma’s feature-set.

Developer Recruitment

We want to further increase our contributor base. We plan to work towards an easier on-boarding experience, through better documentation, mentoring and communication in general. KDE is recruiting, so if you are looking for a challenging and worthwhile way to work as part of a team, or on your individual project, join our ranks of developers, artists, sysadmins, translators, documentation writers, evangelists, media experts and free culture activists and let us help each other.

58 thoughts on “Plasma’s road ahead

  1. Keep up the good work. I really enjoy the 5.8 branch so far!

    One thing that popped up regularly here (but i do not know if this actually plasma or more frameworks work): It would be nice to give the plugin handling of the KRunner some attention. It keeps crashing completely because some faulty plugins. It would be nice to make this more robust (dont crash krunner if a plugin sefaults, etc).

    1. Well, we’d much rather fix the actual crash. Do you have a bug report for the problem? If you can get us a backtrace (preferably via bugs.kde.org), we’ll have a look at fixing it.

    1. We’re already using libinput. It’s an integral part of our Wayland support. You can make use of either when running X11 by configuring your display server like that. As to set up — I don’t know about the status and plans there.

      1. I can’t currently configure my touchpad if I use only xf86-input-libinput, it seems synaptics has to be present (possibly during build time) to be able to configure it in the kcm

  2. Will it be possible to install Plasma Mobile on any phone in the nearest future, are you searching for some sponsors? Basically whats the plan with Plasma Mobile?

    1. We need more people to make Plasma Mobile available on more hardware, until then, we can’t make any promises. This is a participative project, not something that will just evolve if enough people are watching (but nobody actually works with us on it).

      1. Do you have any pointers where one could go to, to get ones hands dirty with this?

        1. Sure, best is to hop into the #plasma channel on Freenode IRC and ping bshah. He maintains the Plasma Mobile stack and can help you get going.

  3. This is awesome. I am very excited.

    1. I suppose global menu plugin will also be released along.
    2. One thing about Plasma that bothers me is that we develop multiple competing apps inside Plasma. For example, Kicker, Kickoff, and AppDash. The problem is none of them offer all the features. One or the other is missing from all of them. It’s great that we offer variety but that also leads to lack of consistency as far as the desktop usability is concerned.

    I certainly understand the way OSS development work where you can’t force people to work on something they don’t want to work.

    1. Kicker, Kickoff and AppDash are using the same backend-code, they’re just different UIs for different kind of workflows.

      1. I tend to agree with Sudhir on this, that’s 3 different applications doing relatively the same job, for an end user, how do they decide which one they should use? Will they just stick with the first one they try? Will they install all 3 then give up using any of them out of frustration of missing feature from x is in y but z has x and not y?

        There have been many times I wished KDE would make a list of *standard* applications, one for each *purpose* – grouped purposes if possible – and start trimming away the bulk. My test install this week ended up with three photo viewers/collectors – each with a seemingly different purpose, but all doing a similar job, just with features scattered around;

        “oh hang on, I need to use x for this”
        “Hmm, x does everything y does, but it doesn’t have collections or tags”
        *uninstalls x*
        A little later, “oh that’s why I needed x, for that one thing y doesn’t do”
        Over-exaggerated sure, but probably not far off the truth. KDE project has always felt like “bloatware” – definitely back when it was impossible to install one app out of a collection in the kde2 days – even though this has improved immensely. Perhaps one thing that could be done is create a set of *official* applications, ones that will make a complete desktop with complete features, and any app not in this should be put under a clear third-party umbrella?

        1. Well, the point of the desktop itself is to allow running all kinds of applications. In the real world, this choice is up to the distributor.

          That said, there’s value in a set of solid, consistent and high-quality default applications. A problem is that 20% the feature set needed is different for many users, so the problem you describe is not that easy to solve (perhaps if someone developed the personal desktop with exactly the features you need for you, but realistically, it’s not).

          Plasma itself allows to mix and match components to an insane level, which makes it possible to set up the workspace tooling as you want by combining plasmoids and containments like panels. These can be installed from third party sources, as it is a very “open” system.

          1. I personally believe Plasma handles this in the best way possible.
            It comes with a default that is configurable by the distro.
            And then you can right click and chose “Alternatives”.
            I know no other system that not only lets you customize it with plugins/components/extensions but also tells you which of them are equivalent and interchangeable. And the system works the same across all kinds of widgets, not just the launcher.

            KDE is years ahead of everyone else in this case.

          2. Recently I installed Mint 18 KDE and the distributor did an excellent job chosing only one – the best IMHO – application for each task. The start menu is very, very tidy. I am delighted by all choices and only had to add several special interest apps I didn’t expect to be there anyway.

            So yea, it’s the distributor’s job. :-)

            [My OpenBSD KDE package installation OTOH …]

  4. Hi there,

    This seems great! Plasma and kde in general seems to get better and better each release. Thank you so much!

    I got one question for you: You talked about application menu here. The button seems nice, I used it back in the days. However, would there be other way to display application menu? For example, in the panel, in krunner or in the top of the screen? There were one a menu plugin for krunner, but it has been abandoned long ago.

    1. Yes, the plan is to make it available as a global menu, not just a button that opens a context menu. This is work-in-progress, the button shown in the screenshot is, so to say, the first “fallout” of that work.

  5. KDE needs to implement the following functions:
    – MTP read&write support for Dolphin (management of files with smartphones connected by USB)
    [actual workaround is installing Nautilus…]
    – “Turn-off” command for external hard disks, so it can be removed safely.
    [actual workaround is installing gnome-disk-utility…]
    – Skanlite must have an option to generate multi-paged PDF file
    [actual workaround is installing simple-scan…]
    – Ark must have options to generate splitted compacted packages
    [actual workaround is installing File-roller…]
    – K3b misses the resources to burn correctly an CUE/BIN disk image that contains type data track + audio tracks [It seems that workaround doesn’t exist]
    – Dragon Player lacks lot of basic options, like managing subtitles and audio tracks.
    [actual workaround is installing smplayer or vlc…]
    – Why Amarok can’t handle standard audio CDs?
    [actual workaround is installing KsCD]

    1. Would you be willing to file enhancement bugs at bugs.kde.org for these? (Assuming nobody has already, I’m sure some of them are covered.)

        1. How would you expect anything to get improved if you won’t communicate your wishes?

    2. Dolphin already has MTP read&write support if installed properly (haven’t checked how because it works ootb in opensuse). And there is already remove safely -option in Dolphin (Sidebar Places:Devices) or systray (Removable Devices).

  6. Greetings, from a long time KDE fan (since KDE 1 running under S.u.S.E. Linux 5.2, in fact :))

    Is it possible to tackle two important features for us, owners of convertible devices, that GNOME already has? I mean: a) Launching an arbitrary command when I slide my finger from the side into the screen. b) Support for automatic screen rotation, with UI to lock the rotation.

    I leave this as a suggestion, for future development.

    1. My blog’s comment section is a pretty poor way to record feature requests, they will inevitably get lost here. A much better way is to head over to bugzilla and record these wishes as bugs of the WISHLIST type. This means that they will not get lost (if not necessarily immediately get acted upon, that’s much more a question of resources and individual priorities).

  7. Very good post :)
    I will share the source for both Breeze and Oxygen themes for Firefox as soon as they reach a decent state, hopefully in the next days :)

  8. Finally. When I dropped using Unity, I decided: my favorite DE will be one, that will implement Global Menu feature first. Honestly, I do not like Plasma much, but I will switch to it if you will really add GM. I love Cinnamon, but seems like they not going to implement it, so KDE will be my choice.

    Will you make option to undecorate maximized windows to get full Unity experience? It will clean extra screen space for apps like Gimp, Inkscape (very important for laptops with small screens).

    BTW, it was surprise for me to notice that latest releases of KDE works smoother and faster in Virtual box with 2GB of RAM, than Unity/Gnome/Cinnamon…

  9. Sounds great! But when reading about your wayland plans I hope you don’t forget the multi-monitor support on X11, which is still… ehm… highly improveable ;-)

    Do you have any details about the plans for/state of KDE’s CSD? (I forgot the name, but once saw really nice mockups with media-player controls in the window decoration.)

    Thank you for your work!

      1. Thanks for replying. Basically all the problems happening with notebooks which are “travelling” between two docking stations having different setups. As I can restart plasma-shell whenever I re-dock, the “cosmetic” ones aren’t that grave, however. But things like #359542 made me lose data (or at least state of applications, since I try to save all the time) multiple times.

  10. Hi sebas, thanks for the article.
    It looks like Plasma 5.9 will shape to be an exciting release!

    I had a couple questions regarding the global menu that’s returning to Plasma 5.X and the mysterious DWD that was discussed at CERN, and some feature requests:

    1. From the graphics you provided in the blog, the global menu button is located in the application menu’s titlebar. When this feature ends up landing in Plasma 5, will it be possible to move the global menu to the plasma panel and have it display similar to macOS (File, Edit, etc.)?

    2. Can you give some insight to the mysterious DWD implementation that was discussed at CERN this year? Looking at Ken Vermette’s blog, DWD mimics the CSD look in GNOME, which I find very nice. DWD and global menu is an excellent combination. Will it arrive by Plasma 5.9?

    As for feature requests, I do have a couple that I thought would be neat. Here’s a screenshot of my desktop to help explain my feature requests: drive(dot)google(dot)com/file/d/0B4L7L438fmSgamd1bTVUa0lDZTQ/view?usp=sharing (remove the “dot” from the url, I’m playing it safe and trying to avoid the “waiting for comment to be moderated” feature that’s implemented in sites like disqus).

    1. If you look at my screenshot, you’ll see that there are 2 plasma panels: 1 that serves as the menu/system bar and looks similar to Unity 7/macOS panel, and the other that serves as a dock to launch applications. I thought it would be interesting to be able to theme the panel as one theme, and the other as a different theme. So for example, the top panel would be using the “Helium” theme, and the bottom panel (that is a dock) uses the “Glassified” theme.

    2. Right now, there are only two options to adjust the behavior of the plasma panel: always show the panel, or auto-hide the panel. Could we get an option to intelli-hide the panel? Intelli-hide shows the panel when no windows are obstructing the panel, but hides it when a window is maximized or covering the panel; to bring back the panel, the user would put their cursor to the top of the screen to display the panel to launch something. Incredible useful for users like I who use the panel as a dock. This feature mimics the Plank dock behavior, but I feel the KDE plasma panels has an edge over plank by being able to show notification count and have visual consistency to the desktop.

    3. Support for GIFs on the lockscreen. In Plasma 5.8, KDE implemented videos on the lockscreen. This, however, doesn’t include animated GIFs. When I loaded a GIF to be played on the lockscreen, it just displays the first frame and doesn’t loop.

    4. The Unity HUD feature. I get lost in the menus quite often, so searching up the option I need (for example, in Libreoffice, I always forget where the option to include headers in the document is in the menu). I was thinking maybe this could be integrated into the “Search” plasmoid, but it’ll be nice however way.

    Thanks for considering, can’t wait for Plasma 5.9 :-)

    1. 1. Yes, Kai is working on a Plasmoid that does that.
      2. I’m not familiar with the panel auto-hiding code, you could ask this on the plasma mailinglist, though.
      3. That is probably up to Qt, we’re using the Image {} QtQuick type for rendering GIFs, so you’d need a Qt image loading plugin for GIFs that plays all the frames. I haven’t looked into this myself, I think GIF is a pretty retarded format for most use-cases, so I personally don’t use it much, and we avoid it mostly in Plasma.
      4. Searchable menus are pretty useful, yes. I don’t know about Kai’s plans regarding that, but I’d be surprised if he hadn’t thought of that already (he also maintains krunner).

      1. great…….

        clarify me just one thing, then: when [eventually] QT6 comes out, will we have to go thru all this again (features being deprecated because of the migration into the new QT, like we had from kde3->kde4->kde5)???

        Or is this finally fixed/”future proof” (as much as it can be)???

        It’s just because i’ve passed thru A LOT of migration processes already and i’m beginning to get a bit tired of it

    1. For me, this feature was one of the best. It had helped me to keep the desktop clean without cascades of opened or minimized windows, have anytime an overview where opened windows / programs / apps are.

      Windows lacks of this feature. I don’t know whether it’s on Apple. For me it was a really outstanding attribute of KDE’s / Linux’es usability for daily work.

  11. awesome! nice roadmap and nice to share the roadmap :)
    one thing i really like with the osx style menu, is the “search” in the “help” section. it reaaaally helps when you have a lot of menu items… especially for newbees

  12. Wow, I must be a dinosaur or something. Please make “global menu” be an option that can be disabled. I would very disappointed if I had no other choice. Thank you.

    1. It was never planned to be made default (not in Plasma vanilla upstream anyway), but it’s planned to make it *available*.

  13. Glad to know that we lay out the new development plan and features to be implemented, but one thing that I really want and also a looking for future needs is HiDPI support.

    I know we have already support it in Plasma already, but the support is not perfect comparing to Mac and Windows 10. Btw, now I found that almost every Qt/KDE based image viewer/editor doesn’t suit for HiDPI correctly, except for XnViewMP.

    Btw, where can I know the plan for KDE Applications? There are two many applications depends on KDE4 or even some need Qt3Support built in.

  14. With the 5.8 release I am back on board (with KDE neon). One major thing that I would love to see adressed is the state of Discover; it’s not the bugs that nag me most, it’s the fact that it apperas conceptually to not be able to show packages as such or give information on packages available that are not GUI programs. Seaching and installing e.g. additional codecs (to convert that stupid video formats that come from regular digital cameras) is something that I could not realize with Discover. I guess asking for a Qt implementation of synaptics is off the point here (but would be nice anyways).

    Are there any plans to make Discover a true package manager?

  15. Hi from a long time KDE user.
    I use Linux whith KDE for my work!

    On my wish list is mainly stability.

    Currently I run KDE on Fedora 23/24@home and on Centos 7@work. At work I “downgraded” to Centos from Fedora because of unacceptable unstability in KDE.

    There are a lot of problems when docking and undocking. As a university professor I undock several times a day and moves to a classroom where I attach the projector or smart screen. But very often I find that I have to reboot in order to get KDE working as expected.

    So stability and ability to undock, dock and attach other screens and projecting devices is my concern.

    Of course it is nice to see improvements, but from what I see from the improvements is that they are not stable for “production use” until after several months of bug reporting and fixing.

    |<

    1. We have fixed a great number of multi screen and docking problems in Plasma 5.8. If you still run into problems with that release, please provide links to bug reports.

  16. +1 Giodai
    I miss that MTP & Skanlite features. Using Nautilus & Simple Scan instead

  17. The biggest Annoyance when you start a fresh plasma install is still kwallet. AFAIK the non-gpg way of setting it up isnt even secure. So do you have any plans for a replacement or at least – making it optional?

  18. finally another option than unity which has a global menu.
    Can you please integrate it in a similar manner to unity. Mouse over the window name and it displays the menu there. Not just a single button, but the whole menu.
    Its great for small screen laptops and the likes!

  19. Plasma keeps getting better and better. I finally switched my wife over several weeks ago from Windows and spousal complaint metrics are down 87%. Nice job all around!

  20. I am currently running Debian Stretch on an 11″ HP – x360 (kind of a tablet but with full functioning software instead of apps). Plasma works nicely and improves quite rapidly. The one thing I am really missing is a properly working multi-touch capable touchscreen with similar gestures as on Ipad or Android tablets.

    Is there any progress on multi-touch / gesture support for touchscreens?
    Is it on the roadmap at all?

Comments are closed.