Monthly Archives: December 2013

Introducing “XBMC from Debian”

… available from unstable, and hopefully soon from testing, too!

The longer story:

The xbmc package has been uninstallable and unbuildable in Debian unstable for quite some time. Mainly due to differing preferences of the XBMC project and Debian.

Original XBMC source includes several embedded libraries, some patched to work with XBMC perfectly and to provide the best user experience the XBMC project prefers building XBMC with those libraries.

In Debian, on the other hand, the recommended practice is not embedding libraries, but using the packaged versions instead to reduce the amount of security updates in case a library needs a security related fix, to save space on mirrors and to avoid divergence between the embedded versions of the libraries.

One consequence of using externally packaged libraries is the need for making XMBC work with newer versions of the external libraries even when the embedded one would still work perfectly or (in some rare cases) there are even breakages due to changing APIs or new bugs in the library.

XBMC depends on many libraries and the changes to them in Debian used to break one or another XBMC use case. The XBMC project received many direct bug reports from users of the Debian-shipped XBMC package which were harder than necessary to handle due to the lack of clear differentiation from the .deb packages provided directly by
them and using the embedded libraries.

To help both users and developers the xbmc package starts using the “XBMC from Debian” name on the main screen and in the logs, the version number used inside the application is set to the Debian package’s version, and README.Debian directs users of the package to Debian’s BTS instead of XBMC’s forums.

The most notable difference between XBMC and “XBMC from Debian” is that XBMC uses
its embedded patched FFmpeg, while “XBMC from Debian” uses libav. If movies play too slow, too fast, without sound or too loud, you should definitely check BTS first. 😉

Happy Holidays and don’t stay too much in front of the screen if “XBMC from Debian” happens to work for hours without any crash! 🙂

update: (The crashing part is just a joke. “XBMC from Debian”  should work flawlessly. I use it every day without problems.)

update 2: If you prefer the internal FFmpeg over Libav for some reasons I have created a separate repository for the package using the internal FFmpeg library copy starting from Gotham.