Aug 142008
 
No Gravatar

Considering that firefox is a crazy performance hog it has become rather annoying to me off late. In my virtualbox’d KDE4 at work for example, I get very lovely kwin effects when using XRender – provided I do not have NVidia running, which makes the effects dog-slow.

So I started asking myself about reasonably replacing it. Konqueror is the obvious choice as it’s KDE’s own well-rounded web-browser and should work nice… right ?

Well the first issue is a known one: learning to live without your firefox extensions. Not a major thing since I don’t use too many of them at work anyway, but some things like stumbleupon are basically useless any other way and that would affect me at home.

But what about site compatibility ? Oddly enough wordpress seems to break konqueror, not on the browsing of blog pages, but one trying to work with the admin system. Over https, it logs in – but then tries to relogin when you try to add a page, and that redirects to the non-https version. Which doesn’t want to log in, no matter what.
I tried my openID login as an alternative test but apparently openID doesn’t play nice with konqueror either (at least, phpmyid doesn’t) – I have no idea why that would be, but it breaks it by trying a direct access without auth’ing first. This happens both plain and ssl based.

Finally, I got a real bugger when I tried to access our spacewalk server, which has error pages specifically listing konqueror as not working (apparently it doesn’t handle formvars properly in some cases).

I am quite disappointed as I was really hoping to switch to konqueror – but if I cannot do my job (and my job includes accessing spacewalk) then I cannot use it. What surprised me most however is that each of the big three problems I found are in sites run by FOSS applications of some sort. You would expect a FOSS browser to play nice with FOSS CMS’s and the like would you not ?
I will be keeping an eye on the QT-based firefox, I am hoping it could become the middle-ground I need.

Aug 072008
 
No Gravatar

As my regular readers know, I have been hammering away at getting a usable KDE4 desktop on my NVidia card for weeks now. I have tried many things with various degrees of success. The known NVidia tweaks made windows behave like they ought too – but the system was still dog slow with load averages nearing 2.0 and CPU close to 100% almost all the time.
XGL was working well but it needs a beast of a machine to be useful – it’s level of abstraction being such that a lot of stuff end up being software handled. So while it was a bit faster, it was still to slow to use.

More-over, whenever I loaded any KDE3 app my system would become completely unusable (since I only have 512M of ram to start with – when my system was already bogged down, the KDE3 libs on top of KDE4 was just more than it could handle).

I finally found an answer that works though. It is NOT a nice answer (hence my comparing it to that other final solution) but it works. For now, it’s what I will have to do until either (1) NVidia brings out a real fix or (2) I can afford an ATI card.
The solution to the problems in the NVidia driver, for me, is to not use it. I started to try generic drivers instead. The first one was VESA. The Xorg VESA driver gave me serious hell at first though, my screen was shifted about 10cm to the right and 5 to the bottom with roll-overs… it was not a pretty sight. So I gave up on it and decided to try the fbdev driver instead.
This meant some hacking at the grub bootline to find the highest framebuffer res that would boot via a vga= command (I settled on vga=0x31a which is 1280×1024@32) – this worked and gave me a working KDE desktop with great speed. Unfortunately the trade-off was equally huge. The raw framebuffer device doesn’t support anti-aliasing, or half the other stuff that makes things look pretty – so it was a butt-ugly desktop.
I wasn’t satisfied but it was at least a step in the right direction. My next step was to try the VESA driver again, but this time specifying modes. No amount of hacking could get wide screen modes going (VESA just doesn’t seem to understand them) so I still cannot use my monitor’s full 1600×1050 resolution but I got 1280×1024 without problems and it is working fine. The desktop is not as pretty as it would be under full acceleration but it’s completely workable and for the first time my kde4 is actually faster than kde3 (as it should be).
There are downsides of course. Twinview no longer works, nor can I use the second outport on the card. KDE4 doesn’t support that (the way I use it) yet anyway though so this is not a huge loss and hopefully I’ll have a working video card before 4.2 comes out. I only really use it to watch movies on the TV and for that I’ll hack up a script to start KDE3 in a secondary VT and use the nvidia driver via a different config or something.
The biggest major downside after that though is that now I have no 3D acceleration (I traded great 3D for good 2D – can you believe it) ? Which is a bit of a bummer for gaming and also means KDE4 doesn’t have desktop effects. All in all, a worthwhile compromise for now though, and I can use that same KDE3 hack-script to get 3D when I want to play games.
Here’s a shot of the system monitor showing my system’s performance now. It’s still pretty bogged down but it’s better than it was under KDE3 and that’s because the system is a bit underpowered (I’ve been meaning to upgrade for over a year). Still, this is actually faster than I had it with gentoo !
KDE4 performance under the X.org VESA driver.

Aug 052008
 
No Gravatar

In the early days of vmware it was basically just another way of running some windows apps under Linux (back then Wine wasn’t better at it). Time however proved their gamble right- virtualization became a key aspect of enterprise computing.
Using virtual servers means that one piece of hardware could do many more things, better for the environment, better for the budget and easier to manage.

VMWare ruled this space for a long time because they were first to market, and kept expanding the feature set. Many attempts were made to create a free alternative, all of them sorta worked but until QEMU none of them could really do the job. Even then there were shortcomings and some OS’s just wouldn’t quite work right. Worse than that, QEMU was still just an emulator.

Recently though, I discovered virtualbox, a product SUN had bought over and turned into an enterprise level virtualization suite that doesn’t just match VMWare for features, it exceeds it. A lot of the power of virtualbox as a serious competitor to VMWare comes from it’s use of open standards and protocols to do things.
Now I should add that there are two versions of virtualbox and some of the enterprise features are not available in the FOSS version. But I will mention one of them as a case in point. For the enterprise version, remote access to your VM’s do not require any special clients like VMWare server does, you just use RDP which every OS on the planet already has a client for.

That alone is a major saving as it means that the licensing expense for virtualbox is server-side only.

I haven’t been using the enterprise version though and I do not need it for my needs. I am using virtualbox because I am required to use XP as my main OS on the company laptop, but I cannot live without a KDE4 desktop (on Linux, I know it can run on windows but that wouldn’t give me a Linux OS to work on now would it ?) anymore. Using virtualbox it was easy to install this desktop, the integrated networking covers all the features VMWare offers including host-only, integrated NAT and bridge (although you need to set up bridging yourself it’s not as integrated).

I use the NAT option which works perfectly fine and has the benefit that the many MAC based security policies in my environment cannot tell my VirtualBox linux from my physical windows platform.

Other features include full USB support, a simple GUI interface (something that has been sorely lacking in free virtualization tools so far) and proper multiplatform support (so unlike things like UML and XEN it can run linux on windows or windows on linux).



KDE4 running inside virtual box - click to view full size
KDE4 running inside virtual box – click to view full size

VirtualBox is also surprisingly fast, I gave mine plenty of ram since it is after all a desktop, but it is fully responsive and runs KDE4.1 much better than my physical machine at home (for which I blame NVidia).
All the basic features you know from VMWare are there, including shared folders (which play oh so nicely with folderview because they just get mounted) and it all works very easily. The only problem I have had in about a week of using it is that the help file doesn’t say how to access shared folders – but a quick google did enlighten me quickly enough:
mount -t vboxfs $SHARENAME $MOUNTPOINT
Or just create an fstab line like this:
$SHARENAME $MOUNTPOINT vboxsf rw,auto,exec 0 0
(Of course $MOUNTPOINT must exist and you should replace $SHARENAME and $MOINTPOINT with real paths).

And here is where it gets interesting. VMWare’s guest tools are… flakey at best and the majority of distro’s I’ve tried to install them on over many years had issues getting them all to work. VirtualBox’s guest additions are powerful, complete and fully functional. They install easily on any distro I’ve tried and work very well.
That is when you start discovering some very cool features, like the pointer integration support, which means merely moving your mouse between your linux and windows desktops and working as if it was just another window. No keyboard locking, nothing. Copy and paste between a VirtualBox and a real machine works fine too.

I am seriously impressed. SUN has taken a solid product here, and turned it into something that is fully enterprise ready and capable. In my own setup, I have a dual monitor configuration, so I typically keep windows open on the one screen and virtualbox running on the other, and switching between them is completely smooth and transparent.

I am impressed and I want to say outright: after many years, there is finally a FOSS product that not only competes with but utterly exceeds the capabilities of VMware for both home and enterprise users. Considdering the hefty pricetag VMWare comes with – I smell trouble ahead for them.

Jul 292008
 
No Gravatar

Well KDE4.1 is available, and it is a sweet. For a lot of people, this will be the switchover point, the rest of you – KDE4.2 should do it :)

I would like to suggest looking at Bruce Byfields excellent review for a good idea of who should be switching yet.

I, I’m sold. Despite the slowness of my NVidia card natively, I can work just fine using XGL. However, I also found that XGL conversely made my KDE3 installation almost unusably slow (ditto KDE3 apps I still use – even though inside KDE4 I can hack-launch them to run on the native screen with a few tweaks).
So I split out XGL to only run for KDE4 for now. To do so I rm’d /etc/X11/xsession.d/98xserver-xgl_start-server
then created a new script in /usr/bin called startkde4-xgl with the following content:

#!/bin/bash
GL_START=/usr/share/xserver-xgl/Xgl-session
XGL_DISPLAY=:1
XGL_OPTS=”-nolisten tcp -fullscreen -br +xinerama”

$XGL_START $XGL_DISPLAY $XGL_OPTS –execute /usr/lib/kde4/bin/startkde

Gave it execute permissions and added a session file for it in /usr/share/xsessions.
Please note: These instructions arethe short-version and they are for kubuntu, other distros handle XGL in very different ways.

Either way, it’s great to finally have KDE4.1 final installed – now to go PLAY !

Jul 232008
 
No Gravatar

By now, most people know that KDE4 and later are severely hampered on NVidia hardware due to problems with the driver. This appears to be a problem with XRender feature primarily, though there are other things as well. I have in the past tried every single piece of the many pieces of advice out there – and none of them had any measurable effect for me. It all worked – it was just utterly, unusably slow.
News I saw today confirms the same problem is hitting the upcoming Gnome 2.6 and even the firefox browser.

Today, as I was reading more sites about it, I saw a possible hint that sounded worth a try – and I tried it – and it’s working perfectly – so I thought I would share it.
Switch to XGL. Unlike the AIGL favored by most distributions now, XGL does not make composition and render feature available through extensions (which is where NVidia seems to do an epic fail) – the actual X server is implemented directly in OpenGL – and then makes these features function by actually doing them in it’s existing OpenGL setup (yes I know this is an oversimplification but it covers the core reason why this seems to work).

On kubuntu hardy, getting xgl is as simple as: sudo apt-get install xserver-xgl
You need to reboot afterward as there is a bootscript that handles the switchover.

However, once I did that – KDE was a LOT faster. For a test, I enabled desktop effects – at first, nothing happened. Then I looked in the advanced settings and found it was set to use OpenGL – since my X-server is now already using OpenGL to render, this apparently does not work. So for a test, I threw it over to XRender – and suddenly they were working.
Frame rates were high – much higher than they had been under the Xorg server with XRender, the effects worked stably and without issues – there was no visual problems at all – and the desktop remained perfectly fast and responsive. In fact the only problem was the actual effects HAPPENED slow. This I am disinclined to blame on either XGL or XRender – I suspect this is simply a case of “don’t run desktop effects on a box with only 512MB of physical ram” – the card and display was handling it perfectly fine, the computer was just taking long to do this extra stuff (which I believe are done with lower priority to save resources for the more important applications).

I am pretty sure they are actually usable anyway – I will play more with them in the next day or two.

*Note: XGL is not considered stable, and being basically a fork is not a nice way of doing things. I have also heard reports of various shortcomings in it, some things that should work but just don’t. I haven’t used it long enough yet to find any – but you have been warned. It seems to make KDE4 usable – and right now, that is my highest priority, it may not be yours.

**Note: I do not suggest letting this blog be a suggestion to buy NVidia, I will never again – ATI has a FREE driver now, without problems and that works very well according to people – I can now get a card that meets my needs without a non-free driver, so I won’t be buying another NVidia and deal with nasty surprises like this again. I had no choice before – if you have one – choose free software. This entry is an attempt to help those who, like me, at a time when there was no other sufficient choice available were forced to buy an NVidia card and cannot upgrade at this time, to allow you to at least deal with the situation of the problems NVidia’s proprietary driver has with current software releases until the time you CAN upgrade.

Jul 232008
 
No Gravatar

Last night I finished the code for kde3to4 version 0.0.2. This release will mark a major leap ahead in the race from a newly implemented idea to a genuinely solid and useful program.

The first major change is that it now uses kioclient rather than shell cp as it’s backend for copying files and directories. This is a major improvement over the previous one for many reasons. Kioclient is graphical and has things like progressbars working out of the box. Overwrite’s are handled sanely in the way users are already used to and error handling is well implemented.
It basically makes the entire user experience a huge deal better than it used to be. I highly recommend it (or for KDE3 apps it’s parent utilities integrated in kfmclient).

An even more important change is the new all_apps plugin which uses a fairly standard formula to try and migrate any and all apps it finds. This one is still very experimental and marked as such, but it should work very well since the vast majority of apps will play happily with the formula it uses. For the rest it contains a double-level of protection to reduce the risk of breakage.

1) It deliberately ignores any program for which an existing script exists. In other words, it gives precedence to specialized plugins rather than it’s own formulaic approach.
2) It has an internal blacklist of programs to ignore.

This gives quite a bit of power to the protection scheme. Amarok for example is safe to migrate for 1.x versions, but 2.x is not compatible with 1.x settings. A migration tool for amarok is on their TODO list but not finished. So what I did was to blacklist amarok in the all_apps plugin, and provide an amarok1.x plugin that you can use if you are not using amarok2 yet. When amarok2 has a safe way to import amarok1 settings, we can build another plugin for upgraders and handle each edge-case.

This morning I sent a mail to the kde-devel mailing list asking developers to let me know about apps that should be pointedly ignored by all_apps or provide plugins/documentation where specialized plugins could work instead. It got me some very useful feedback. At time of writing this post (less than an hour after the mail) the blacklist has been updated to include mailody and kdevelop. In the former case because it is completely incompatible (I will look at the possibility of a specialized plugin when I have time) and in the latter because the settings are so vastly different that an import makes no sense.
I also have specific confirmation from Boudewijn that krita should work perfectly with this setup.

All in all, kde3to4 is coming along very nicely and I have solid hopes that it may be included with KDE4.2 (a point where many people have already indicated they will switch and thus a point where it’s usefulness will likely peak).

——-
UPDATE: The new release is now available from the application page (link in the menu on the left)

Jul 182008
 
No Gravatar

Yesterday I sent a mail to the KDE development mailing list indicating my personal top-3 wish-list items for KDE4.1. Aaron responded positively – indicating that one thing I indicated was already on the TODO list and another was in planning but needed time because of a QT shortcoming.

I mentioned a fourth one though, but added that this may be a kubuntu packaging issue. The problem that a default install from the Kubuntu PPA repo of 4.1RC1 does not install folderview – despite the latter having become an absolute cornerstone of KDE4.1. Perhaps I had a bad choice of words because I mentioned that it ‘could be a kubuntu packaging mistake’.
Aaron agreed that it was.

Johnathan Riddle then replied wanting to know what the mistake was – especially since it apparently mentions on the kubuntu RC1 site that folderview is in a sepperate package (when I installed RC1 it didn’t, but I haven’t gone to check so it may well have been updated since then).
Either way, I replied again – stating that I wasn’t trying to diss kubuntu, just trying to find out who to report it to. Aaron and me both stated that folderview should be a default install, Aaron even went so far as to say that it should be in KDEbase !
This didn’t happen, since the kubuntu guys felt that adding just one plasmoid to kdebase would be inconsistent, but they did update the dependencies so that folderview will henceforth be a default install (and the first kubuntu update to 4.1RC1 was already out today).
In short, like I always said – one of the most crucial end-user features of FOSS is that if you see a problem and you take care to politely explain what the problem is, the developers will make a genuine effort to make sure your problem is resolved… and people think proprietary software have MORE reliable support ? Ever seen a proprietory company give a damn about a feature-request or bug-report ? Let alone discuss it rationally and come to a solid solution in just 1 day !

Kudos to Johnathan and the other Kubuntu packagers for their effort and thanks to Aaron for replying and considering my ideas calmly and where solutions do not yet exist – at least respecting my views. To all the KDE4 flamers: THIS is the difference if you are just a bit POLITE and stop acting like gimme-gimme two year olds.

Anyway – no ranting tonight – I’m posting good news after all.

Finally, I promised a special announcement and here it is: In an effort to honor the memory of my departed friend Uwe I have volunteered to continue his work as the KDE press contact for Africa, ahead of the 4.1 release, I expect this to involve some real work soon. The community at large agreed so I am now a genuine KDE contributor. The contacts site should be updated soon, and this blog will be joining planet.kde.org as some of the early steps in this process.

Jul 152008
 
No Gravatar

Friday afternoon saw the tragic and very premature passing away of my dear friend Uwe Thiem. This article, and this one gives more detail on Uwe’s massive contribution to FOSS, particularly KDE.
I would like to talk a little more about Uwe the person though, as I knew him. It says a lot about how passionate Uwe was about KDE that his final article about KDE was published on the same day he died. Since joining the project in it’s very early days, Uwe was active quite literally until his dying day.
He was a man of incredible intelligence who loved playing with language (and had mastered several), both human and computer. He was passionate and straightforward. I remember him once giving a rant about people who use the word ‘gender’ when they mean to ask somebody’s sex out of misplaced sensibilities (since that is entirely wrong). But he gave the rant, like all his rants, with a glint in his eye. Uwe had a sense of humor that any geek would be proud off. He was a celebrated coder and system administrator with a unique perspective on usability and friendliness for somebody so technically skilled.
It was his one true passion: ease of use, integration, consistency.
Knowing him was an education and I am a better person for having had him as a friend.

Go well my friend, you will be missed.

PS. I have done something special to honor the memory of my departed friend, but this is not the time or place to announce it so it will be a separate blog post in the near future.