From 9e36bdf0eb80b1f930daef1cd630e2bc1ff5c2c5 Mon Sep 17 00:00:00 2001 From: praschdorff Date: Sun, 18 Feb 2018 23:28:51 +0100 Subject: [PATCH] Upated multimedia A step-by-step howto to create a debian based Multimedia AppVM to play Netflix, Amazon Prime, Spotify content and playback DVDs. --- configuration/multimedia | 222 ++++++++++++++++++++++----------------- 1 file changed, 123 insertions(+), 99 deletions(-) diff --git a/configuration/multimedia b/configuration/multimedia index e2c676cd..12c5dbde 100644 --- a/configuration/multimedia +++ b/configuration/multimedia @@ -1,136 +1,160 @@ --- layout: doc -title: How to play multimedia content -permalink: /doc/config/multimedia/ +title: Multimedia +permalink: /doc/multimedia/ +redirect_from: +- /en/doc/multimedia/ +- /doc/Multimedia/ +- /wiki/Multimedia/ --- -This short howto will explain how you can use Spotify, Netflix or Amazon Prime under Qubes OS. -This steps have been tested by providing an own "multimedia" App VM which is based on the Qubes OS Debian 8 Template VM. +Multimedia +========== -Listen to Spotify -================= -Install-Howto: https://www.spotify.com/de/download/linux/ +In order to choose Qubes OS as your primary OS it must be able to do all tasks, including playing multimedia content. +This howto explains how to create a multimedia temmplate which can be used to play multimedia content. +This includes: -Detailed steps which must be run in the Debian 8 template VM. -A good idea might be to clone the existing Debian 8 template and create an own debian-8-multimedia template from whoch you can then create an App-VM. -You need to make sure that you allow networking to the internet during installation, as you need to download some data which are not from the default repositories. +- Spotify +- Amazon Prime +- Netflix +- DVDs -# Become root -su - -# Download the Key which is used for signing the Spotify package repository -apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys BBEBDCB318AD50EC6865090613B00F1FD2C19886 -#Public-Key: http://keyserver.ubuntu.com/pks/lookup?op=vindex&search=0xD2C19886&fingerprint=on -#Fingerprint: BBEB DCB3 18AD 50EC 6865 0906 13B0 0F1F D2C1 9886 -# Add the package repository to your list of package sources -echo deb http://repository.spotify.com stable non-free | tee /etc/apt/sources.list.d/spotify.list -# Make the new repository known to your system -apt-get update -# Install the Spotify Client -apt-get install -y spotify-client +Hint: This first draft of this howto was written under Qubes OS 3.2 but it should also work for Qubes 4rc4. +Installation +------------ -Play Netflix -============ -You can play Netflix by installing a more recent version of firefox or by installing Google Chroome. -As Google Chrome will play video from Netflx and (!) Amazon, the suggestion is to install Google Chrome. -If you don't use Amazon Prime, Firefox will work. +Start by cloning the default debian template in dom0. +Hint: +t-multimedia is just the template VM where we will install all packages. +In the last step we will create an AppVM from this template. -Install Firefox ---------------- -The built in Firefox (from the Debian Template VM) was Firefox ESR 45.3.0 -According to the "supported browser" list Mozilla Firefox >= 47.x is needed. -I've thereoff installed Firefox v53.0.2 according to this manual: -http://libre-software.net/how-to-install-firefox-on-ubuntu-linux-mint/ +`qvm-clone debian-9 t-multimedia` -1) download firefox from https://www.mozilla.org/en-US/firefox/new/?scene=2 -direct download link: -https://download-installer.cdn.mozilla.net/pub/firefox/releases/53.0.2/linux-x86_64/en-US/firefox-53.0.2.tar.bz2 +As we need to install some package outside of the regular repositories you need to enable networking for the Template VM. -2) unpack the downloaded file -tar -xjf firefox-53.0.2.tar.bz2 +`qvm-prefs --set t-multimedia netvm sys-firewall` -3) move the unpacked folder: -sudo mv firefox /opt/firefox53 +Launch a Terminal in the new template VM: -4) Create a symlink to the new firefox version: -if you want to use the new installed firefox as "standard firefox", rename the original link in case you want to go back to the previous version -sudo mv /usr/bin/firefox /usr/bin/firefox-old -Create a link to the new firefox version -sudo ln -s /opt/firefox53/firefox /usr/bin/firefox +`qvm-run --auto t-multimedia gnome-terminal` -5) Launch firefox and open Preferences, Content and enable "Play DRM content" -That's it, login into Netflix and enjoy. +Important: +Enter all the following commands in the terminal of the template VM + +Become the root user to run all follwoing command without the need to use sudo + +`sudo -i` + +Installation of Spotify +----------------------- + +Import GPG-Key for spotify + +`apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 0DF731E45CE24F27EEEB1450EFDC8610341D9410` + +> http://keyserver.ubuntu.com:11371/pks/lookup?op=vindex&search=0xEFDC8610341D9410&fingerprint=on +> UUID: Spotify Public Repository Signing Key +> Key-ID: 0x341D9410 +> Fingerprint=0DF7 31E4 5CE2 4F27 EEEB 1450 EFDC 8610 341D 9410 + +Add Spotify repository to package list + +`echo deb http://repository.spotify.com stable non-free | tee /etc/apt/sources.list.d/spotify.list` + +Update package list + +`apt-get update` + +Install Spotify from the repositories + +`apt-get install -y spotify-client` + +Create a spotify desktop-entry + +`cp -p /usr/share/spotify/spotify.desktop /usr/share/applications/` +`cp /usr/share/spotify/icons/spotify-linux-16.png /usr/share/icons/hicolor/16x16/apps/spotify.png` -How to use Amazon Prime -======================= -Playing Video thorugh Amazon Prime via Firefox didn't work, with Google Chrome it works. -Warning: You need to install Google Chrome, not Chromium. +Installation of VLC +------------------- -Install Google Chrome ---------------------- -Launch you Debian 8 Template VM +To play DVDs you can install VLC with the needed Codecs -1) Download latest .deb-package of Google Chrome - wget -c wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb +Add Repository for libdvdcss +(See also: http://www.videolan.org/developers/libdvdcss.html) -2) Install the package - sudo dpkg -i google-chrome-*.deb +Add GPG-Key +`apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 8F0845FE77B16294429A79346BCA5E4DB84288D9` -3) Install missing dependencies - sudo apt-get install -f +> Public-Key: http://keyserver.ubuntu.com/pks/lookup?op=vindex&search=0xB84288D9&fingerprint=on +> Fingerprint: 8F08 45FE 77B1 6294 429A 7934 6BCA 5E4D B842 88D9 -4) Shutdown Template VM +Add repositories to install VLC and libdvdcss +`echo "deb http://download.videolan.org/pub/debian/stable/ /" >> /etc/apt/sources.list` +`echo "deb-src http://download.videolan.org/pub/debian/stable/ /" >> /etc/apt/sources.list` -5) Add Google Chrome Shortcut to your multimedia App VM +Update package repositories +`apt-get update` + +Install libdvdcss and VLC +`apt-get install -y libdvdcss2 vlc` + +Installation Google Chrome +-------------------------- -Play DVDs -========= +To play Videos with Netflix, Amazon Prime & Co using Chrome is a good option as it has all needed codecs included. +Hint: Using Chromium will not work for some reasons. -To play DVDs within Qubes I have used my new multimedia App VM (which can also play Spotify and Netflix, see post from yesterday). -The multimedia App-VM is based on the Debian 8 Template in Qubes 3.2 -Some suggested to install the whole desktop within the Debian Image, I don't want to install everything but only the stuff, that is really needed. -As such I have looked at the Debian documentation +Download Google Chrome package from the Google Debian repository -1) Launch Debian 8 Template VM and install the Qubes Proxy Tools, so that you can pass your (external?) DVD-Drive via sys-usb to the multimedia App-VM. Strangely the qubes-usb-proxy seems to be installed within the fedora template but not in the debian template. - In Debian Template VM: - sudo apt-get install qubes-usb-proxy +`wget -c https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb` -2) Install libdbdread4 from the default repositories: - In Debian Template VM: - apt-get install libdvdread4 - -3) Install libdvdcss for the decryption of CSS protected-DVDs. - Because of license restrictions in various countries this can't be done from the Debian repositories but needs to be installed manually. - (not that hard :-)). - Download the packaged .deb from: http://www.deb-multimedia.org/dists/stable/main/binary-amd64/package/libdvdcss2 - In Debian Template VM: - wget http://www.deb-multimedia.org/pool/main/libd/libdvdcss/libdvdcss2_1.3.0-dmo1_amd64.deb - sudo dpkg -i libdvdcss2_1.3.0-dmo1_amd64.deb +FIXME: Howto verify the debian package or better adding a Google Debian package repository? +Link: https://www.google.com/linuxrepositories/ -4) I like to use VLC to playback Video/DVDs - you might want to use another player, but VLC works fine. - As this is not installed in the default Debian Template: - In Debian Template VM: - sudo apt-get install vlc - This will also install some dependencies. +1st attempt to install the downloaded package -5) Shutdown the Debian Template VM and launch your multimedia App VM +`dpkg -i google-chrome-stable_current_amd64.deb` -6) Plugin your external USB DVD-Drive (if you don't have an internal drive) and pass it to the multimedia App VM - In dom0: - qvm-usb -a multimedia sys-usb:3-6 +Installer will quit with an error message as not all dependencies are met (yet): -7) Launch VLC - qvm-run multimedia vlc - Warning: a window will open in the background which will ask for collecting metadata information. - I haven't seen the window as it was covered by the VLC main window, so that I couldn't launch any commands in this window. +> dpkg: dependency problems prevent configuration of google-chrome-stable: +> google-chrome-stable depends on fonts-liberation; however: +> Package fonts-liberation is not installed. +> google-chrome-stable depends on libappindicator1; however: +> Package libappindicator1 is not installed. +> dpkg: error processing package google-chrome-stable (--install): +> dependency problems - leaving unconfigured +> (...) +> Errors were encountered while processing: +> google-chrome-stable -8) Open DVD within VLC: - Media > Open Disk - You can leave the defaults (/dev/sr0) and just hit play +Install the missing dependencies for Google Chrome -Enjoy your DVD +`apt-get -f upgrade` + +(This will install: fonts-liberation libappindicator1 libdbusmenu-glib4 libdbusmenu-gtk4 libindicator7 libxss1) + +After the dependencies are installed rerun package installation of Chrome + +`dpkg -i google-chrome-stable_current_amd64.deb` + +Clean up the mess and shutdown your multimedia template VM + +`rm google-chrome-stable_current_amd64.deb && shutdown -h now` + + +Create a Multimedia AppVM +------------------------- + +After you have created the multimedia AppVM template you can create an AppVM for daily use based on it + +`qvm-create --template=t-multimedia --label=orange multimedia` + +Add Google Chrome, VLC and Spotify to the AppVM Menu via "add/remove app shortcuts"