GUPnP soon in Fedora

Peter Robinson had made RPMS for GUPnP package for a while now but it was until recently that someone got a chance to review them. The first (and IIRC the only) issue that came out was that the build was breaking for all our apps. Here is what was happening:

We call g_thread_init() in each of the application because libsoup requires us to do that. If I understand correctly, libsoup needs the threading system to be initialized for locking stuff that is actually a part of glib. While we don't mind putting this call in each of our app, we assumed that libsoup requiring us to make this call will itself link to libgthread-2.0. That assumption is true about libsoup-2.4 built/installed from vanilla release tarballs, subversion repo and debian/ubuntu packages but on Rawhide, it turned out to be false.

I (and a bunch of other developer hanging out on #gnome-hackers) had a chat with Dan Winship about this and in the end he agreed to put gthread-2.0 in libsoup-2.4 pkg-config. He said that it will be a while before he can make a release so we decided that we ourself link the apps to gthread-2.0 until then.

Peter has already put the required patches into his packages. Here is page to track the status of the packages and as of this writing two of the packages have already been approved. A big thanks to Peter for his efforts to make GUPnP easily available to Fedora world.

Comments

Anonymous said…
"The first (and IIRC the only) issue that came out was that the build was breaking for all our apps."

Does this mean that the installation of a single "misbehaving" app on Fedora can bring a whole bunch of other apps to their Knees?

This doesn't sound good.
zeenix said…
Does this mean that the installation of a single "misbehaving" app on Fedora can bring a whole bunch of other apps to their Knees?

No! "our" apps didn't build because of a library: libsoup.
Anonymous said…
It's not just rawhide, it will break on gentoo too. :-}

Popular posts from this blog

Welcome to the virtual world!

clutter-gst

zbus and Implementing Async Rust API