Monday, November 16, 2009

KDE Imaging Sprint

I just wanted to say that I returned home from KDE imaging sprint now and want to say thank you again to our host and the organizer of the event Marcel Wiesweg. We got quite a lot of coding done, some errors in Digikam and the kipi plugins have been fixed on Windows, so it was a really positive sprint. Some fixes are still waiting to be committed. I met some people I didn't knew in person before, which was really interesting too.
So all in all, a good sprint and I am looking forward to next years imaging sprint in France ;-).

Wednesday, November 4, 2009

yokadi on windows

While reading planet KDE a bit I somehow got caught by Aurélien's release announcement for Yokadi, "the command-line driven, geek friendly, sqlite backed TODO list". I was in need of such a tool already for quite some time, and so began to look at it.
First of all Yokadi is written in python using an sqlite database, which is basically the size I was looking for. Also it makes it possible to run also on windows... In the README it says that Mac OS X and Windows should work but haven't been tested and so I started my way through it.

To make it possible for more people to use this application I want to document what I needed to do to get yokadi working on Windows:
  1. Install the python setuptools if you haven't done so yet. After the installation you might need to adjust your PATH to include the Scripts folder of your python installation so that the easy_install.exe is included.

  2. get pyreadline, sqlobject and dateutils by simply running easy_install[PACKAGENAME]. Make sure you have svn.exe in your path for pyreadline. Except for this requirement, everything went smooth so far.

  3. Now get the yokadi sources with git. I needed to add a patch, so make sure this patch is already contained in your yokadi sources. I send this patch to the mailing list and hope it gets committed soon.

  4. After you made sure about the patch, run install from the commandline. This will install yokadi as a python site-package.

  5. Set the EDITOR variable if you don't have vi.exe in your path. I installed the commandline version of vim for that: set EDITOR="C:\Program Files\vim\vim72\vim.exe".

  6. To not add a HOME variable to my local environment, I made a yokadi.bat which basically sets the environment variable HOME to the directory where I want to store the database (and the history file) and then calls the yokadi python script in the scripts folder.

I haven't tried the yokadid daemon which is supposed to notify you about due dates: both because I don't like such notifications and as well because at least the master version looks suspiciously Unix-only ;-).
So far I am really pleased by yokadi, it matches my way to work (yes I use the windows cmd.exe a lot!) and I hope I can get rid of all those .todo files now :-D.

Wednesday, October 21, 2009

git web

As you might know I also work on Linux machines from time to time and so I tried to set up a git server on a local machine. After two hours trying to set up gitweb I simply gave up (That costed me a lot of nerdpoints as casper pointed out correctly!). Today I invested another hour into gitweb until I finally came to the conclusion that whoever writes such a bad documentation, doesn't want any users. So I decided to search again for something else:
There are various pages where alternative projects are listed, and after having tried git-php which is either not accessible (probably a self hosted git server) or which doesn't work as well, I finally came across viewgit. ViewGit's claim is 'to be easy to set up and upgrade, light on dependencies, and comfortable to use.'. Which it really is. The point is not only that there exists a rather good documentation in the source code (as you would like to have it), there is a readable README which also tells you what to do and if you try to access it before it redirects you to the README. All in all this is what I wanted & needed - it took me less than 10 minutes to set up. Kudos to the developers.

This is what I expect from open source software. Why is the rest so crappy?

Friday, October 9, 2009

build server web

It is not new anymore that we got a build server which runs windows and regularly builds KDE on Windows. But from now on we have a webinterface for the build server which for now can be found under . This means that build results can now be tracked more easily. This goes as far as having the complete logfile for the build available, basically the same you would have if you'd build on your own.

The advent of the web interface also means a second feature I will hopefully set online this weekend: nightly packages which always return the latest state of KDE. And I also have planned some more features: rss feeds for each package & for all packages, a history for each package (so you can check when an error has been introduced, etc.) and of course an improved error searching algorithm (it currently only uses the last 20 lines from the complete log as summary).

And last some pictures: Some of the stuff that doesn't build on the right side is my fault, but of course not everything:

Thursday, September 24, 2009

new windows nightly builds and a question about nepomuk on windows

I don't want to make a big announcement out of it, just so you know: I just set up a nightly build server for KDE on Windows in the last days, which is supposed to build all our KDE packages on a regular schedule. Thanks to Qt Development Frameworks for providing the server and especially to Maurice and Danimo.

The server currently comes with a mailing list where broken packages are announced (kde-winbuild) and I hope I can provide a web page soon similar to this one. I hope this will make it easier to see build errors early and will make the life easier here on windows.

One other thing I fell upon is nepomuk and its companions soprano and strigi. Since I was asked about it and I couldn't answer (because I never came accross it!) I decided to take a look at it. The problem I found is that under windows, the indexing part (strigi) is nearly completely disabled - this also makes clear why no errors occur. Which in turn makes also clear that soprano and nepomuk might work, but since there is no index at all, the two do not really seem to make any sense.

So what can we do?

  • we could try and fix strigi. This seems like a lot of work, since a lot of the strigi code is written without Qt support - using fork, sockets and some more non-portable stuff.

  • we could disable nepomuk and rely on the build-in Windows search - this minimizes the work, which can be spend on other targets (solid, plasma etc.) then.

If by chance the windows developer base increases by a high percentage, we could reenable nepomuk then - or if we have nothing else to do anymore.

Personally I tend to fix strigi, but what do you think?

Sunday, September 20, 2009

No more hungry evenings!

Just some minutes ago I got krecipes compiling here under windows - after just a few changes (What else would you expect!). Ok, it crashed because our mysql packages are not the best, I might have to improve those, but with sqlite it worked quite well (though a bit slow).

Just to give a small impression:

To say the truth, I was never really hungry, but perhaps this program makes me cook a bit more often? - Lets see.

Monday, August 24, 2009


For those of you who haven't seen it yet, KDE on Windows made another release (only some days after the official release date - it is just me who needed nearly two weeks to blog about it ;-)). We introduced two "new" compilers, first of all Microsoft Visual Studio 9.0 Express Edition and second MinGW gcc 4.4.0. There are still some drawbacks when using MinGW 4, but we hope that we can fix those soon and then we can drop the old gcc 3 series (probably together with KDE 4.4).

Personally I am currently slacking off a bit. Last week I helped my sister to move her flat and at the end of this week I will go back to Iceland for one and a half weeks meeting some friends again. If you're around there, just drop me a note here.

Some days ago I decided to start a long term project of mine and with the help of my mother who is an oracle consultant I installed a small oracle 10g express edition database on my computer. So far we could get it running via both the OCI and the odbc sql-database plugin of Qt and everything seems to be as easy as I can think of. Look forward to some interesting news concerning Marble... ;-).

Tuesday, July 7, 2009

KDE 4.3rc1

Just some minutes ago I uploaded the first patches for windows packages for the first KDE 4.3 release candidate.
If you start the installer, you might find that the list of packages has grown quite a bit. This is for two reasons: first of all Ralf and I currently try out splitting the kde modules into subpackages, so that you can simply install e.g. Okular, without having to install kolourpaint (nothing against kolourpaint!). This will make it more obvious which applications you install and close a long waiting wish in KDE's bugzilla.
The second reason is that the number of packages has really grown: I added a (rather dirty) patch so that konsole can be build under windows, and this of course leads to some new features: kate, konversation, yakuake and kdevelop use the konsolepart to embed konsole into their applications. This is a long awaited feature I wanted to have, and I am pretty sure both code quality (so that I can commit the changes) and the number of windows specific bugs in it will improve in the next months.
Besides the packaging process, Ralf is also working on some improvements to our 'emerge' build scripts. He has nearly finished restructuring them completely. This will greatly improve the overall quality and will make those scripts more extensible and easier to fix in the future.

Monday, June 8, 2009

KDE on Windows is not dead yet

First of all, I want to say something about an article that has been released on the Linux Magazin - about the step down of Christian Ehrlicher as a developer for KDE on Windows.
This is not easy for us as Christian has done quite a lot of work in the background as making packages and fixing builderrors and bugs. This doesn't mean though that he has been the only one to do those tasks. The Amarok Nightlies have been done nearly totally independent of the rest by Björn Schröder and Oluf Lorenzen; in between the releases Christian made, I made some of them too, and also Ralf Habacker and Holger Schröder are able to build packages (those are the ones that currently are allowed to upload, this list can of course be extended). So packages will be provided in the future as they have been in the past.

The second point I want to address is the criticism made by Christian in his post. Although Till has corrected it here and here I do remember that the feelings we had back when kdab joined KDE on Windows development were far more optimistic than what was achieved in the time. I think this is normal and can happen in other places too. I think though that we have to look further and always check what possibilities we do have to work together and how we can achieve the best together. Due to the pure nature of the different intents that companies and private persons do have if they develop on KDE we will never have the exact same opinion on some issues (the packaging is such an issue here). The same applies to probably all companies in this area, just think of Qt Software & Qt.

And last I want to mention something that has struck me again when reading the comments both in Linux Magazin and below Christians blog post: I never want to read again those comments along the line "good that you have found back to the free OS and you no longer waste time". All those of you out there thinking like that, just try to switch on your brain at least once and think why it is called "free" software. It is not free as in beer, it is free as in freedom, and I reclaim hereby the freedom to develop for Windows. And for Linux. And for BSD. And for Solaris. And for Mac. And for all those other OSs I don't even know but which might run KDE one day.

Thursday, April 9, 2009


For those of you who haven't yet been aware of it: Christian made new 4.2.2 packages. I added packages for digikam (0.10.0 release), kipi-plugins (0.2.0 release), konversation4 (yet unreleased snapshot) and thanks to Ralf's porting also k3b (another yet unreleased snapshot). Please do not file bugs against k3b and konversation4 yet, we want to fix the obvious errors first.
Those packages are all built against Qt 4.4.3, meaning that you can't build current amarok and the koffice release candidate against it. I am planning to make some trunk packages(against Qt 4.5) though to fix this problem.
In marble I just recently could merge my geodata-nt branch which took a great burden off of me. Now all GeoDataObjects can be copied around, some of them are implicitly shared even. As this comes together with changing the (not-yet stable) API from Pointers to references, some work is still needed (it currently is far to slow to be released...). "please do not hit me for marble being a bit slower now!" ;-)

Sunday, March 8, 2009

Context & Trash

It has been a long time since my last blog post and this has been due to me having exams and starting to work for some weeks in Darmstadt. This also explains why package delivery is rather slow at the moment since only Christian is working on it.

He also made some other progress - he worked on the windows implementation of the KDE trash bin. So now if you look at the KDE trash bin on windows, it contains all the files you find in the windows trash bin and reversed. And best is that features like undelete work too (Christian has spend two days only to make this one feature work!).

Myself I have started a great thing too: the explorer context menu that Carlo Segato committed into svn is supposed to work for all KDE applications in the best way: clicking on a pdf document would make it display "Open with Okular", clicking on ogg files would make it use "Open with Amarok" and so on, all depending on the preferred application you set in your KDE install.

I am already pretty far with this feature but at the moment I have a severe problem: When I try to link the contextmenu plugin against kdecore library, it can't be registered with regsvr32 anymore - I get an error message stating: "LoadLibrary('D:\\KDE\\bin\\kdecm.dll') failed - invalid access to memory location". Registering it by hand does work though. So now I wonder what might be the problem at all because this already happens if I just put in a tiny KUrl which does not do anything in the default constructor. I don't seem to find what is the problem there - so if anybody knows where the problem is...

Sunday, February 1, 2009


After a long time of waiting for it, I finally tried to port konsole. This was a long awaited application which is supposed to be rather useful for developers (which are currently our main target users). I am still trying to cleanup the patch and getting it into a usable shape to be committed into KDE svn. Also there are still some more problems that will stay for now:

  • for cmd.exe many keys do not work, especially delete, backspace and the arrow keys (so no command history yet). I am not sure how to do this yet, probably this needs some more internal changes.

  • for sh.exe it seems that at least the backspace key is working, but there is no output of the prompt and ls has some strange output too.

For both there is no colored output available yet.
The biggest problem though is that the konsole window can't be made transparent ;-).

To prove it, here is a screen shot:

Just another great application has been added in a porting branch into svn recently: konversation. And as _Brandon_ hasn't been lazy altogether, konversation4 already works like a charm here. You should be aware that although konversation does more or less work and it gets better and better every hour thanks to a number of people, it should not be used yet and no bug reports should be filed yet.
Some more screenshots here for those who don't believe:

Monday, January 12, 2009

pre-release sprint

As KDE 4.2 release is also coming near on windows, I need to give a short overview of what we have planned for the release so far:

  • the KDE systemsettings will come to windows; they can be integrated into Microsoft Windows Control Panel as well.

  • KDE/Oxygen Wallpapers and Cursors will be available for Windows as well.

  • all platform related settings can be made in a new KCModule called 'Platform'. It can be found in the systemsettings and is made by Eduard Sukharev (kraplax).

  • there is some support for spellchecking

  • many improvements especially about security and download checking have been made to the kdewin-installer, thanks to Ralf again for it

the systemsettings in Microsoft Windows XP Control Panel
A very unstable part but yet really interesting is plasma. We managed to replace the existing windows shell with plasma (these settings will go into the Platform kcm as well but will be disabled for now) but since some more important plasmoids (especially systray and tasklist) are still missing, that is really experimental ;-). Most work on Plasma is done by _Brandon_ and zbenjamin.

On the Marble side we also have some fine features to release. Maps can now load up custom kml files at the start, the map painting got even more efficient and startup times have been lowered as much as we could.
If you use the marblewidget in your application, you can have multiple marble widgets and they can safely work together. Even though digikam already does this for quite some time I just recently found out that the implications are bigger than expected - but these issues should be fixed now.
The rest of the marble related changes will hopefully be within a proper change log or in a new post of Torsten Rahn.

This blog post is also in memoriam of my old desktop which served me quite some years now and in the last months served as my build computer for KDE packages. He is now pining for the fjords, pushing up the daisies, he is an ex-buildserver (scnr). The release packages are done by Christian though, so you don't have to fear about the release. If some other packages will need a bit longer, please excuse me though - I am already searching for a new solution...

and the systemsettings in Control Panel in the classical view