Has anyone figured out how to install/backport a Debian Handbrake package on Debian wheezy? The only version of Handbrake currently in Debian is in experimental, and the dependencies are not available on wheezy, so I can’t easily rebuild it. In particular the version of libav used is the version in experimental.
The unofficial deb-multimedia repository is a possibility, but I have had problems in the past with its packages being incompatible with Debian. Using a Ubuntu PPA might also be a possibility.
But Linux multimedia is a complicated mess, and I would prefer not to have to mess with it.
Answers:
Thank you for visiting the Q&A section on Magenaut. Please note that all the answers may not help you solve the issue immediately. So please treat them as advisements. If you found the post helpful (or not), leave a comment & I’ll get back to you as soon as possible.
Method 1
Handbrake is in wheezy-backports now. To install it, add the following line to /etc/apt/sources.list:
deb http://cdn.debian.net/debian wheezy-backports main
Then run the following commands:
sudo apt-get update sudo apt-get -t wheezy-backports install handbrake
If you get an error message saying that Handbrake breaks libdvdread4, you can upgrade libdvdread4 to the wheezy-backports version:
sudo apt-get -t wheezy-backports install libdvdread4
Method 2
Wheezy does not have a Handbrake package. Handbrake is a very useful package. So, what can one do? Debian’s only Handbrake package is:
apt-cache policy handbrake
handbrake:
Installed: (none)
Candidate: 0.9.9+dfsg-2~2.gbpa4c3e9
Version table:
0.9.9+dfsg-2~2.gbpa4c3e9 0
50 http://debian.lcs.mit.edu/debian/ testing/main amd64 Packages
50 http://debian.lcs.mit.edu/debian/ unstable/main amd64 Packages
and I was unable to backport this to wheezy
So, I downloaded the source from www.deb-multimedia.org. In general I don’t recommend using this site, because the packages are not compatible with Debian packages. However, one can get this Handbrake package to build on wheezy.
apt-cache policy handbrake-gtk
handbrake-gtk:
Installed: 0.9.8+git20121007-dmo6
Candidate: 0.9.8+git20121007-dmo6
Version table:
0.9.8+git20121007-dmo6 0
1 http://www.deb-multimedia.org/ wheezy/main amd64 Packages
*** 0.9.8+git20121007-dmo6 0
100 /var/lib/dpkg/status
Here are the build dependencies from the control file.
Build-Depends: debhelper (>= 9), wget, quilt, libfaac-dev, python, libxvidcore-dev, libtheora-dev, libmp3lame-dev, automake, intltool, libtool, libbz2-dev, ccache, libmkv-dev (>= 0.6.5.1), libass-dev, libsamplerate0-dev, libvorbis-dev, libnotify-dev (>= 0.7.3), libdvdnav-dev, libwebkitgtk-dev, libgstreamer0.10-dev, libgstreamer-plugins-base0.10-dev, libgudev-1.0-dev [linux-any], libx264-dev (>= 2:0.122.2184+git5c85e0a), libdbus-glib-1-dev, yasm [i386 amd64 kfreebsd-i386 kfreebsd-amd64], libbluray-dev, libdca-dev, libmpeg2-4-dev, libmp4v2-dev
Here are the build dependencies for this package on my system.
automake/testing uptodate 1:1.14.1-2 ccache/wheezy uptodate 3.1.7-1 debhelper/wheezy uptodate 9.20120909 intltool/wheezy uptodate 0.50.2-2 libass-dev/wheezy uptodate 0.10.0-3 libbluray-dev/wheezy uptodate 1:0.2.2-1 libbz2-dev/wheezy uptodate 1.0.6-4 libdbus-glib-1-dev/wheezy uptodate 0.100.2-1 libdca-dev/wheezy uptodate 0.0.5-5 libdvdnav-dev/wheezy uptodate 4.2.0+20120524-2 libfaac-dev/wheezy uptodate 1:1.28-dmo3 libgstreamer-plugins-base0.10-dev/wheezy uptodate 0.10.36-1.1 libgstreamer0.10-dev/wheezy uptodate 0.10.36-1.2 libgudev-1.0-dev/wheezy uptodate 175-7.2 libmkv-dev/wheezy uptodate 0.6.5.1-dmo3 libmp3lame-dev/wheezy uptodate 3.99.5+repack1-3 libmp4v2-dev/wheezy uptodate 2.0.0~dfsg0-1 libmpeg2-4-dev/squeeze uptodate 0.4.1-3 libnotify-dev/wheezy uptodate 0.7.5-1 libsamplerate0-dev/wheezy uptodate 0.1.8-5 libtheora-dev/wheezy uptodate 1.1.1+dfsg.1-3.1 libtool/wheezy uptodate 2.4.2-1.1 libvorbis-dev/wheezy uptodate 1.3.2-1.3 libwebkitgtk-dev/wheezy uptodate 1.8.1-3.4 libx264-dev/wheezy uptodate 2:0.123.2189+git35cf912-1 libxvidcore-dev/wheezy uptodate 2:1.3.2-9 python/wheezy uptodate 2.7.3-4+deb7u1 quilt/wheezy uptodate 0.60-2 wget/wheezy uptodate 1.13.4-3 yasm/wheezy uptodate 1.1.0-1
Except for libfaac0, libfaac-dev, libmkv0, and libmkv-dev which I obtained from http://www.deb-multimedia.org/, all these dependencies are satisfied by wheezy. faac can be built from the testing sources.
The testing automake is not needed here, and libmpeg2-4-dev has the same version in squeeze and wheezy.
You do need to make the following change. Replace
libx264-dev (>= 3:0.122.2184+git5c85e0a)
with
libx264-dev (>= 2:0.122.2184+git5c85e0a)
in debian/control. Then running debuild -uc -us should work.
Finally one can install by doing
dpkg -i handbrake-gtk_0.9.8+git20121007-dmo6_amd64.deb
When installed it looks like
ii handbrake-gtk 0.9.8+git20121007-dmo6 amd64 Versatile DVD ripper and video transcoder (GTK GUI).
NOTE: this package is (unusually) using Debian source format 1.0. This means, for example, that versioning the source package will cause dpkg-source to have fits. Additionally, switching to 3.0 (quilt) format is non-trivial, because upstream patches are contained in both debian/patches and the diff.gz. I’ve sent Christian Marillat a 3.0 (quilt) version, so maybe he will fix it.
UPDATE: Christian said he was using 1.0 format because his infrastructure does not support 3.0 quilt, and he is unable to upgrade his infrastructure because of technical reasons related to the software he is using.
Method 3
A method that worked for me on Debian Wheezy 7.6:
sudo apt-get install subversion yasm build-essential autoconf libtool zlib1g-dev libbz2-dev libxml2-dev libogg-dev libvorbis-dev libsamplerate-dev libfribidi-dev libfreetype6-dev libfontconfig1-dev libass-dev libmp3lame-dev libx264-dev intltool libglib2.0-dev libdbus-glib-1-dev libgtk-3-dev libgudev-1.0-dev libwebkitgtk-3.0-dev libnotify-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libappindicator-dev libtheora-dev svn checkout svn://svn.handbrake.fr/HandBrake/trunk hb-trunk cd hb-trunk ./configure --disable-gtk --launch cd build sudo make install
I used ‘–disable-gtk’ to build/install HandBrakeCLI only.
Also note that you can read about needed dependencies and such in the readme within the svn downloaded files: hb-trunk/doc/BUILD-Linux
All methods was sourced from stackoverflow.com or stackexchange.com, is licensed under cc by-sa 2.5, cc by-sa 3.0 and cc by-sa 4.0