2015/01/30

Software Rants 19: Plasma 5.2 Problems


So the KDE collection 5.2 just came out recently, including Kwin 5.2, a kcm to configure displays, Plasma 5.2, etc.

And after two days and endless problems I have to give up and go back to KDE4, again. So here is why:

  1. Performance. The moment by moment fluidity of Plasma is great now, but a lot of other aspects have hugely degraded in the transition, and a large part of it is probably the fact QtQuick still will not generate a render thread on Mesa drivers. You know, what a significant portion of the Linux desktop uses. Opening any program via panels locks the desktop up for a few milliseconds, because of that. It is so distracting and so adolescent a problem it makes the whole experience feel like a joke. You get sort of the same issue on KDE4 opening KDE5 apps (Arch has gotten rid of KDE4 konsole and kate, so you open the Frameworks 5 versions now) where it has to load all the shared libraries in addition to the program itself. But that is a good thing - it shows off how much of a benefit shared libraries are, because under Plasma 5 they open snappy and quick.
  2. Multiple Monitors. The real nail in my coffin for running Plasma 5.2 is that it plain DOES NOT WORK with three screens on my system. I have an r9 290, on top of Mesa 10.4, with four displays running off of it - a 1440x900 75hz ancient Dell monitor on the left on DVI, a 144hz 24" 1080p "gaming" monitor in the middle on dual link DVI, an IPS 1080p 21" panel on the right for coding and reading running over a DP to HDMI cable, and a 35' HDMI line through the wall to the living room TV to play movies or screencast with. And if I try to even start kwin with all these monitor attachments, arranged or not, it simply crashes, every time. I can get it to work with two monitors, but not three or four. It seems to take offense with the HDMI and DP screens. Regardless, I cannot use a desktop where all my monitors do not work.
  3. An addendum to the monitors - the new display configuration KCM is complete garbage. It has a single option under "advanced" in the refresh rate, which is just a waste of screen space and makes it seem half assed. It has no presentation of if or if not it is preserving its settings, and oh my surprise, it does not save a huge plethora of settings or at least remember them in the GUI, in that if you explicitly set refresh rates, resolutions, orientations, or positioning it will just randomly reset these fields to defaults whenever you apply changes. The UI Interactivity of drag and drop snapping monitors is great, that is great progress and is the best part. But everything else is lackluster and horrible and needs fixed, and I hope to find the time to try it myself.
  4. Plasma Shell crashes all the time. This is on Qt5.4, on kernel 3.18, on Mesa 10.4. Newest everything, so any bugfixes are here. Dragging panels, resizing widgets, opening programs, and just clicking the application launcher too fast crashes it. In my experience QtQuick2 is super solid and hard to crash, so I have no idea what unholy sorcery the shell is trying to do to it to make it so unstable, but it is not acceptable in what is now shipping in a mainline Kubuntu release.
  5. Kmix is complete garbage and needs a huge overhaul. The volume bar is neat and works when you hit the keys, gives a nice feedback sound and such. That works. Nothing else does. The UI is actually broken on Plasma 5 - on KDE4 with the Breeze theme the slider bars at least render correctly, albeit Veromix demonstrates a hugely superior interface for that. The control panel is also nice, and Veromix has nothing like it. But having this ugly ass Qwidgets slider amidst gorgeous clipboard and network management tray icons is a huge blemish to the experience. Again, if I had the time and skill to go into KMix's sources and rewrite it a nice QML interface with nice animations and drag and drop sinks and quick attach effects, I would.
  6. The kickoff plasmoid rewrite broke it somewhere, where you just lose the side buttons completely. I think adding favorites causes it. I could consistently reproduce it just by searching a few programs, adding some favorites, opening and closing it a few times, etc. For the stock launcher to literally remove the ability to find the programs list for most users at random is a huge oversight.
  7. The digital clock plasmoid has taken a huge step backward. I like the idea of basing all the system wide measurements and metrics off locales, but doing so means I'm stuck with the abhorrent month / day / year date everywhere, which I do not want. But I have no choice! I can't tell which other country uses ISO dates if any, and I have no way to configure my own locale settings anymore. I guess this is more a KCM issue. However, the digital clock still has completely broken NTP support on however it plans to sync time, so while I would love to not have to muck around with ntpd conf files by just setting it to the NA NTP server in the GUI, that doesn't happen. At least it isn't making inactive root password dialogs behind the window anymore. Actually, there is one down side - they removed the ability to set the font on the clock, and you can't put it in 24 hour mode anymore. I don't want AM / PM wasting space on my panels width, I know military time, let me set it to use it. It should be an option right under show seconds.
  8. System settings got a bit better, but the UI is still hugely painful. It should have adopted the syntax of how kmails settings module works, with tab groups on the left, tabs in the group on top, so that you weren't having these huge UI clashes where you were going three depth levels into a menu structure to find some setting. Also it solves the problem of how display configuration and window management are on completely opposite ends of the listing.
  9. Where the hell is Breeze GTK? GTK apps now look like burrito diarrhea with oxygen-gtk.
  10. Muon feels like a childrens toy. I'm not sure how the UI was designed, but it seems to be all custom QML without using controls at all, which make all the buttons and frames stand out as wrong. It also could use a bit of mobileization of its UI, since its a software store it really should be a Tonka toy in how you use it. And little things like being able to zoom in on broken images for apps makes it feel unprofessional. It is so much better than everything else we have that I have to gun for it, and it still beats out the Ubuntu App store, but it could do so much more.
  11. Bluedevil 5 always starts with bluetooth off. This is incredibly annoying when using a bluetooth mouse. There is no obvious setting anywhere to make it... turn on.. when you turn it on? And I have no idea who thought it would be a good idea to start your bluetooth program and NOT TURN ON BLUETOOTH.
  12. IconTasks got rid of its delayed tooltip option. This is another thing I want back desperately, because now it is impossible to use the context menus of system tray items because they have tooltips immediately popping up. This is an issue with kmix and bluedevil.
I'm still switching as soon as I can actually use my monitors on Kwin5. Now I have to dig through a thousand IRC channels, mailing lists, and bug trackers to try to find out if anyone else has reported it, and what I have to do to get upstream aware of the issue.

I guess I should mention the good while I'm here:

  • Breeze. Such a gorgeous theme in both light and dark. Everything about Breeze is glorious and makes me so happy KDE looks fantastic again. If anything it takes the sensibilities that Material Design approaches but does not go batshit crazy like Google did. My only complaint is that stain of a white pixel wide bar on Breeze Dark when the panel is oriented vertically. That really needs to be removed. The icons are great, hell even the Oxygen fonts are nice.
  • QtQuick2. When the shell is not freezing up due to not having a render thread, it is butter smooth, uses about a quarter less resources in total than KDE4, and looks great with the new notifications center. The icons on panels scale very fluidly now where they didn't in KDE4. The only thing missing is a Plasmoid grid - having the ability to arbitrarilly position plasmoids is great, but you should also be able to orient them into a block grid that snaps them in place so you need less finesse to make your desktop look nice. The grid does not need to be overly large - I could imagine a standard sized notes plasmoid taking up a 4x4 or 8x8 region.
  • Frameworks are a huge improvement over the monolithic kdelibs. Fundamentally KDE5 for everyone but the Plasma Designers was cleaning up technical debt, and I think it will pay off hugely in the coming years. The technologies underlying this cycle are top notch and hopefully these roadblocks don't last very long. I was not around for the KDE4 release debacle, but it seems to be less bad this time.
I'm still really worried about Kubuntu 15.04. I really want to stick everyone I know ever on it - Muon is good, Systemd is necessary, Plasma 5 should be great, but all these issues make me feel that the time is still not here. It might be Qt 5.5 or 5.6 and Plasma 5.3 or 5.4 before this stuff is resolved and I can actually start using it, and it will be just in time for Wayland to break everything again. I almost wish that Kubuntu and everyone were pushing for a configuration with Weston as the system compositor and Kwin as a local one until Kwin can take over Westons job rather than continuing to use X11 and thus running into another wall of bugs when everyone starts beating up Kwin-wayland.

PS: A lot of these are turning out to be Arch-only problems, at least from my experience. Kubuntu 15.04 on a clients desktop on radeonSI is running pretty much flawlessly, with no menu breakage, bluetooth turns on by default, kmix inherits the theming from the system properly. Only difference is the GTK apps aren't getting Oxygen styled, they are getting the GTK fallback theme.

I really do think all these kinks are just another release cycle away from resolution, though, so hopefully four months from now 5.3 can pull me in fully.