watching Amazon Prime with Linux openSUSE Leap

2020-10-25 : Linux video streaming of DRM content

By design a new and bare openSUSE Leap installation comes without support for DRM restricted video playing/streaming like Amazon Prime. Therefore you'll get an error message when starting such a video stream in your web browser.

Well, it's in our decision to install further support for additional video formats and DRM libraries. For this we have to add another repository to exchange some system packages and add some new ones also. Just open a terminal and become root by typing in su - and entering your password (most probably the same as your default user).

In a default installation you have these 4 repositories active/installed only:

$> zypper repos
#  | Alias               | Name                        | Enabled | GPG Check | Refresh
---+---------------------+-----------------------------+---------+-----------+--------
 1 | repo-non-oss        | Non-OSS Repository          | Yes     | (r ) Yes  | Yes
 2 | repo-oss            | Main Repository             | Yes     | (r ) Yes  | Yes
 3 | repo-update         | Main Update Repository      | Yes     | (r ) Yes  | Yes
 4 | repo-update-non-oss | Update Repository (Non-Oss) | Yes     | (r ) Yes  | Yes

Now add the PackMan repository (choose an appropriate mirror url) to this list to get access to additional packages:

$> zypper addrepo https://ftp.gwdg.de/pub/linux/misc/packman/suse/openSUSE_Leap_15.2/ PACKMAN

Due to not hardcoding the Leap version into repository urls we want to replace it with a variable in the repo file itself afterwards (depending on the mirror provider, if he complies with this scheme):

$> sed -i 's/15.2/$releasever/' /etc/zypp/repos.d/PACKMAN.repo

We are ready to get the additional and alternative packages. Because some are replacements for ones in the system already, we have to allow these to change their package vendor (a zypper own safety net) while getting the following list:

$> zypper in --from PACKMAN --allow-vendor-change ffmpeg gstreamer-plugins-bad gstreamer-plugins-libav gstreamer-plugins-ugly libavcodec58 libavdevice58 libavfilter7 libavformat58 libavresample4 libavutil56 vlc-codecs

Finally we can watch DRM restricted stuff (besides others) now after restarting our web browser.