Arch, Linux, Operating Systems

Enable DRM for Flash on Arch Linux

I know that Amazon is moving towards Silverlight, thanks to strong-arming from the MPAA, but for a while, Adobe Flash is still a viable option. Most of my readers will already have Flash installed, but just in case you don’t, here’s how you install it:

— With sudo

sudo pacman -Syu
sudo pacman -S flashplugin

— With su

su -c "pacman -Syu"
su -c "pacman -S flashplugin"

From this point forward, I’m only going to present instructions in sudo, as that’s what I use. Also, makepkg requires it as well to install build dependencies. This post does not cover configuring sudo, but here’s a manual if you need it.

Alright, now you should have Flash installed. You can load flash sites like YouTube, or New Grounds, and things work fine. But when you try to play streams at legal movie sites like Amazon, you keep getting notified that you need to upgrade your Flash plugin. This just simply not true. Your Flash version is not at issue here, your DRM stack is. Flash’s DRM stack relies on outmoded HAL libraries in order to process the stream into something you can play on your screen. The thing is, most Linux distributions don’t have HAL anymore, they use udisks instead.

You could go and install a HAL layer into your system, and that will fix the issue for now. The issue of course is, that only fixes it for now, and not for the forseeable future. If you want a more pernament fix that you continue to update your system with without worry of conflicts, or stuff no longer working, there is a solution. That solution comes by way of hal-flash. Chris Horler has created a shim for udisks to process HAL DRM requests from flash. It is NOT a full HAL stack. I think his solution works better than installing HAL on a modern Linux, less bugs, uses libraries that are still maintained, etc. No need to go into a full political debate here. Anyway, now to install it:

Ensure you have the base-devel group installed

sudo pacman -S base-devel

Download the AUR package

Download

Extract, and build the package

Open your favorite terminal and navigate to the folder where you downloaded the lib-hal package tarball, and enter the following commands:

tar xvzf hal-flash.tar.gz
cd hal-flash
makepkg -s

At this point, makepkg may ask you to install additional packages before continuing, please say yes to them.

Install the package

Next you’ll want to figure out your package name, so run ls to show the directory contents and look for a file ending in .pkg.tar.xz. When I wrote this, hal-flash was at 0.2.0rc1, and it was revision one of the available package build. The filename ended up being hal-flash-0.2.0rc1-1-x86_64.pkg.tar.xz. Great, now I can install my package!

sudo pacman -U hal-flash-0.2.0rc1-1-x86_64.pkg.tar.xz

Enjoy some DRM encoded movies

Now you should be able to watch just about any DRM encoded flash movies around, not just those at Amazon. I’m a strong believer that availability reduces piracy. Nothing ends it, I guarantee that, but the easier your content is to access legally, the less likely people are to go out looking for an illegal alternative to acquiring it. Remember, people are lazy, design your distribution accordingly and prosper. Now if only movie companies would get that through their heads. Music companies are getting better about it, now if they could only cure their lawsuit frenzies. Software companies have a whole load of other issues, so I’m just not going there.

Anyway, keep reading, and sharing these posts with your friends or anyone else who you think would be interested! Have a safe day, and I hope to help you again real soon. If you have questions or concerns, leave a comment below!

Leave a comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.