The Muon Package Management Suite has been getting a lot of attention lately, but this doesn’t mean that cool things aren’t happening elsewhere in the QApt world. Since 1.0, QApt has shipped a utility called QApt Batch, a batch installer used mainly for integrating package installation into KDE applications in Kubuntu. QApt 1.2 will see the inclusion of several more utilities, that have perhaps a bit more… *ahem*… utility than QApt Batch. I will be introducing these new utilities over the next few blog posts as a little blogging miniseries. With that, I’ll start with the first post.

QApt GStreamer Helper

The QApt GStreamer Helper is an implementation of the GStreamer plugin installation framework that GStreamer applications (and more recently the GStreamer Phonon backend now support)

There’s not too much to show. Phonon sends us a request for a plugin, and we ask the user if we can install it.

The searching process uses LibQApt to find packages that provide GStreamer metadata, and uses QtGstreamer to see if the package will provide the needed plugin based on the metadata. I must say, QtGstreamer is a dream to work with. I had originally been using plain ol’ GStreamer to do the matching, and that was torturous for somebody used to nice, C++, object-oriented APIs.

Once packages are found, the QApt GStreamer Helper gives a final confirmation of the items to be installed. The install process uses an interface very similar to QApt Batch.

Finally, the QApt GStreamer Helper has one feature that it offers to those who do not use GStreamer; it is totally optional. LibQApt has no hard dependency against GStreamer for those who wish to not use it. If QtGStreamer is not found at build time, the QApt GStreamer Helper will not be built. This gives QApt more flexibility over PackageKit, since the PackageKit backend itself has to depend against libgstreamer if it is to provide plugin installation services.

The GStreamer helper is in QApt Git master, and will be included along with QApt 1.2.

Share this: Twitter

Reddit

Like this: Like Loading... Related