Skip to content

Lubos Lunak 

Blog Moved

Sunday, 10 February 2013
I've moved my blog to http://llunak.blogspot.com. As I no longer focus on KDE (and even previously my blogs were often more about openSUSE than KDE), I've moved to a more generic blog site. KDE-related posts will still be aggregated on Planet KDE. Read More

Desktop-per-screen (multiple monitors improvements)

Tuesday, 4 October 2011
There's been a "small" upgrade to my desktop machine at work, and as a part of that I got my hands on a 1920x1080 Dell monitor and couldn't help placing it as a secondary monitor, rotated. And I couldn't help noticing various problems with this setup. Read More

Packager-O-Matic

Wednesday, 30 June 2010
As already mentioned, I have this certain tool in works that can do various magic when it comes to creating packages, especially for people who have no idea how to do them themselves. And since Read More

Difficult, difficult...

Monday, 28 June 2010
It is interesting to notice what is sometimes seen as difficult. "It's too hard for me, I can't do that." "I'll never be able to do that, that's nothing for me." Like if most things could be done instantly just by snapping one's fingers. They instead require all these tedious things like effort, trying, learning, practicing and so on. The funny thing is, figuring out things in the IT area is not really that demanding. Wanna write a Plasma applet? There's a step-by-step tutorial at Techbase, just follow it blindly and with a decent skill in reading and typing, tadda, there's a Plasma applet. Wanna a package in the build service? You can use another one as a template, find a tutorial on the wiki or just google for it, and if you'll be just a little lucky, a tool can even do the work for you. Read More

Details that sometimes do matter

Wednesday, 23 June 2010
Some things are really really tiny details, yet they can be annoying in way. Something that's been occassionally bugging me is that fact that KDE uses the same wallpaper as KDM background, the splashscreen background and desktop background, yet depending on the screen resolution it may not be exactly the same background - during login the picture may stretch or shrink at certain points. The times when decent monitor screens had a 4:3 ratio are a thing of the past, starting with LCD makers making 5:4 "narrow-screens", then changing their minds and making 16:10 or 16:9 wide-screens. The choice of screen resolutions is not that limited either and that means that the wallpaper has to be scaled ... and that was the problem. Plasma has code to select how to do the scaling, KSplashX has code for that and KDM has code for that, and yes, you guessed it, it's always a different code. So unlucky resolutions get different wallpapers from different code. Since I actually spent some time in the past trying to make the login as seamless as possible, this indeed made me twitch whenever I saw it. Read More

On-demand package installation in openSUSE 11.3

Monday, 24 May 2010
You most probably have already run into this at least once. You use the computer, try to do something and you get an error message saying "sorry, application foo is not installed", "the required plugin bar is not installed" or similar. And that's it, there it stops. You have to find out what package the required functionality is in, install it manually and try again. Like if the computer couldn't ask "but maybe I can install that, do you want me to try?" and handle it itself. Read More

On benchmarks

Wednesday, 10 March 2010
Do you know this one? Phoronix tested md5sums of ISO images of distributions. The winner was openSUSE, scoring e29311f6f1bf1af907f9ef9f44b8328b, which gave it a noticeable lead before second Slackware (b026324c6904b2a9cb4b88d6d61c81d1), which is quite closely followed by Fedora (9ffbf43126e33be52cd2bf7e01d627f9) and Debian (9ae0ea9e3c9c6e1b9b6252c8395efdc1). The difference between these two distributions, as you can see, is only very small. Ubuntu completely flopped in this test, achieving only 1dcca23355272056f04fe8bf20edfce0, which is surprising, especially considering that its previous release scored a very nice c30f7472766d25af1dc80b3ffc9a58c7. (source). Read More

Package KDE applications easily for multiple distributions

Friday, 5 March 2010
Those that were at either CampKDE or FOSDEM might already know, so for those this is a status update, for the rest: I've been working on a tool that makes it quite easy to create packages in the openSUSE build service, which despite the name can create binary packages also for other distributions than openSUSE. If you've ever gotten a mail asking for a binary package of your application or help with a compile problem, this could make your life easier. Read More

Exmap fixed, and a little resulting peek at memory usage

Sunday, 14 February 2010
I have fixed Exmap, my still favourite tool to measure system memory usage, to compile with latest kernels, and also to work on x86_64 (the latter was a bit of guess-work, but I think I got it right). KSysGuard seems to be getting close, and with Exmap unmaintained by its author :( I don't feel like doing this forever, but for now, it's still possible to get exmap from my home:llunak:kernel repository. And as I don't feel like trying to do cross-distro kernel packages in the buildservice, those not using openSUSE are left with either trying to package it for their other distro, or pick out the patches from the .src.rpm . Read More

Today's magic fix: Fast Konsole redraws with nvidia

Monday, 11 January 2010
There is something magical about hacking on things without having much clue about them. It almost feels like a treasure hunt, with mysterious traps all along the way and an elusive treasure maybe at the end. Today's treasure is KDE4's Konsole (preferably not) being awfully slow with some fonts. Specifically, as irony would dictate, the rule could be almost said that the better suited font for Konsole the slower the text rendering is, whereas if the font breaks the text layout completely or hurts to look at, the speed is just fine. Read More

openSUSE KDE bug squashing - take a part

Monday, 30 November 2009
So, openSUSE 11.2 is out, and that means a lot of people start using it and, well, occassionally run into bugs and sometimes even report them. As much as 11.2 appears to be a fine release, this is bound to happen now too, and that means that the number of KDE bugreports for openSUSE in the Novell bugzilla will grow again and will need to be handled. Read More

openSUSE 11.2 is out. And a couple of KDE release notes.

Thursday, 12 November 2009
Oh, yes, just in case you haven't noticed, it's out. However, since I maintain this image of seriousness, purposefulness and so on (which I only occassionally spoil by something like doing strange things to my hair, eating way too much icecream or doing silly things at SUSE outdoor events), I would like here to reference the KDE release notes for openSUSE 11.2. We recalled at least the Pulse Audio thing a bit too late, so maybe right now the actual release notes do not mention it yet. Read More

Firefox KDE Integration

Tuesday, 3 November 2009
Now that the mention of the Firefox KDE integration I've done has reached also the dot, I guess it's time for a couple of things that don't quite fit into an article but I should probably say them somewhere anyway. Read More

KDE 4.3.2 and openSUSE 11.2

Friday, 16 October 2009
Since it seems it will turn up quite often, I would like to answer the question 'Will openSUSE 11.2 include KDE 4.3.2?'. The short answer is no and yes :). Read More

Preselected desktop on openSUSE and what it means in practice

Thursday, 20 August 2009
The decision on the matter of the (not)preselected desktop in openSUSE has been made. You can read about it in the mail announcing the decision, I would like to just offer a KDE view, from Will and me. Read More

KDE and resource usage - how to get it wrong in several simple steps

Monday, 10 August 2009
Do you want to write something about KDE's memory usage? Simple, just follow these steps: Launch KDE. Run some random tool for measuring memory usage, preferably top. Pick a column you think you know what it means. If you can't decide, just pick one, preferably something with big numbers (big numbers look better, remember). Complain that the numbers are way too big. For higher bonus, compare it to something else, preferably something that gets nowhere near KDE's usage of shared resources (=libraries, mostly, but not only). ??? Profit! Really, it's as simple as that. So many people do it, you can too. See, for example, this review of KDE4.3. I have nothing against the review itself, since, I admit, I mostly skimmed over it, only two things caught my attention. First one was getting it backwards who copied from who the filtering feature in Present Windows compositing effect, which slightly amused me, and second one was the part talking about resources, which didn't. Read More

WMIface 2.0 - CLI scripting of any (decently wm-spec-compliant) window manager

Wednesday, 8 July 2009
I noticed yesterday that at the kde-apps.org page for WMIface, a tool that allowed scripting the window manager used by KDE3 from command line, a comment appeared asking about a version for KDE4. It felt like a good idea to do something as simple as this in the evening as a relaxation, so, after quite some time playing with C++ templates and so on (since I'm a lazy developer and therefore I went with doing some extra work that would save me from doing work), I have to disappoint you. There is no version specifically for KDE4. In order to reduce the dependencies I made it depend on just QtCore and X11 libs, with those few important classes from kdeui copied into the project. No KDE dependency whatsoever. This provides the CLI tool with startup time decent enough for direct usage, and makes it usable on every system, KDE, GNOME, Xfce, whatever. Read More

If the Qt WebKit KPart is not answer for a KDE browser, why does it seem to (kind of) work for me?

Saturday, 4 July 2009
This may look like beating a dead horse, but it seems like many people discussing the WebKit issue not only actually don't have much of a relevant technical knowledge, but even fail to simply do a reality check. Because I have tried the WebKit KPart and while I can't say it worked perfectly, it worked. I don't see why I should even myself feed my personal data to Google or what's the point of suddenly needing a webpage for friends, so no GMail of Facebook, but I tried a couple of sites, including YouTube or using two online bank systems to make payments, and I mostly got done what I wanted to get done. Ironically the worst breakages I found were search on kde-apps.org or Martin Graesslin's blog, which possibly may be bugs in WebKit itself. Not that I tried that hard to break it, but after all, you can try out WebKit in Konqueror for yourself (openSUSE users can get the WebKit KPart from the KDE:KDE4:Factory:Desktop repository together with the rest of KDE4.3RC1) Change the association in 'keditfiletype text/html' or temporarily in Konqueror's View menu. Read More

Packaging KDE applications for multiple distributions in the openSUSE build service

Monday, 29 June 2009
If you look at for example kde-apps.org or kde-look.org, there are numbers of various KDE applications, utilities, styles, decorations and what not. Various contributors post there their work for others to try and use. This is the place where new software or other contributions often look for their first users. Read More

OpenOffice.Org KDE4 Integration

Tuesday, 16 June 2009
Since Kendy's blog has somehow disappeared from Planet KDE, let me copy&paste one entry (http://artax.karlin.mff.cuni.cz/~kendy/blog/archives/monthly/2009-06.html#2009-06-15T14_37_23.htm): Thanks to the heroic efforts of Éric Bischoff, Bernhard Rosenkränzer, and Roman Shtylman, the OpenOffice.org KDE Integration has been ported to KDE4. It still has some rough edges (currently the detection does not work out of the box—you have to export OOO_FORCE_DESKTOP=kde4 to get it), but it is safe because it co-exists nicely with the existing KDE3 integration; so if you are not satisfied, you are able just swich back to KDE3 (export OOO_FORCE_DESKTOP=kde). For KDE4, Roman is also changing the out-of-process implementation of the KDE file picker to an in-process implementation, so you'll probably notice some performance improvement of the KDE file dialog launch too :-) End of copy&paste. For people who'd be interested in helping with this, I've been told those should join #go-oo on Freenode.

KWin vs Firefox (or why there is the word manager in "Window manager")

Friday, 12 June 2009
I found out today that two of my colleagues in the office have the same problem with Firefox - when clicking on a link in a mail client, their open Firefox is brought to the current desktop from wherever it was before. Rather annoying I guess (especially for the normal mode of operation with Firefox, keep-it-running-all-the-time-on-its-virtual-desktop), and I bet they've lived with that for quite some time already. Read More

The wonderful new I mean old world of kdeinit, exmap and nvidia libGL

Wednesday, 13 May 2009
As some might have noticed among all the praise, some of the features may not come at low cost. One of the biggest memory hogs in KDE4 is (again) something that doesn't have much to do with KDE itself - the OpenGL library shipped with the nvidia driver. It is compiled without -fPIC to gain a couple percent performance increase (if at all, I personally doubt it makes a noticeable difference, but that's just guessing, given it's closed-source). And that means that every single application that links against it wastes about 11MiB RAM (on 32bit system), per process, regardless of whether and how much it actually uses it. And currently there are 5 such processes in just the plain KDE desktop, and count in the X server too. Do the math yourself. Or just have a look at the picture of Exmap showing it: Read More

KWin the Conqueror

Saturday, 24 January 2009
I recently noticed that although I have already talked about using KDE4's KWin in KDE3 or any other window manager in KDE instead of KWin, there is one thing missing in the mix: Using KWin without the KDE desktop. Read More

KDE compositing in openSUSE11.1

Monday, 10 November 2008
As you might have noticed, KDE 4.1.3 has been released, codename "Change" (in line with other C- codenames recently, as a kind of a joke on all those people who fail to see that still writing comments with overuse of K after 10 years of KDE's existence can only be a sign of brain damage). Not many changes in KWin there though, the changelog part for KWin has just one change worth mentioning. But that is not the case for users of the openSUSE KDE:KDE4:Factory:Desktop packages, which are the packages that will be also used for openSUSE 11.1. This is because they include a special KWin branch, which contains both backports of various new features from other KWin developers from SVN trunk (Lucas' blog keeps track of many of those) that cannot be backported to the 4.1 branch by KDE rules but should be stable and safe enough, and new features developed specially for the needs of openSUSE11.1/SLED11. Read More

News from the Wobblyland, part ∞

Wednesday, 17 September 2008
Dear LazyWeb ... erm, I mean DoItYourselfWeb. As you may or may not have noticed, KWin now again defaults to compositing enabled, if possible (the self-check will possibly still need polishing a bit, but that's why it's enabled by default now, right; and the little trick for detecting too bad performance needs some testing too). This is true for both to-be-KDE4.2 KDE trunk and to-be-openSUSE11.1 packages. Read More

News from the Wobblyland, part 0.

Saturday, 30 August 2008
Zero as when it does not work. And that's sometimes zero fun. There is a plan to enable compositing by default in openSUSE11.1 when possible (just like e.g. Ubuntu already does), so I've been again pondering the idea of enabling KWin's compositing by default in SVN too, just like it was in pre-4.0 times. The "when possible" part is of course the problem. Even openSUSE11.0 is already ready for compositing, assuming proper driver is correctly installed, but there still may be possibly some problems with some setups, and of course upstream KWin does not have the comfort of knowing the underlying stack is configured properly. Read More

On KWin's composite performance, part II.

Sunday, 24 August 2008
I got a bit bored this weekend (ok, ok, I had to do a lot of cleaning and so and needed an excuse) and had a look at two performance related things in KWin. First was fixing the CPU usage problem caused by using vsync, now that Thiago found out why I couldn't reproduce it (I build Qt without Glib support, it just messes the backtraces up). Interestingly it was code that was supposed to save CPU that by mistake caused the increased CPU usage. Oh well. Second improvement is unredirecting fullscreen windows - that is, if a fullscreen window is not covered by something else, such as a game or a movie, that window is excluded from compositing and allowed to draw normally. This lets it draw at the full speed and should also help with avoiding tearing. The simplest way to see this is to maximize a glxgears window and then compare its reported number of frames to also making it fullscreen using Alt+F3/Advanced/Fullscreen. I could post a video, but it would look quite similarly to the previous performance joke. This one is for real though. The small downside of unredirecting a window is that it no longer has a preview e.g. in Alt+Tab (could be handled with some more code, but not a very high priority now, unless somebody else feels like doing that or I get bored some other weekend). Read More

Wobblyland embassy in KDE3

Thursday, 22 May 2008
I would post a screenshot of what this is going to be about, but the screenshot would look remarkably similar to other KDE3 screenshots I could post. Unless I switched the decoration to Oxygen/Ozone, but then yours truly is still quite happy with the KDE2 decoration (and then, also not quite happy with all those people who think that anything that's older than a year, especially if it's not shiny, must be oh-so-bad), so let's just skip that. You can try yourself after all. Read More

On KWin's composite performance

Tuesday, 1 April 2008
As every year, one can see all kinds of articles related to today's date everywhere, ranging from quite amusing ones (it's a pity I knew what day it was when visiting dot.kde.org) to really old boring ones without anything interesting in them. I guess many people are running out of ideas or something. Rather that doings things like that, I think such people should simply stay serious. Like myself, I'm a pretty boring person usually, so I won't join the crowd, but I'll rather try to fight back by trying to be serious. Read More

Scripting in KWin?

Wednesday, 19 March 2008
I guess many people see KWin only as 'the window manager from KDE', but there are actually things that can make KWin beat many other WMs - features (some of them first introduced in KWin, such as the focus stealing prevention), compositing, tested codebase, handling of various broken apps, configurability, window-specific settings. I introduced window-specific settings to help with many special cases (broken Java apps, focus stealing prevention problems in corner cases [BTW, Metacity until recently didn't have any option to turn its focus stealing prevention off at all, and even now it's only all-or-nothing - I wonder if people learn to live with such problems, or how come], or simply I-have-this-very-special-case-when-I-want-this-window-do-this). But as you know, it's never enough, and there are some requests to make the somewhat large window-specific settings dialog even larger. I really have no idea how I should create a decent GUI for cases like 'when a window is maximized do ...'. Nor I am going to try anyway, for such really special cases. Contributions to KWin core are quite rare (except for people working on compositing, for which I'm really grateful) and I'm only a human. Read More

KDE4, KDE3 and viewports (the good, the bad and the ugly)

Wednesday, 23 January 2008
As of now [*], I hereby declare that KDE4 kind of supports viewports[^] (that is, the implementation of virtual desktops that Compiz and probably practically nobody else uses). Which means it possibly still sucks a bit here and there [x], but it's at least as good as in GNOME. In fact, after little checking[!], it appears that it is a bit better (try e.g. dragging a window in GNOME pager with Compiz running). Strange, I remember loads of people complaining about KDE, but not a single case about GNOME - maybe I just haven't noticed, or GNOME has less features that can break in the first place, or maybe that's what we here call 'one-eyed the king in the land of the blind'[-]. Anyway. The good news for KDE developers is that they don't have to care - viewports are mapped to virtual desktops by libraries[#] and only the pager seems to need few small tweaks. That in fact seems a much better solution than the KDE3 way of actually really trying to support viewports (I think I feel shame remembering I supported this and thought it was a good idea - one never stops learning). Which means a backport to KDE3 would be problematic, maybe I'll try for openSUSE11.0, but I'm not very confident that's a good idea. We'll see. Read More

KWin's window-specific settings

Friday, 18 January 2008
Today, in one user forum, I noticed somebody saying that they use different virtual desktops for different things and therefore they'd want different panel for each desktop. Our bug #79531, more or less. One interesting note is that the user uses GNOME, but would be willing to switch to whatever provides this feature. Read More

KWin in KDE4.0

Friday, 11 January 2008
What was it ... ah, yes ... KDE4.0 has been just released ... just in case you haven't noticed yet in all the other blog posts all around. No, in fact, the thing I really wanted, was: People, the proper capitalization is "KWin". Not "KWIN", not "Kwin". It is the KDE Window Manager, just like KCalc is the KDE Calculator, KPat is the KDE Patience Game or KMenuEdit is the KDE Menu Editor. Okay :) ? Read More

Why Flash sucks

Thursday, 20 December 2007
As one of my colleagues notes, this statement holds true on its own. However, for those like me too blind to see some things, there are two things about Flash you should know: Read More

News from the Wobblyland, part 3.9999

Wednesday, 21 November 2007
(I suppose using such number for this part makes the previous blog entry, part IV, written already quiiiiteee log ago, to have a wrong number, but who cares about that nowadays, it's just numbers, right? Anyway, it was so long ago that even I don't remember what it was about, which means I now have to think what to write about now. Hmm.) Read More

News from the Wobblyland, part IV

Tuesday, 24 April 2007
I did a presentation on compositing managers at the local LinuxExpo last week. Using kwin_composite for demonstrations. And KWin actually did its job quite fine (although it had taken quite some effort to get it there, with KWin being almost ready for it for more than a week). What did somewhat worse was the human factor - having more than 20 shortcuts wasn't a very good idea and failing to show the final and best feature because the bloody modifier was supposed to be Ctrl was a bit embarrassing. Oh well. C'est la vie. The good thing is that there are more things to show. Read More

News from the Wobblyland, part 3.141592654

Thursday, 25 January 2007
I finally find out recordMyDesktop and played a bit with it. Animations are a bit boring as PNG images after all. Too bad the recording seems to take up quite some resources and the videos look a bit jerky because of that (GeForce2 is not that slow :) ). I had to intentionally make some of the things slower and take longer and it still looks worse than in reality. Oh well. Ok, some new things in kwin_composite from Rivo Laks, Philip Falkner and yours truly: Read More

News from the Wobblyland, part II.

Tuesday, 21 November 2006
Ok, time for another screenshot. It actually shows most of the recent improvements in kwin_composite: [image:2548 size=original] At the bottom-left there's KWrite with the file dialog open. The dialog is transparent because I have MakeTransparentEffect enabled - it makes moved/resized windows transparent and it also makes dialogs transparent (hey, I need to test the stuff somehow). The KWrite main window is de-saturated and has reduced brightness - that's DialogParentEffect and support for saturation/brightness, patches from Rivo Laks. Read More

Novell, Microsoft deal and GPL

Friday, 10 November 2006
Oh, cool. Novell's PR department needed only a week to produce FAQ that'd actually answer frequently asked questions. Press releases full of quotes, long words and other strange stuff are simple, but a plain and clear explanation of what's going on apparently takes time for some unknown reason. And, since pretty much everybody has already tried to interpret various aspects of the deal, including here on Planet KDE, why couldn't I as well? I'm no lawyer, I don't understand it that much and I don't know anything more than what's written in the FAQ and the announcements, but after all that didn't stop many others either. Read More

News from the Wobblyland

Tuesday, 31 October 2006
Current kwin_composite branch can finally do some simple effects. The obligatory screenshot: [image:2493 size=original] (I'm good at impressive screenshots, am I not?) This screenshot shows the animation for a newly appearing KWrite window. This time no manual hacking in of the effect, this is what is in SVN. The window is smaller because ScaleInEffect makes the new window appear as scaling up to its size and it is transparent because FadeInEffect makes the new window appear as fading in. And just in case anybody wonders why the animation is not moving in the picture, then that's of course because it is just a picture. I admit it is somewhat dull that way, but I haven't figured out how to do better (well, I didn't trying that hard, anyway). There is the source if you want to see it for real. Read More

Teach yourself OpenGL in 24 hours

Tuesday, 10 October 2006
Near the end of Akademy, when it was finally short enough on talks, BoFs and whatnots to leave some time for serious hacking, after staring at the source of glcompmgr, I finally decided that this OpenGL compositing thingie cannot be that hard. And, 24 hours (with some sleep in the middle :) ) later, after staring at the glcompmgr code more, using code from it and searching in the OpenGL Redbook, I had this: Read More

Desktop memory usage

Tuesday, 12 September 2006
This was actually supposed to be a follow-up to my tests of startup performance of various desktop environments, primarily KDE of course :). In fact I even did most of the benchmarks some time after the startup ones, but, alas, I'm much better at writing things that computers are supposed to read than at writing things that people will read :-/ (some volunteer to write good user documentation for KWin's window specific settings, BTW ;) ?) I even meant to make a somewhat more extensive analysis of the numbers, but having never found time to write that, I decided I should publish at least a shorter variant with all the numbers and some conclusions. You can do your own analyses of the numbers if you will. Read More

Why C++ sucks, part 5632

Wednesday, 30 August 2006
One of bugzilla features is displaying various headlines, probably in order to cheer up the poor bugreporter or bughunter. KDE bugzilla actually doesn't seem to have this enabled, but I liked this in the old SUSE bugzilla, it had a nice collection of funny quips for the headlines. Those are gone now though after the switch to Novell bugzilla, which seems to prefer various encouraging quotes from famous people (I can't help it but sometimes they kinda remind me of the old communist times with their slogans). However, looking at the complete list I can see that some funny comments are finding their way even here, so all is not lost :). Read More

Why does Linux need defragmenting?

Saturday, 19 August 2006
This so often repeated myth is getting so old and so boring. And untrue. Linux doesn't need defragmenting, because its filesystem handling is not so stupid like when using several decades old FAT. Yadda yadda, blah blah. Now, the real question is: If Linux really doesn't need defragmenting, why does Windows boot faster and why does second startup of KDE need only roughly one quarter of time the first startup needs? Read More

Optimizing Linker Load Times

Thursday, 3 August 2006
LWN has a very interesting article summing up Michael Meeks' work on improving shared libraries loading as a part of his work to improve OpenOffice.org startup times (his paper linked from the article is worth reading as well). And the dynsort and hashval optimizations that improve the data used while dynamically linking are finding their way into glibc as the --hash-style option. Read More

On KWin wobbling and such stuff

Wednesday, 12 July 2006
As some might have noticed, KWin is supposed to get compositing support, allowing a wider range of various effects and replacing KDE3.x's separate kompmgr (developed by Thomas Lübking, based on the original xcompmgr, and according to e.g. this doing rather well for its time). This is in line with today's general belief that compositing managers should not be separate but part of window managers, as it allows for example better syncronization of effects and their wider range (and it will also allow us to get rid of the plain C that kompmgr is, bleh). Read More

WMIface

Wednesday, 7 June 2006
In the times of DCOP disappearing from trunk ... KDE DCOP WMIface (and of course the matching entry at b.k.o that I apparently failed to handle somehow)? What would be the best comment ... shame on me? Read More

Why C sucks. Part 3473.

Sunday, 5 March 2006
Every now and again you hear someone complaining about C++. You will probably also have heard that C sucks. The two statements are of course linked; the following code is valid C, but will never compile. Read More

Why Klipper is good

Thursday, 2 February 2006
Yes, I'm paraphrasing the title of one of the claims how Klipper is an awful hack working in the most stupid way possible whose only purpose is to make sure clipboard content doesn't get lost when you close an application. What a nonsense. Klipper is a tool for keeping several last items from clipboard history, the fact that the several last items include also the very last one is just a nice side-effect. And, while Klipper and X clipboard in general used to have and still have some problems (what doesn't after all), many Klipper problems are actually caused by broken clipboard implementations in various applications including OpenOffice.org or Mozilla/Firefox or by the way X clipboard works and most Klipper hacks are there in order to work around such problems. Read More

Working on performance is so easy

Monday, 2 January 2006
Or at least many people apparently think so. One just has to love all these people believing that KDE could definitely perform at least as good as Windows 98 (but preferably better of course) if we developers weren't just so damn lazy and finally fixed it during one of our coffee breaks. Coffee (or tea in my case) in one hand, magically snapping fingers on the other hand, probably. Read More

And the fastest starting desktop environment is ...

Tuesday, 6 December 2005
No, not really. But it's quite close (and it actually also depends on how you twist the benchmark ;) ). When my desktop machine could start KDE in less than 4 seconds I was curious what would the situation be with this slow laptop, the one which started KDE in 5-6 seconds at aKademy. But that was with almost no fonts installed, no XIM, no wallpaper, the simplest splash and other tricks from the KDE performance tips page. Well, now it can do it in the same time even without that. It leaves GNOME few seconds behind and gets very close to Xfce startup time. Read More

Stupid me

Tuesday, 6 December 2005
If we now spend 1/3 of time in the dynamic linker, of course it helps not forgetting to run prelink. Here's the second bootchart for KDE again (and the Xfce one for comparison, although that one doesn't really change). I wonder if we can call it a draw for now :). Read More

4 seconds

Saturday, 3 December 2005
[13:17:58] <Seli> boy, this machine sucks ... how am I supposed to benchmark anything if it fires up KDE in 3.7 seconds? Yeah, right, it's kinda stupid to work on performance when the machine is so fast that even sysprof sometimes doesn't produce enough samples and the machine has no support for CPU throttling or anything like that :(. I'll need to transfer the build from this AMD 2800+ to this slow 900MHz laptop I used at aKademy for the performance talk. Note that while I cheated a bit at aKademy, this is normal KDE startup. Still with warm disk caches, but fc-list says 249 fonts, I have a splash (the SUSE one, that is, ksplash is not exactly fast), I have a wallpaper, and while it is a bare KDE it is fully usable. And adding Konqueror, KWrite, Konsole and some of the default systray apps to the startup still keeps it slightly below 5 seconds. I'm curious what the laptop will do. Read More

Reply to mailing list

Monday, 28 November 2005
Strange that there are still many people who care if a mailing list changes Reply-To header to point to the mailing list (usually called Reply-To munging) or not. Like if that matters ... I'm not even sure which mailing lists I'm subscribed to do or don't do that. Read More

NULL

Tuesday, 22 November 2005
From the KOrganizer coding style guidelines: "A null pointer is 0, not 0l, 0L or NULL. Once again, this is C++, not C." Hmmm. If you get bored sometimes, try to compile with gcc something like "void foo( int ); ... foo( NULL );" and see what happens. And then what happens with "foo( 0 );" (and yes, I remember fixing a bug in KDE caused by this). Ok, NULL is not what it really should be, but C/C++ have many small weird things (ever wondered why binary operators | and & have so stupid priority? It's called backwards compatibility lasting for more than 30 years). Moreover, I wonder, why are symbolic constants C but not C++? Read More

Speaking of fontconfig bugs ... and using unstable versions

Friday, 18 November 2005
In case you have upgraded your fontconfig packages to those I provided in my blog entry about new fontconfig version, you may have run into KDE bug #116176 with the KDE3.5rc1 packages. Well, I warned you. That sometimes happens with unstable versions. I suggest you downgrade again or do your own build of newer fontconfig version or do whatever you want to do, but I'm not going to provide newer packages. It's still an unstable version after all. Read More

Yet another fonts performance tip

Monday, 7 November 2005
Is it just me or do the blog categories on kdedevelopers.org never match what I want to say? Well, nevermind. The latest performance tip brought to you by SUSE KDE developers (don't ask, I very likely don't know anyway) is here: Read More

On measuring memory usage #2

Wednesday, 26 October 2005
Hmm ... I should wish things more often. I complained about the lack of any usable memory reporting tool on Linux, and only a couple of days later I discovered exmap. Unlike e.g. top with its number of useless memory usage values, exmap has only three of them. Read More

Fontconfig's biggest bug

Tuesday, 27 September 2005
Update: The fontconfig packages linked from this post seem to cause KDE bug #116176 with KDE3.5 packages. Well, I warned you. Biggest at least in terms of slowness and memory usage. Yes, I'm talking about fontconfig checking all fonts and building an in-memory representation at application startup, as already mentioned in the KDE performance tips page. This fontconfig problem has had a noticeable impact on memory usage and startup time of KDE applications. But that has come to an end now it seems. Read More

On measuring memory usage

Thursday, 15 September 2005
Oh boy. Gwenview uses 83% more memory than Kuickshow (http://kde-apps.org/content/show.php?content=9847 - the last comment as of now). BTW I especially like the "83%" part - it's just one case and the measurement is imprecise, but it can't be "about 80%" or "almost double". Reminds me of all those "hair 74% stronger" ads. Anyway. Read More

5 seconds ... ok, 6

Wednesday, 31 August 2005
Yes, I could really make KDE start up in just 5 seconds on a 900MHz laptop ... 6 seconds during the presentation, the laptop apparently decided to spend the extra second somewhere. As it was measured using a wristwatch it doesn't matter much anyway. And you can download the video, see it for yourself and measure it yourself. Read More