KDE Edu speaks AppData

Just in time before the KDE SC 4.14 string freeze applies, I merged my last AppData patches and as of now: all KDE Edu applications provide AppData meta information. This means, they will be better visible in software centers like Apper or GNOME-Software.

Well, this is only a very short announcement, if you want to read more about the benefits of and ideas behind AppData and AppStream, please have a look at Ximion’s blog.

Just a personal experience note after touching those > 20 files: The auto generated files are quite helpful and provide a good start. But effectively, every file had to be adjusted by hand. This does not come from the generation scripts but from the fact that we have a multitude of application descriptions, webpages, and screenshots that are not all in sync (yet). The most common things that had to be updated in the pre-generated files were:

  • The homepage address was missing or pointing to an outdated page.
  • The screenshot URLs were broken, missing, or we provided an awfully old version somewhere at our websites (will be fixed soon or is already fixed 😉
  • The description texts were often quite out of date.

So the next step after having this up-to-date AppData files is to backport the updates to the websites. In particular, I am looking forward to re-use the AppData files to have an easier way to generate the static application data on our websites. But more to that in a later blog post…

By the way: There is currently happening a lot in KDE Edu and you can help all those people who create free and open educational software for you by supporting the upcoming sprint in Randa:

Donations can be done HERE.

Artikulate port to GStreamer-1.x is ready to merge

As an pronunciation trainer, Artikulate does not only need sound output, but also sound input. For sound output the (Linux) world is kind of simple and it only costs some lines of code to integrate Phonon or a similar framework into your application. For sound input it is trickier, especially if you do not want to work with a C-style API (when coding a C++/Qt application, C-style API feels very strange). The solution to this problem is QtGStreamer, which provides Qt-style C++ bindings for GStreamer, and hence access to the currently best multimedia framework.

Until recently, the downside in using QtGStreamer was that one was stick with GStreamer-0.10. That is especially problematic as GStreamer-0.10 is unmaintained, and in one are another way, every reported sound bug in Artikulate could be tracked down to having its root in that old GStreamer version.

But people did some awesome work, and the qtgstreamer/master branch finally supports GStreamer-1.x. And since today, also Artikulate is ready and in the artikulate/gstreamer-1.0-port branch, you can find a fully working port of Artikulate, which uses current qtgstreamer/master. It is well tested and will directly be merged into master, once a new QtGStreamer version is published.

Now, that it is only a matter of time that all our sound issues are fixed, the next step is to look forward for porting to Qt5. For Artikulate and any other KDE Edu application it will be also a major step in being able to reach a wider audience by our applications, by being able to support many more platforms.

If you want to support this and many other efforts, here is your chance:

The Randa sprint is looking for sponsors!