Ubuntu 16.04 Xenial Xerus
Ubuntu 14.04 Trusty Tahr
Ubuntu 12.04 Precise Pangolin
Das Projekt Pipelight erlaubt es, für Linux nicht verfügbare Windows-spezifische Plugins für Webseiten (Silverlight,Flash, Unity3D u.v.m.) trotzdem zu nutzen. Hierzu kann bei jedem Browser, der das Netscape Plugin API (NPAPI) unterstützt, das entsprechende Plugin direkt eingebettet werden. Unterstützte und getestete Browser sind im Moment:
Chromium/Google Chrome (ab Version 34 wird NPAPI nicht mehr unterstützt)
Opera (bis Version 12.16)
Das Projekt baut auf einer Entwicklung von Erich E. Hoover auf, der einen Wine-Patch erstellt hat, der DRM-Inhalte in die Windows-Version von Firefox unter Wine einbindet. Dieses Paket wurde unter den Namen Netflix Desktop für Ubuntu zur Verfügung gestellt. Auf Netflix können zwar Videos mittlerweile auch ohne Silverlight geschaut werden. Mitunter muss dafür aber noch der User Agent angepasst werden. Andere Anbieter, wie z.B. Maxdome, setzen hingegen noch ausschließlich auf Siverlight.
Beim Netflix-Desktop musste allerdings Wine alle API-Aufrufe mittels Wine übersetzen und an den Browser übergeben. Dies führte speziell bei Streaming-Seiten zu teils erheblichen Problemen. Eine Lösung dieses Problems ist Pipelight.
Pipelight besteht aus 2 Teilen: Einer Linux-Bibliothek, welche im jeweiligen Browser geladen wird und ein Windowsprogramm, welches mittels einer gepatchten Wine-Version ausgeführt wird. Das Windowsprogramm (pluginloader.exe) simuliert einen Browser und lädt die Silverlight-DLLs. Wenn nun eine Webseite geladen wird, welche Silverlight benötigt, sendet die Linux-Bibliothek alle Befehle des Browsers mittels einer Pipe (daher der Name) an den Windows-Prozess (Wine), der wie eine Brücke zwischen Browser und Silverlight arbeitet. Den großen Leistungs-/Geschwindigkeitsvorteil gegenüber Netflix Desktop bringt hier die Tatsache, dass nicht der gesamte Datenverkehr über die Pipe geht. Es werden nur Initialisierungsparameter und nur manchmal Teile des Netzwerktraffics übergeben. Video- und Audio-Inhalte werden dagegen direkt verarbeitet. Dadurch merkt der Nutzer keine spürbare Verzögerung im Vergleich zu einem Windows-Browser.
Getestet und als komplett nutzbar mit (Silverlight 5.1) ermittelt wurden bisher folgende Video-Portale:
Netflix.com (kann auch ohne Silverlight genutzt werden)
Unter Links befindet sich auch eine Schritt-für-Schritt-Anleitung, welche im Forum getestet wurde und mögliche Probleme und Unklarheiten beseitigt.
Laut Projektseite wurde die Entwicklung von Pipelight Ende 2016 offiziell eingestellt. Die Installation funktioniert vorerst weiterhin. Bei ausbleibenden Aktualisierungen ist in Zukunft aber mit zusätzlichen Komplikationen zu rechnen.
Die Entwicklung von Pipelight wurde inzwischen eingestellt und steht ab Ubuntu 16.10 nicht mehr zu Verfügung.
Pipelight ist kein Bestandteil der offiziellen Paketquellen. Zur Installation muss man daher auf ein "Personal Package Archiv" (PPA) [1] ausweichen.
Adresszeile zum Hinzufügen des PPAs:
ppa:pipelight/stable
Zusätzliche Fremdquellen können das System gefährden.
Ein PPA unterstützt nicht zwangsläufig alle Ubuntu-Versionen. Weitere Informationen sind der PPA-Beschreibung des Eigentümers/Teams pipelight zu entnehmen.
Damit Pakete aus dem PPA genutzt werden können, müssen die Paketquellen neu eingelesen werden.
Das Hinzufügen der Packetquelle kann auch mit folgendem Befehl durchgeführt werden:
sudo add-apt-repository ppa:pipelight/stable
Die folgenden drei Befehle setzen die Aktualisierung der Paketquellen, die Installation [2] und die Aktualisierung von Pipelight [3] um.
Wichtig: Vor der Ausführung der folgenden Befehle müssen alle Browserfenster geschlossen werden, sonst funktioniert die Integration in den Browser nicht:
sudo apt-get update sudo apt-get install --install-recommends pipelight-multi sudo pipelight-plugin --update
Das Paket pipelight-multi installiert auch die Microsoft Core Fonts, welche von Silverlight benötigt werden. Daher müssen während des Installationsvorgangs mehrere Lizenzbedingungen bestätigt werden.
Im nächsten Schritt muss das benötigte Plugin noch aktiviert werden, siehe dazu das Kapitel Plugins weiter unten.
Pipelight besitzt keine grafische Oberfläche, sondern muss im Terminal durch den Befehl pipelight-plugin
bedient werden.
Der Befehl pipelight-plugin
ist folgendermaßen aufgebaut:
[sudo] pipelight-plugin [OPTION] BEFEHL [PLUGIN]
Folgende Optionen stehen zur Verfügung:
Optionen | |
Name | Beschreibung |
-y, --accept | Stimmt automatisch - ohne dass der Benutzer gefragt wird - den Lizenzbedingungen zu. Dies ist beispielsweise nützlich, um das Aktivieren und Deaktivieren von Plugins zu automatisieren. |
Die folgenden Befehle können mit normalen Benutzerrechten ausgeführt werden:
pipelight-plugin BEFEHL [PLUGIN]
Benutzer Befehle | |
Name | Beschreibung |
--enable PLUGIN | Aktiviert das Plugin PLUGIN für den Benutzer, indem ein symbolischer Link im Verzeichnis ~/.mozilla/plugins angelegt wird. Falls der Befehl mit root-Rechten ausgeführt wird, wird das Plugin systemweit aktiviert und der symbolische Link im Ordner /usr/lib/mozilla/plugins angelegt. |
--disable PLUGIN | Deaktiviert das Plugin, indem die symbolischen Links entfernt werden. Mit root-Rechten kann ein Plugin systemweit abgeschaltet werden. |
--disable-all | Schaltet alle Plugins ab. |
--list-enabled | Gibt eine Liste aller aktiven Plugins des aktivierten Benutzers wieder. |
--list-enabled-all | Gibt eine Auflistung der aktiven Plugins des Benutzers und der systemweit aktivierten Plugins wieder. |
--system-check | Überprüft, ob alle Komponenten von pipelight richtig installiert sind. |
--help | Gibt eine Übersicht über die verfügbaren Befehle. |
--version | Zeigt die aktuell verwendete Version von Pipelight an. |
Die nachfolgenden Befehlen benötigen root-Rechte, da sie systemweit Änderungen vornehmen:
sudo pipelight-plugin BEFEHL [PLUGIN]
Globale Befehle (benötigt root-Rechte) | |
Name | Beschreibung |
--unlock PLUGIN | Schaltet die Unterstützung für ein experimentelles Plugin frei. |
--lock PLUGIN | Entfernt die Unterstützung für ein experimentelles Plugins wieder. Standart-Plugins können nicht entfernt werden. |
--update | Stellt eine Verbindung zum Pipelight Server her und läd die aktuelle Version der Plugindatenbank herunter. Dadurch wird überprüft, ob neue Versionen der Plugins zum Download zur Verfügung stehen. |
Sobald die Installation abgeschlossen wurde, müssen die gewünschten Plugins noch aktiviert werden. Dies lässt sich mit den im Folgenden genannten Befehlen bewerkstelligen.
Aktiviert Silverlight in der aktuellen Version, momentan 5.1:
pipelight-plugin --enable silverlight
Aktiviert Silverlight in einer älteren Version, 5.0:
pipelight-plugin --disable silverlight --enable silverlight5.0
Die darauf folgende Bestätigung der Lizenzvereinbarung ist mit Y (Yes/Ja) zu bestätigen. Anschließend kann der entsprechende Browser gestartet werden und eine Silverlight-Testseite aufgerufen werden: Bubblemark.com . Hierbei werden noch die benötigen Pakete und DLLs heruntergeladen und installiert.
Wenn nach Aufruf/Aktualisierung dieser Seite bunte Blasen sichtbar sind, war die Installation erfolgreich. Neben dem Browserplugin Silverlight können auch noch weitere (Windows-/Mac-spezifische) Plugins aktiviert und genutzt werden.
pipelight-plugin --enable flash
Hierbei ist es möglich, dass auf dem Rechner mehrere Flash-Versionen vorhanden sind. Üblicherweise gibt es zwei Einträge wenn man in der Browserzeile "about:addons
" eingibt: "Shockwave Flash" in der Version 11 und "Shockwave Flash" in einer neueren Version, beispielsweise Version 23.
Falls das Plugin "Shockwave Flash" nicht (mehr) in der Version 23 auftaucht, dann Firefox schließen, folgenden Befehl ausführen und Firefox neustarten:
sudo pipelight-plugin --create-mozilla-plugins
Alternativ muss Pipelight deinstalliert und neu installiert werden:
sudo apt-get remove pipelight-multi sudo apt-get install --install-recommends pipelight-multi sudo pipelight-plugin --update sudo pipelight-plugin --enable flash
Um sicher zu gehen, dass auch die Flash-Version von Pipelight verwendet wird, kann dies auf der Test-Seite von Adobe geprüft werden.
Ab Flashplayer Version 24 muss die Textdatei install-dependency editiert werden, damit Flash installiert werden kann.
sudo pipelight-plugin --unlock shockwave pipelight-plugin --enable shockwave
Zur Kontrolle kann die Testseite von Adobe dienen. Diese sollte die installierte Version anzeigen. Ist dies nicht der Fall, besteht die Möglichkeit, dass der Shockwave Player im Konflikt mit dem oder den bestehenden Flashplayern steht. Dann sollte der Flashplayer deaktiviert werden.
Einige Spiele bereiten Probleme mit der Maus und dem Fokus. Solche Probleme können in der Regel durch Deaktivieren der Abwärtskompatibilität im Browserfenster behoben werden (Rechtsklick auf das Spielefenster, "Einstellungen -> backwards compatibility").
pipelight-plugin --enable unity3d
Der Unity-Webplayer wurde erst vor kurzem zu Pipelight hinzugefügt und befindet sich daher noch in einem experimentellem Stadium. Als Online-Test kann hier das Spiel Counter Strike 2 herangezogen werden.
adobereader - PDF-Viewer für Windows
foxitpdf - Alternative zu Adobe Reader
grandstream - Plugin, mit dem man IP Kameras verbinden kann
hikvision - Plugin, um IP-Kameras zu verbinden
roblox - Plugin, mit dem man Spiele spielen kann, welche mit roblox geschrieben wurden
widevine - Addon zum Flashplayer, welcher DRM-geschützte Inhalte erlaubt
Ab Version 0.2.5 von Pipelight gibt es für nähere Informationen auch eine Manpage:
man pipelight-plugin
Viele Websites überprüfen anhand des User Agents, welchen Browser und welches Betriebssystem der Nutzer verwendet. Wird ein System oder ein Browser festgestellt, das nicht unterstützt wird, werden dem Nutzer Inhalte gar nicht erst zur Verfügung gestellt. Dann kann natürlich auch Pipelight nicht weiterhelfen. Um dies zu umgehen, muss der Webseite ein anderer Browser und ein anderes Betriebssystem vorgegaukelt werden. Hierzu gibt es viele Möglichkeiten, allerdings werden je Browser spezielle Applikationen empfohlen .
Der eigene User Agent kann z.B. mittels der Webseite Pipelight diagnostic getestet werden. Wichtig bei anderen Testseiten ist, dass nicht nur der User Agent überprüft wird, der per HTTP-Header gesendet wird, sondern auch der Wert von navigator.userAgent
, der mit Hilfe von Javascript abfragt wird.
Nach der Einbindung von User Agent Overrider in Firefox öffnet man die Einstellungen und fügt folgende zwei Zeilen zum Ende der Eingabebox hinzu:
Firefox 15/Windows: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:15.0) Gecko/20120427 Firefox/15.0a1 Safari/OSX: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_3) AppleWebKit/534.55.3 (KHTML, like Gecko) Version/5.1.3 Safari/534.53.10
Anschließend wählt man die Option "Firefox 15/Windows", wenn man Silverlight oder "Safari/OSX", wenn man Unity3D nutzen möchten.
Pipelight auf dem aktuellen Stand bringen:
sudo pipelight-plugin --update
Einen Editor [4] öffnen, mit Root-Rechte und nach usr/share/pipelight/install-dependency navigieren.
Bei # Set default return value bearbeitet man den Abschnitt wine-flash-installer) wie folgt:
# sind zu ändern # INS=(install_flash "23_0_0_205") INS=(install_flash "24_0_0_221") # URL="http://fpdownload.macromedia.com/get/flashplayer/pdc/23.0.0.205/install_flash_player.exe" URL="http://fpdownload.adobe.com/get/flashplayer/pdc/24.0.0.221/install_flash_player.exe" # SHA="c4d38ca72b0e818d3418c020753132a3c95fccab4dd361b5486a151608689f5c" SHA="d908e90152a25f7c3befa415883b8075bacc00e588b07997774d7c32400a0889"
Die Datei speichern und den Editor schließen.
Spätestens jetzt den Browser schließen und folgende Befehle im Terminal [3] ausführen:
pipelight-plugin --enable flash sudo pipelight-plugin --create-mozilla-plugins
Firefox starten.
Sollte dann unter "Extras -> Add-ons -> Plugins" der Flashplayer noch nicht zusehen sein, den Browser wieder schließen und den Befehl
sudo pipelight-plugin --create-mozilla-plugins
nochmal ausführen.
Falls nach einiger Zeit Probleme oder Fehler auftreten, besteht die Möglichkeit das Benutzerverzeichnis von Pipelight manuell zu löschen:
rm -rf ~/.wine-pipelight/
Beim anschließenden Start des Browsers werden alle Plugins neu installiert und sollten so wieder funktionieren.
Falls das Plugin "Silverlight Plug-In 5.1.x" nicht (mehr) unter den Firefox Plugins (about:addons) auftaucht, dann folgenden Befehl ausführen und Firefox neustarten:
sudo pipelight-plugin --create-mozilla-plugins
Von der Benutzung der Firefox-Erweiterungen NoScript oder HTTPS Everywhere wird dringend abgeraten, da es hiermit zu Abstürzen der Pipelight-Plugins kommen kann!
Falls eine Webseite den eigenen Browser trotz aktiviertem und richtig eingestelltem User Agent als Linux-Browser erkennt, kann es helfen, die vorhandenen Cookies zu löschen (bekanntes Problem bei Maxdome.de).
Ausgabe sehr dunkel: seit Update auf Version 0.2.8.1 kann es bei Verwendung einer Ubuntu-Version, welche noch den Treiber Mesa 8 benutzt (das betrifft die noch unterstützten LTS-Versionen 12.04.0 und 12.04.1, kann mit Systeminformationen ermitteln getestet werden) vorkommen, dass die Darstellung sehr dunkel ist. Abhilfe schafft ein Update auf Mesa 10 (siehe LTS Enablement Stacks).
Falls ein Bug erkannt wird, kann dieser als Fehlerbericht auf Launchpad erfasst werden.
Videoportale mit digitaler Rechteverwaltung Übersichtsartikel
Adobe Flash/DRM - das Flashplayer-Plugin für DRM nutzen
"Sky go" unter Ubuntu nutzen - Schritt für Schritt im Forum
1415219 - Bugreport zu dunkler Darstellung
Overview about Pipelight - Präsentationsfolien, FOSDEM 2014 (PDF)
Pipelight 0.2.6 Released With Experimental 64bit Support, 2 New Plugins - WebUpd8, 04/2014
Online-Videotheken mit Linux nutzen - heise Open Source, 04/2014
Pipelight 0.2.4 unterstützt noch mehr DRM-Komponenten - heise Open Source, 01/2014
Pipelight 0.2: Silverlight unter Linux nutzen - heise Open Source, 10/2013
Diese Revision wurde am 19. Februar 2017 14:38 von Dimanche erstellt.