Saturday, October 6, 2012

Randa: KDE Edu installer for Windows

Some of you may question why I was working on the Rekonq Windows installer at the KDE Edu sprint in Randa. This is a very good question because it seems at first glance that got I distracted from my reason for travelling there. Although, I do not unfortunately have screenshots in this post, let me explain the situation. It is a bit dry for a reason, but please bear with me. :-)

The KDE Edu sprint began with the KDE Edu on Windows session, at least for me. We had a very productive discussion during the session and among many topics one topic was particularly close to my heart; just like at the KDE Windows BoF in Tallinn at aKademy:

How can we proceed with promoting KDE Edu on Windows? How can we get an installer as soon as possible?

Having had the session I briefly decided in my mind I was going to work on an installer as an experiment when we have spare time among the sessions.

The KDE Windows team did a great job for aiding the situation, so many thanks to them. One thing which was immediately obvious in this area: we have to have an installer for a full KDE Edu stack, so not just a single application. We have had examples out there for having a Windows Installer for Amarok and so forth, but they are all standalone applications.

Although I have made Windows NSIS installers previously for Gluon, Mula and so forth by using CPack, as a total newbie about making Windows installers this way, I have decided to make an in-between step. What in-between step exactly? That said, having thought through, it was clear to me I should grab the "qewitter" package and get something similar done for a KDE application. As I previously had the urgent need for a Rekonq installer  at my company, I stuck with the idea of creating a standalone installer for Rekonq and then learning the basics along the way, and once that is done I can introduce the new factor of having an installer for a full stack, and not just a standalone.

As you may have read my previous blog post about the initial success of the Rekonq installer, I began the work on the KDE Edu installer. Actually I got that working during Randa with a few quirks. The most important issue was that I did not get a shortcut in the Start menu for each application. Meanwhile the KDE Edu suite installed fine with a simple "next workflow", one had to go the executable files and run them manually. Therefore, theoretically it was installable, but not too user friendly. ;-)

As for accomplishing that goal, I had to make a custom NSIS script which did not have time in Randa, but actually I got that done and committed at the Milan Bergamo airport and also onboard the plane. Vis major situation is vis major... Unfortunately when I was generating the latest version of the installer, my Windows 7 froze on the airplane, and did not respond, no matter what I did. When I tried to force a hard reboot, the operating system did not boot anymore. The last days I have tried to repair the ntfs filesystem on my Linux operating system with "ntfsfix", I have also tried to get the boot manager repaired. I have also tried to use the Windows 7 DVD I got from my colleague, but after two unsuccessful tries (3 hours repair / try), I just gave up.

If anybody has a good idea how I could get my Windws 7 working again, let me know. Otherwise I will just back-up the kderoot folder, and execute a reinstall when I have a little free time. In the meantime, if anybody is interested in the "raw installer", no shortcuts in the Start menu as it is not the latest generation, I can upload to the server. :-)

Alternatively, if someone has a KDE Windows emerge environment, "emerge --package kdeedu-package" should also work theoretically. That even worked for me practically. :)

Last, but not least: I left out the "Step" and "Rocs" project out of the KDE Edu installer for now as they have had some build issues. I began to address the Rocs build issues at the sprint, but I was unable to solve that completely. "Step" is currently a bit of unmaintained piece, and the compilation errors were not too easy to fix up, so we did not spend too much time with that.


  1. Thanks for the work Lazlo. This just high-lights for me how much of a mess the FOSS-on-Windows installer situation is: lots of projects running around writing custom installers to install multiple instances of shared libraries and all duplicating effort and infrastructure. I wish some company would sponsor someone to build a FOSS App Store for Windows and OSX that would make it all easy for both users and devs. It would certainly boost FOSS profile on those platforms.

  2. Thank you for your feedback, John! Appreciated. :-)

    The KDE Windows project developed this emerge tool which can be actually used by any-third party project as it is not a technology tightened to KDE.

    For instance, Gnome and other projects could essentially do the same in my understand if their softwares are up to running on Windows.

    As for the KDE installers, we share the same infrastructure, and the metadata is filled in properly in python files which are usually simple. That is at least good news. :-)

    Coming to your point, I fully agree with you. I have even raised this concern previously several times, including the KDE Edu sprint in Randa.

    Couple of months ago, we had the idea of having a Qt Store for Qt and QML applications. That would work cross-desktop among Windows, OSX, and Linux. It it not a big gain on Linux as you have also omitted to mention that, but that is the idea. We decided with an acquaintance back then to base such an idea on the Open Collaboration Services specification as that has already been used by quite a few projects, including KDE through attica.

    Unfortunately, it is just an interesting vision we established back then, and we are not paid for this. It would be awesome to see someone(s) working on that in full-time. Count a +1 in from my side as well. :)