I was a couple of releases behind on the Handbrake video transcoding software. I am always a bit hesitant with upgrading Handbrake. It has a history of being hard to compile on the stable Slackware releases.
Most notably it is the GTK+3 based GUI for which our Slackware libraries are often too old. And indeed, with the latest 1.3.0 release I found that this would not compile on Slackware 14.2 despite the hack I already used for the previous package (1.2..2) which I created earlier in 2019. It took me a day to come up with a second patch that allows Handbrake 1.3.0 to compile against our gtk+3 3.18.9 while in fact the program’s GUI component wants gtk+3 3.20.0 or higher.
So, Slackware 14.2 users – please tell me if you find that some functionality of the GUI is not working… it should all work properly but you never know.
In addition, I had to add a patch to make the new dav1d AV1 decoder compile on Slackware 14.2 but luckily I could just re-implement what I had already done for VLC.
The package for Slackware-current built without any glitches. Yay.
Note that my ‘handbrake‘ package does not have any external dependencies – unlike the slackbuilds.org version.
Install and run, it’s that simple. Everything you need is compiled statically into the package. The ‘HandBrakeCLI‘ program is the command-line variant, whereas ‘ghb‘ is the GUI variant of HandBrake, also found in the “Multimedia” menu of your desktop environment.
Packages for Slackware 14.2 and -current with AAC audio encoding support can be obtained from my “restricted” repository:
- http://slackware.nl/people/alien/restricted_slackbuilds/
(rsync://slackware.nl/mirrors/people/alien/restricted_slackbuilds/) - http://slackware.uk/people/alien/restricted_slackbuilds/
(rsync://slackware.uk/people/alien/restricted_slackbuilds/)
The variant which does not support AAC audio encoding and therefore does not violate the stupid US software patents can be downloaded from the regular repository:
- http://slackware.nl/people/alien/slackbuilds/
(rsync://slackware.nl/mirrors/people/alien/slackbuilds/) - http://slackware.uk/people/alien/slackbuilds/
(rsync://slackware.uk/people/alien/slackbuilds/)
I also have neglected my mkvtoolnix package for a while. You may be aware already that MKVToolNix is a set of tools to create, alter and inspect Matroska files (most widely known as the MKV video container format).
When working on the handbrake packages, I decided to check out the latest mkvtoolnix as well. And what do you know… the latest release won’t compile on Slackware 14.2!
I went back through the releases of 2019 and found that 38.0.0 is the most recent version which still compiles using the gcc compiler of Slackware 14.2 against the boost libraries of Slackware 14.2. Anything newer will not compile. End of the line for mkvtoolnix releases on the stable Slackware then.
These issues are absent on Slackware-current. I could compile mkvtoolnix 41.0.0 (the most recent release) easily.
Note the dependencies for mkvtoolnix:
Since its GUI and multimedia support is based on Qt5, you’ll have to install libxkbcommon and qt5 from my repository. And the qt5 dependencies as well: OpenAL and SDL_sound. On Slackware 14.2 two more even: libinput and libwacom.
Starting with mkvtoolnix 20.0.0 there’s another, new, dependency: cmark. Like with all the other dependencies I mentioned, cmark can be downloaded from my repository or any of its mirrors.
Get all the packages here:
- http://slackware.nl/people/alien/slackbuilds/
(rsync://slackware.nl/mirrors/people/alien/slackbuilds/), or: - http://slackware.uk/people/alien/slackbuilds/
(rsync://slackware.uk/people/alien/slackbuilds/)
Enjoy! Eric
Thanks again for providing these packages, your work is always highly appreciated here! As regards running the latest MKVToolNix on Slackware 14.2: while compiling and packaging has come to an end on Slackware I have just tested the ‘system agnostic’ AppImage with release MKVToolNix 41.0.0 on 14.2 and it runs very, very well:
https://www.fosshub.com/MKVToolNix.html
The developer seems to be providing this APPImage himself although this is not entirely clear from the documentation on his web site.
Hi Andrew
Good for you that the developer offers a Linux appimage for his latest release. He creates them himself: https://mkvtoolnix.download/downloads.html#appimage
That is not what I am interested in however – creating appimages is a ton more work and very time-consuming in terms of compiling, and it is just not going to happen for all the packages I maintain. My Slackware package is 6.5 MB whereas the appimage is 40.5 MB… imagine if your system software was made up of all kinds of appimages.
Also, if I can avoid it I will not download binaries for which I cannot tell how they were compiled.
alienbob, thanks for these updates, and thanks also for your longstanding contributions to Slack!
Hope your Holidays have been great and Happy New Year!
For kde5, I see two more packages that need recompiling : cantor (for the new python3) and krfb (for the new libvncserver).
Hi Eric,
even if your 1.3.0 package runs flawlessly I noticed that version 1.3.2 was released the other day. Built without issues on -current using your buildscript with patches and additional sources, seems to work as it should (haven’t tried out all options, of course).
Stay safe!
I’ll see if I can update the package, thanks for the feedback.
Hi Eric,
HandBrake 1.3.3 is out with a few bug fixes and minor improvements. Tried compiling using your buildscript, with a change to the additional sources so that the build now uses ffmpeg-4.2.3 (as per HandBrake’s changelog).
Build went smoothly, as did a quick first test (adding a subtitle file to a video).
Take care,
KG
Hi Eric,
I hope that you and yours have managed to stay clear of the Covid surge in the Netherlands. If everything’s fine and you can find the time, a new version of HandBrake (1.4.0) has been released, which may need some tweaking to your buildscript: New versions of a number of 3rd party libraries, and two new dependencies. See https://github.com/HandBrake/HandBrake/releases/tag/1.4.0
Hi Eric,
Handbrake-1.5.0 was released yesterday. No big changes, except fixing a filter issue (that I’ve never encountered myself) and unspecified bugs – plus of course updated libraries.
I nevertheless tried to build the new version using your buildscript, but got stuck on line 532:
cd build
receiving the error “no such file or directory”.
I then tried Ponce’s script and ran into another error – complaints about “missing info”. After cloning the git (instead of downloading the source tarball) I finally could compile a package – so maybe something is missing from the source tarball and it might be prudent to wait a few days for this to be fixed.
There’s a bit more to fix. Only the git clone works at the moment indeed, neither of the downloadable source archives work. But also, libvpl is missing because HandBrake devs think that distros have that available as part of their package set. We need to build it statically into HandBrake.
Aka ‘working on it’.
I have uploaded handbrake-1.5.0 packages for Slackware -current. Those for Slackware 14.2 will compile overnight.
I find it ugly that the git snapshot which I had to use in order to make this compile, does not show “version 1.5.0” in the application’s ‘about’ window but instead some git hash. Pity.
… aaaand, HandBrake 1.5.1 is released. It builds fine and shows the correct version in the application’s ‘About…” box.
Packages will follow later today.