On KDE 4.3.3

I finally did it: I compiled and installed KDE4 on my laptop on the 5th. Took all night. Hours and hours, but it was ready the next morning, with nary a compile failure. Which is good, since it is the stable branch and all. But wait . . . KDE?

Why KDE?

In a word, SLiM. Sometime in mid-December I caught an X11 update that made SLiM stop working. Or maybe it was something else. My theory is it was the xinit update that dropped twm, xclock, and xterm from the required runtime deps. So abruptly SLiM stopped working, and I couldn’t login graphically; I just got errors saying “Couldn’t execute login command” with nothing else in my logs. Forums didn’t help. I could run startx manually, but that’s a pain. I unmerged SLiM and started looking around for alternatives. GDM is one, but it drags in a bunch of Gnome dependencies. XDM is just ugly and unconfigurable, and lacks the appropriate shutdown/restart/suspend actions. KDM was the last candidate. Yes, it had lots of KDE dependencies, but I figured that if I installed KDE4, then it wouldn’t have as many deps, right?

Yeah, I know, it’s like: “But . . . aren’t you an Xfce guy? Don’t you exclusively use gtk+ environments (including Gnome in years past)? Don’t you hate heavyweight crap or endless C++ compiling?”

Yes, yes, yes, and yes. I know. But here’s the thing: after initially getting excited about Aaron Seigo’s (now canceled) upcoming talk on KDE at SCALE, I then found out that Camp KDE will be right here in San Diego, just a few miles from where I live. So I started thinking — now that things have settled down since the disastrous 4.0/4.1/4.2 days, maybe . . . maybe it would be worth experiencing directly what “the future” is all about, according to the hype machine. I’m thinking of visiting Camp KDE, so I thought if I do, I should have some knowledge of how KDE currently works.

Past and present

The last time I ran KDE was back in late 2004 or early 2005. As far as I remember, it wasn’t even on Gentoo, but on other LiveCDs and distributions. I still have an old Knoppix CD from 5 or 6 years ago lying around — and that was KDE3-based. Given Plasma and all the other new buzzwords and technologies and new paradigms, I figured it was about time to see how things have progressed.

Or stayed put.

Configuration

True to form, KDE4 still makes configuration this massively complex, insanely arcane art. You need an engineering degree to wade through the simplest of configuration menus, even when right-clicking on an item in your panel — if you can find it, that is. The dialogs are very inscrutable; it makes navigation difficult. All these weird arrows and spaces and popup panels in the default theme, not even something with extra bling.

One of the first things I did was turn off that stupid window-that-is-not-a-window on the desktop, so that I wasn’t distracted by all the flashy Plasma widgets. After that, I spent a half hour trying to tweak the font settings. I discovered that buried in the Antialiasing dialog are the actual hinting and RGB subpixel hinting configs that I was looking for, though there’s a catch. You can actually disable (that is gray out) the AA option, which makes you unable to get to the stuff below it. BUT, as long as you’ve tweaked your hinting settings before exiting that subdialog, that’s okay! You just have to re-enable AA to get into the hinting subdialog. Stupid, I know. The Xfce way is much, much better; all three options are exposed top-level.

After making my desktop readable with Verdana fonts, it was time to start poking around. And around and around and around — it’s easier to navigate the Windows Control Center than KDE CC. Things haven’t changed there in 6 years. It’s especially bad when you get to the properties of your Qt theme, in this case, QtCurve. Several dozen confounding lines popped up in the right box, dizzying amounts of tweaks that should in no way be exposed to the end user. Seriously, just let the theme author set ‘em and forget about ‘em. If there need to be variants…don’t expose every last line of optional code to the user.

Integrating gtk+ apps

Despite some initial setbacks, I decided it was time to start installing a few more packages. See, I wanted a bare minimum install, which turned out to be 74 packages for kdebase-startkde and kdm. That’s after tweaking my USE flags for half an hour to whittle the dependencies down. Yeah, that’s the bare minimum — I was at only about 470, 480 total packages for my very minimal Xfce environment. I like my laptops to run lean.

Then I added qtcurve-qt4, gtk-engines-qt, and kcm_gtk, since without the unfortunately ~arch kcm_gtk, it’s not possible to have your gtk+ apps use your Qt theme. This needs to be rectified; the gtk+ module should be stabilized ASAP, given that everything else is stable. Once in place though, even Firefox behaved nicely with my Qt theme. Very nice.

After fleeing from the QtCurve controls, installing kcm_gtk, and restarting KDE, I was able to get my gtk+ apps integrated nicely with KDE. That’s one area that KDE4 beats Xfce and Gnome, at least in Gentoo. We don’t have a “Make your Qt apps look like native gtk apps” gtk+ engine in Portage.

Packages: webbrowser

I still needed a file manager and a webbrowser, so I decided to install Konqueror, having used it in years past. It turns out that Konqueror doesn’t have dual-functionality anymore; it’s just a webbrowser. A webbrowser that can’t use Flash until you install kde-base/nsplugins, FYI.

Konqueror startup is much better than it was 5 years ago. It’s still kinda slow, but not as slow as Firefox! The downside is that when running, it tends to be a bit slower since it doesn’t have the nice Adblock features that the Firefox extension offers. Yes, it can kind of do Adblock with lists, but as far as I could tell, it was still downloading all the “blocked” content and rendering it, but just making it invisible via CSS or some such mojo. It’s still doing all the processing of heavy Flash and Javascript, but where you can’t see it. Contrast that with never downloading blocked content in the first place.

Speaking of Adblock, I think the main reason why I’m still on Firefox is that there’s not a single Adblock implementation that has the functionality of the Firefox version: making it easy to right click on anything, Flash, iframe, image, text, etc, and add it to the blacklist with a simple click. Nothing else even comes close, and I’ve tried almost all the gtk+ webkit browsers out there. None of them can do it. Which is too bad; I love webkit’s speed and rendering accuracy, but no browser that uses it has integrated an easy-to-use constantly-configurable Adblock plugin. Maybe Arora, Rekonq, or some other Qt browser can, but I’m not holding my breath.

Packages: file manager

So I’m still on the lookout for a good Qt webbrowser, and a file manager while I’m at it. Supposedly Dolphin is the new Konqueror, but the jury is still out on its dependencies because of weird USE blocks. I’ve been sticking with Thunar, which now looks good in QtCurve, except for the icons. I get a lot of default blank icons even with the help of kcm_gtk. For some reason, despite activating the right setting, the KDE icon theme isn’t fully integrated with Thunar. I’ll give Dolphin another shot tomorrow.

Packages: terminal

Konsole works decently — it doesn’t start up as quickly as Xfce Terminal, but it does blend nicely with KDE (of course). Its configuration works just like the ol’ Gnome terminal: instead of the simple, obvious “Edit Preferences” menu found in Xfce Terminal, you have to click “Edit current profile.” Which means you have to know what a profile is, that you’re using one, and that it has things you want to change in it. Still, Konsole is fairly configurable; I got it to my preferred white-on-black setup, with my fonts just how I like ‘em. It did what I wanted it to after a bit, though I didn’t find the option to disable “Scroll on output,” which is annoying when I want to read a bit of emerge output in mid-compile. Minor nitpick; I’m otherwise satisfied.

Speed and desktop effects

Performance is another matter. Yes, I am running a mostly stable/some ~arch Intel graphics stack, on an X3100 IGP, but come on . . . I expect window moving, resizing, fading, and switching to be snappier! Once I enabled desktop compositing, it both helped and hindered window usage. The OpenGL renderer is faster than Xrender. Xrender is much slower at window fading and moving; there’s lots of lag. However, the OpenGL renderer leads to buggy themes — about half the Qt and Kwin themes are unusable because of serious visual glitches and artifacts that corrupt the widgets and buttons. This is present to some degree even in the default Oxygen/Ozone themes, and to a lesser extent in QtCurve. Sometimes widgets flash real fast or in weird colors when you mouse over ‘em, sometimes they remain normal. It might just be Intel graphics code; who knows. It doesn’t happen when using Xfwm4′s Xrender compositing, though. Xfwm4′s compositing is also very snappy, with no slowdown.

While there are some performance issues, and some OpenGL problems, I did discover something rather neat: the snow widget! KDE4 includes an awesome composite trick that brings weather onto your desktop. You can set it up so that there’s gently-falling snowflakes behind all your windows. Awesome! So peaceful and cozy. If I take away one thing that gave me a good feeling from the experience, it was enabling the snow candy — which isn’t as hard to do as it was in Compiz, I might add.

What I really want now is some “rain” eyecandy that does the same thing. Or better yet, some kind of Plasma widget that sends rain/snow/wind/sunshine/etc. across my desktop depending on what the actual weather is in my area. Anyone heard of something like that? It’d probably have to tie in to accuweather.com or something. Man, that’d be sweet!

Panel widgets

Speaking of desktop widgets, while I haven’t even scratched the surface of what Plasma can do, nor of all the thousands of Plasmoids out there, one widget that really bugs me is the clock in the panel. Seriously. What is up with this useless clock? Its only config options are “fonts,” “timezone,” and “timezone.” Oh yes, and “timezone.” Is there enough timezone yet? Apparently not. I can’t even make it 12-hour, nor display the month/day in the format that I’d like. Even Xfce’s not very-click-userfriendly clock at least gives me full display control by offering the time shell codes. Once I learned how they work, I set it up to my liking: %a, %b %d %l:%M%p, which results in Wed, Jan 06 11:47PM. I can’t do that in KDE.

Heck, the menu that I get from clicking on the clock widget is not the same menu I get when going to the KDE CC and clicking the time dialog there. That’s another HUGE gripe of mine against KDE over the years: so many different menus in so many different places, for the same option or really similar options. What I really don’t like is right-clicking an object to see one menu, but then I see a totally different menu when left-clicking it. Oh man, you’ve just lost a lot of points in your UI design right there. The other thing in KDE that bothers me is the constant renaming of things. It’s not always just “Properties” in the right-click menu, nor is it always easily accessible. Sometimes I have to scroll down to hit a horizontal arrow that exposes the “Properties” dialog or whatever it’s called.

I don’t think this is because it’s an add-on application; this is all the stock KDE you get from emerging kdebase-startkde, not some random app from kde-look.org. Shouldn’t there be more of a unified, easily accessible user interface? It feels like the right hand’s not talking with the left hand throughout the desktop.

Future

Still, I want to press on and learn the system. I want to get through it and use it long enough to really see if it works for me. There’s also the school of thought that says that if I have to adapt myself to the tool in order to use it, then the tool itself is broken from the start. Something to think about.

There’s also this whole “semantic desktop” framework that’s part of KDE. I have no real idea what it is, how to use it, how many resources it consumes, or even if I want it. But it’s something I want to try out . . . somehow.

Assuming that I do stick with KDE’s foibles’n'gripes and take the time to get over the learning cliff, deal with all the pesky annoyances, and generally persevere . . . I’ll need to install more applications to get a useful workspace. If I’m going to take the time to get a good dual-boot desktop environment going, I need something to make it productive. That means music and video players, spreadsheets, word processors, instant message apps, a mail client. (Oh, the horror of migrating yet again, having lived through the Thunderbird -> Claws move). CD players/rippers/burners. Printer utilities. Easy WiFI/networking controls. Power management tools.

All kinds of apps that I have some idea about, but only from “the other side of the fence,” things I’ve only read about in the gtk+ world. On the other hand . . . as long as my existing gtk+ apps are integrated visually into KDE (thanks to QtCurve) and “just work,” maybe I don’t need to duplicate my entire Xfce environment?

Still, suggestions and feedback are very much appreciated.

24 thoughts on “On KDE 4.3.3

  1. The chaotic QtCurve settings have nothing to do with KDE. It’s a custom configuration dialog written by the author of QtCurve.

    The clock can be made to display time in 24-hour or 12-hour format in the Regional Settings part of System Settings.

    “What I really don’t like is right-clicking an object to see one menu, but then I see a totally different menu when left-clicking it.”

    I really hope you’re joking with that statement… Seriously, no one in this world would think that both mouse buttons should produce the same menu.

  2. As a fellow XFCE user, I went with GDM after finally getting fed up with buggy old SLiM. There’s a new lightweight one on the scene though. Check out Orthos. I was going to use it on my old laptop but it needs OpenGL – that machine is lumbered with a trident card, ack! Not that I’m anti-KDE or anything, I put my wife on it. XD

  3. On the SLiM not working, it’s an easy fix actually.
    Changed the /etc/slim.conf to call the .xinitrc of your User and pass it the Session choosen e.g. change the login_cmd to

    login_cmd exec /bin/bash -login ~/.xinitrc %session

    The X11 update to xinit broke the xinitrc for slim.
    I’m yet to get to see what changed that it broke.

  4. For the GTK Icon thing, the only known workaround is to set up the
    gtk-icon-theme-name=”gnome” or “oxygen” or “tango”.
    in the gtkrc under the kde config.

  5. KDE4 works fine, but on a really powerful machine only, like my laptop core2, 4gb etc. It’s heavy like Windows now. Do you really need such a monster just to run things?

    I started to use e17 0.16.999.063 (from e17 overlay) on my old T42 laptop with KDM. I might try “slim” instead, thank you for the hint. As for the browser, I use chromium-bin only. It fast and just works ™ including extensions support.

  6. Re: Slim “Couldn’t execute login command” issue.

    If I remember correctly /etc/X11/chooser.sh (or/and xinitrc) had changed changed. And somehow user’s .xinitrc and .xsession are no longer honored.
    Creating global XSESSION=”Xfce4″ (via /etc/env.d/) will let you login.

  7. Hi, as a casual KDE4 user I wanted to point out 2 things:
    1. Konqueror can work as a file manager too, it never lost that functionality.
    2. About the usability issues you raised, I think you should contact Celeste Lyn Paul. She works on that. She posted on her blog the kde usability goals for 2010 and I think you might be interested to tell her your concerns.
    Cheers.

  8. I’m an Xfce user/fan who also just tried out KDE 4.3 this week.

    I’ve never been a fan of widgets/gadgets/screenlets, so Plasmoids didn’t really do a thing for me.

    There are lots of great visual and Compiz-like effects, which I have nothing against, but are really not a great advantage when you are web browsing or getting work done.

    Other than that stuff, I’m unclear on what I could possibly do on KDE that I can’t already do (and with my preferred GTK apps) on Xfce.

    I think they are doing great work though, I wish them continues success.

  9. @RealNC:

    Thanks for the clock tip. Regarding the menu confusion, no, I’m not joking. Remembering which menu is for which series of clicks forces me to do what KDE wants, instead of the tool doing what I want it to do.

    @Chewi:

    Thanks — I hadn’t heard of Orthos; I’ll see if there’s a Gentoo ebuild somewhere, or else I’ll write my own.

    @Rajat

    That SLiM doesn’t work for me, unfortunately. I’ve tried using /etc/X11/xinit/xinitrc and ~/.xinitrc, but neither work. The exact same config for SLiM and xinit works just fine on my desktop box. None of the config files changed, but the laptop broke on the same update that didn’t break the desktop workstation.

    Thanks for the gtkrc tip.

    @deadhead:

    I’ve tried Quake-like terminals before; just a couple of weeks ago I spent a few days with Tilda, the gtk+ equivalent of yakuake. I ended up removing it — I kept forgetting it was available, since I kept clicking the Terminal quicklaunch icon on my panel, since I do like to have multiple terminals open at the same time. Originally I thought that I could do everything all in one terminal and save some screen space, but it turns out that the work I do requires a few open terminals side-by-side for direct comparison.

    @Anton:

    My laptop is a Thinkpad R61i, which runs a 1.5ghz Core2Duo, and I’ve upgraded it to 4GB RAM. KDE overall has acceptable speed, though the first login after boot is kinda slow. I think it really is mostly the graphics stack (either KDE or X11) that’s not compositing quickly enough, since the X3100 chip in the laptop is clearly capable enough under Xfce. Then again, it wasn’t doing OpenGL compositing in Xfce, either.

    @Vadim:

    Thanks, but this doesn’t work for me at all. I’ve alwyas had /etc/env.d/90xsession, but SLiM still didn’t respect this or xinitrc.

    @Pete:

    I did say “in Gentoo.” I’m well aware of Qgtkstyle, but we don’t have it in Portage. We did briefly have something similar, but it was pulled almost immediately after being added; I think there were some serious problems with it.

    @jrdls:

    From what the postinstallation output of the Konqueror ebuild said, it doesn’t have that functionality until I install Dolphin. I’ve poked through the Konqueror menus, but I can’t get it to work as a file manager all by itself.

    @Jeremy:

    Yeah, well, it still works on my desktop box, too. :)

  10. > @RealNC:
    >
    > Thanks for the clock tip. Regarding
    > the menu confusion, no, I’m not
    > joking. Remembering which menu is for
    > which series of clicks forces me to do
    > what KDE wants, instead of the tool
    > doing what I want it to do.

    Same goes for your the DE you used before. If it shows the same menu with both buttons while I don’t like that, it also means that it forces me to do what it wants, instead of the tool doing what I want it to do :P

    Some things should be accepted as-is. KDE works like that for a reason, and people should learn how to use it. Expecting a tool to be configurable beyond the bounds of sanity and common sense is unrealistic. Some things should be configurable, but not the whole thing. That would be overkill. Simply learn to use KDE. It ain’t really rocket science and it pays off ;)

  11. QGtkStyle (that is, using GTK+ to paint Qt widgets) is part of x11-libs/qt-gui with the gtk USE flag set; you don’t need any external package to get it to work. Going the other way (using Qt to paint GTK+ widgets) there have been a few attempts, but they tended to break in strange ways, so I’m not sure if any of them are currently in Portage.

  12. For QGTKStyle, isn’t that what you get with USE=gtk for x11-libs/qt-gui?

    Also, your blog doesn’t seem to accept Google’s webmail as a domain for email addresses (and the comment spam filter also complains)…

  13. Enjoy the Darkside, traitor! heh j/k :) Don’t forget us Xfce folks though, swing by and let us “criticize” your desktop from time to time!

  14. > We don’t have a “Make your Qt apps look like native gtk apps” gtk+ engine in Portage.

    Yes we do.

    Reemerge qt-gui with glib and gtk USE flags.
    You’ll have GTK+ style available in qtconfig and KDE System Settings.

    It’s actually preferred way as it’s much better implemented than the other way around.

  15. I’ve taken stabs at KDE4 after the .0 .1 and .2 releases. Each time, there have been big promises from devs and users but each time, it’s been buggy, crashy and slow.

    I’ve also been underwhelmed by what has worked. Qt4, Plasma and other touted technologies provide so much potential but using KDE4.x, I might as well be using Xfce. I’m really hard-pressed to say KDE does anything besides customisability (and visual clutter), better than any other DE/OS. Unless you’re someone who lives to re-design their desktop daily, there’s no benefit to speak of.

    There’s also the double-edged sword of design vs. customisability: it’s hard to be impressed by KDE’s design vision, beyond it’s lego brick-ish-ness, simply because beyond ‘infinite pieces, in infinite combinations’, there’s really not much design to speak of. KDE is just generic and sans-personality.

  16. About the desktop manager:

    I used GDM and XFCE for a long time and it works really well. About a month a go I thought I should try a more lightweight desktopmanager and tried SLiM. I didn’t had the feeling that SLiM starts faster than GDM but it looked nice so I gave it a try.

    But I was disappointed. Entering my username/password the key bounced all the time. Don’t know why. I never had this problem with GDM, XFCE, etc. A second thing I don’t like, was the increasing time span from desktopmanager to a running XFCE session. It’s probably because GDM already loads all the Gtk+ stuff while using SLiM Gtk+ has to be loaded during XFCE start.

    So at the end GDM+XFCE worked much nicer and much more slick than SLiM+XFCE and I went back to GDM. I don’t think GDM has much GNOME dependencies. Most dependencies I already need to run some Gtk+ apps anyway.

  17. @Maciej, Ivan, ABCD, Ben:

    Ahh, thanks for clarifying. I’d thought Qgtkstyle was the name of one of the external packages that had been added to Portage but removed. Good to know that it’s actually built-in — though I am a bit surprised that the ebuild doesn’t mention installing kcm_gtk at least in an elog message. Suggested runtime package dependencies (SRDEP?) would be a nice feature; Debian has something similar.

  18. KontrolCenter
    it’s almost a carbon copy of Mac OSX settings pannel. And Mac’s are claimed to be the most “user-friendly”

    Clock settings
    Same like on Mac – most settings are in central place. So regional settings is where you should be changing

    “…True to form, KDE4 still makes configuration this massively complex, insanely arcane art.”
    After quite a few years of using KDE I can say same thing about any other DE. Why? because I’m used to how things laid out in *my* DE ;) Without trying to start flame wars I’d say KDE configuration is on par with Mac OS X and allows for much greater flexibility than Mac OS X or Gnome (not sure about XFCE – never used it).

    Konqueror
    I think you’d be better served if you installed entire KDE set (kde-base/kde-meta) and saw ALL of the KDE without self-imposed limitations – it might change your mind on some subjects. However Flash in Konqueror still is not a “first class citizen”. Something to do with Flash plugin APIs etc.

    Konqueror vs Dolphin
    To tell you the truth – Konqueror is my weapon of choice for complex file-management tasks and other funky ideas I sometimes have in my head. However Dolphin is a light-weight tool for quick file operations, I found. So I use both in different circumstances.

    Desktop effects
    From my experience those highly depend on your hardware. Running KDE4 on 3 different boxes – 2 intels (950 & 945) and NVidia – I had different results. NVidia was seriously buggy in previous releases, and now it’s rock-solid in KDE, however Intels are showing sometimes weird side of themselves.

    Summary
    the whole point of KDE is integration part. I wasn’t able to reach the same level of integration with any other DE I’ve tried so far in so many applications. My setup consists of mainly KDE apps with several exceptions: Firefox, Gimp, Dia, OpenOffice. However Krita is getting there, Umbrello I use when I truly want to draw a UML and Konqueror is being used as a browser for all secondary browsing tasks (open links from my emails, akregator links, etc.), and I found myself reaching for KOffice more and more often.

    All you need is to get full KDE install to decide which parts are of no use to you and then slim it down – not the other way around, if you want to get some positive impressions from that DE.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>