Obsah

Pipelight: použití Silverlight pluginu ve webových prohlížečích Linuxu

Pipelight

Pipelight je speciální plugin pro webové prohlížeče, který umožňuje použití Windows pluginů přímo v Linuxu. V současné době se zaměřuje na pluginy Silverlight, Flash, Shockwave a Unity Webplayer. Nový plugin vloží Silverlight přímo do jakéhokoliv prohlížeče podporující Netscape Plugin API (Firefox, Chrome / Chromium, Midori, Opera, …). Ten spolupracuje s upraveným programem Wine, který implementuje DLL knihovny Silverlightu.



Instalace

MGA4

Konzole

# urpmi.addmedia "Pipelight 32-bit" http://repos.fds-team.de/stable/mageia/4/i586/

Konzole

# urpmi.addmedia "Pipelight 64-bit" http://repos.fds-team.de/stable/mageia/4/x86_64/

MGA5

Konzole

# urpmi.addmedia "Pipelight 32-bit" http://repos.fds-team.de/stable/mageia/5/i586/

Konzole

# urpmi.addmedia "Pipelight 64-bit" http://repos.fds-team.de/stable/mageia/5/x86_64/

Konzole

# wget http://repos.fds-team.de/Release.key
# rpm --import Release.key

Konzole

# urpmi.update -a
# urpmi pipelight
# pipelight-plugin --update

Příkaz pipelight-plugin --update použijte i tehdy, pokud vyšla nová aktualizace pluginů a Pipelight máte již nainstalován

Konzole

pipelight-plugin --enable silverlight

chcete-li používat plugin Silverlight, musíte souhlasit s licencí Microsoftu - potvrdíte stisknutím klávesy Y. Pokud nesouhlasíte a nechcete Silverlight nainstalovat, stiskněte klávesu N.

Použití: Povolení/Zakázat pluginy

Výpis možností použití skriptu a všech dostupných pluginů:

Konzole

$ pipelight-plugin --help

Výpis všech povolených pluginů Pipelightu ve webových prohlížečích v celém systému (pod rootem):

Konzole

# pipelight-plugin --list-enabled

Nejdříve musíte odemčít plugin (pro vytvoření knihoven) pod rootem:

Konzole

# pipelight-plugin --unlock nazevpluginu

Povolení pluginu pro všechny uživatele systému:

Konzole

# pipelight-plugin --enable nazevpluginu

Zakázat všechny pluginy v prohlížeči pro celý systém:

Konzole

# pipelight-plugin --disable-all

Povolení pluginu jen pro aktuálního uživatele systému (příkaz pod uživatelem, ne jako root):

Konzole

$ pipelight-plugin --enable nazevpluginu

Zakázat plugin pro aktuálního uživatele systému:

Konzole

$ pipelight-plugin --disable nazevpluginu

Uzamčení pluginu (odstranění knihoven) pod rootem:

Konzole

# pipelight-plugin --lock nazevpluginu

Silverlight

Konzole

# pipelight-plugin --enable silverlight

nebo pro povolení konkrétní verze Silverlightu 5.0 (např. požadovaná verze pro služby SkyGo):

Konzole

# pipelight-plugin --enable silverlight5.0

Nepovolujte zároveň oba pluginy, neboť webový prohlížeč vždy použije ten nejnovější

Konzole

# pipelight-plugin --disable silverlight --enable silverlight5.0

Webové stránky používající plugin Silverlight

FIXME Prosíme, doplňujte další české webové stránky

Následující stránky fungují jen se Silverlightem 5.0:

Flash

Konzole

# pipelight-plugin --enable flash

Tím by měl nyní Pipelight nainstalovat Windows verzi Flash, jakmile spustíte prohlížeč a plugin se nahraje. Jediný problém je, že můžete mít nainstalováno několik verzí Flash a prohlížeč může zvolit verzi pro Linux při otevření aplikace Flash. Můžete to zkontrolovat tím, že navštívíte Pipelight diagnostické stránky, které vám ukáží, zda máte povoleno více verzí Flash pluginu.

Nastavení Flash Playeru v Chromium

Namísto použití příkazu pipelight-plugin k povolení pluginu pro celý systém, můžete přikázat updates-alternatives, aby Flash plugin byl nyní obsluhován Pipelightem, spuštěním následujících příkazů:

Konzole

# update-alternatives --install "/usr/lib/mozilla/plugins/flashplugin-alternative.so" "mozilla-flashplugin" /usr/lib/pipelight/libpipelight-flash.so 1
# update-alternatives --set mozilla-flashplugin /usr/lib/pipelight/libpipelight-flash.so

Tím se odstraní symbolický odkaz na NPAPI Linux plugin (flash-player-plugin) a nahradí ji symbolickým odkazem pro Pipelight. Můžete se vrátit zpět pomocí následujícího příkazu (buďte si vědomi toho, že je pak potřeba udělat ruční odstranění Pipelightu):

Konzole

# update-alternatives --remove mozilla-flashplugin /usr/lib/pipelight/libpipelight-flash.so

a vaše původní verze Flashe by měla být opět aktivní.

Shockwave plugin

Konzole

# pipelight-plugin --unlock shockwave
# pipelight-plugin --enable shockwave

Rally Point 2 přes Shockwave

Unity - webový přehrávač

Unity3D byl nedávno přidán do Pipelightu a je v experimentálním stavu, takže je možné, že můžete narazit na některé menší problémy nebo že hra nefunguje. Důvodem je to, že programu Wine chybí některé funkce, které jsou potřeba pro Unity a v současné době používáme některé opravy, abychom je vyřešili. Nicméně, testovali jsme plugin s více než 20 různými hrami a pouze jedna (Contract Wars) z nich nefungovala vůbec. Několik z nich mělo nějaké problémy se vstupy z klávesnice, např. jako by jste vždy stiskli levé tlačítko se šipkou. Všechny ostatní hry pracovaly bez znatelných problémů.

Konzole

# pipelight-plugin --enable unity3d

Angry Bots v Unity3D

Widevine

Budete tedy muset mít Flash Player plugin již nainstalován k jeho využití, nemusí to být windowsová verze Flashe, nýbrž můžete kombinovat Widevine buď s linuxovou verzí založenou na NPAPI a nebo s Pepper verzí Flashe. Díky tomu je možné provádět veškeré vykreslování videa s nativním linuxovým spustitelným souborem, zatímco pouze část dešifrování DRM se provádí ve Wine, což má za následek velmi dobrý výkon při přehrávání.

Konzole

pipelight-plugin --enable widevine

Demo přes Widevine

npactivex plugin

Konzole

# pipelight-plugin --unlock npactivex
# pipelight-plugin --enable npactivex

Pokud je to soubor .exe

Konzole

WINEPREFIX=~/.wine-pipelight /opt/wine-compholio/bin/wine activexplugin.exe

Pokud je to soubor .msi

Konzole

WINEPREFIX=~/.wine-pipelight /opt/wine-compholio/bin/wine msiexec /i activexplugin.msi

Potřebujete-li zjistit pravé umístění upraveného programu Wine v adresáři wine-compholio, použijte příkaz:

Konzole

sed -n 's/[[:space:]]*winePath[[:space:]]*=[[:space:]]\([^ ]*\)[[:space:]]*$/\1/p'  /usr/share/pipelight/configs/pipelight-silverlight5.1

Výpis podporovaných pluginů

Standardně podporované pluginy:

Plugin:Příkaz:Popis:
Silverlightsilverlight5.1
silverlight5.0
silverlight4
- plugin přehrávače Silverlight
Flash Playerflash- 32bitová verze Flash Playeru
Unity3Dunity3d- 32bitová verze webového přehrávače Unity
Widevinewidevine- plugin přehrávače Widevine

Přídavné pluginy (experimentální):

Níže uvedené pluginy pro instalaci musí být nejdříve odemčené pomocí --unlock

Plugin:Příkaz:Popis:
Adobe® Reader®adobereader- populární pdf prohlížeč v OS Windows
Ověřeno jako nefunkční - Lounchpad.net en: Bug#12549
Foxit® PDF Readerfoxitpdf- alternativa k Adobe® Reader®
Grandstream® Plugingrandstream- plugin k připojení do IP kamer; live dema
Hikvision® Pluginhikvision- jiný plugin k připojení do IP kamer
Roblox® Pluginroblox- webový plugin ke spuštění her vytvořené pomocí Roblox
Vizzed Retro Game Roomvizzedrgr- emulátor herní konzole retro her
Viewright® Caiway®viewright-caiway- přehrávač ViewRight v edici Caiway (VOD servis v NL)
Unity® Web Player (64-bit)x64-unity3d- 64bitová verze webového přehrávače Unity
Adobe® Flash® (64-bit)x64-flash- 64bitová verze Flash Playeru

User Agent Switcher

User Agent Switcher ve Firefoxu

User Agent Switcher v Chromium

- User Agent SwitcherPreferences → dosaďte následující dva řádky:

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

Poté vyberte volbu „Firefox 15/Windows“ pokud chcete použít Silverlight nebo volbu „Safari/OSX“, pokud chcete Unity3D

- tento plugin již obsahuje funkčního User Agenta, stačí vybrat FirefoxWindows Firefox 15 - pro Unity 3D předdefinovaná volba pro Safari / Mac OS X funguje docela dobře - jako alternativa může být nastavení pomocí příkazového řádku, např.:

Konzole

chromium-browser --user-agent="Mozilla/5.0 (Windows NT 6.1; WOW64; rv:15.0) Gecko/20120427 Firefox/15.0a1"

Konzole

chromium-browser --user-agent="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"

Seznam dalších užitečných řetězců

Silverlight:
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:15.0) Gecko/20120427 Firefox/15.0a1
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:22.0) Gecko/20100101 Firefox/22.0
Mozilla/5.0 (Windows NT 6.1; rv:23.0) Gecko/20131011 Firefox/23.0

Unity3D:
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

Známé nefungující User Agent Swichers

Test pluginů

Problémy a řešení

Plugin nelze stáhnout nebo je zastaralý

Během otevření webového prohlížeče vyskočí okno wine, kde se snaží stáhnout plugin o velikosti 0MB a pak následně po zadání URL about:plugins je hlášení špatné instalace pluginu a nefunguje.
Aktualizujte databázi pluginů Pipelightu a pak proveďte opět instalaci pluginu:

Konzole

# pipelight-plugin --update

Silverlight

Video se trhá a zvuk je posunut
Řešením je použití příkazu, který ukončí všechny aktivní služby PulseAudia:

Konzole

pulseaudio -k

Při sledování videa se zobrazí chybová hláška DRM error 6030
Definitivně potřebujete použít Silverlight 5.0. Jde o to, že nemohl být rozeznán grafický ovladač novějším pluginem.

Unity

V prohlížeči se stále zobrazuje chyba, že Unity3D není ve vašem prohlížeči podporován, i když je plugin nainstalován

Některé aplikace užívající webové přehrávače Unity budou i nadále odmítat funkčnost a kontrolují nejen řetězec User Agent Switcher, ale i platformu vašeho prohlížeče (např.: Unity3D Webplayer - napravo upozornění:„Unity Plugin version: unsupported browser“; hra FreeFall Tournament, atd.).

Firefox - změna platfomy

Nejdříve musíte ve vašem prohlížeči otevřít v URL řádku: about:config a potvdit upozornění pro vstup do rozšířeného nastavení. Firefox - about:config

Nyní byste měli vidět tabulku s rozlišnými parametry a nyní přidáme další. Klikněte někam do tabulky pravým tlačítkem myší a vyberte Nová předvolbaŘetězec.

Zapište název předvolby general.platform.override a následně řetězec Win32. Pokud jste udělali vše správně, měli by jste mít takový záznam: Předvobla general.platform.override

Stále budete muset použít User Agent Switcher, jak je popsáno výše, ale již byste měli být schopni vyzkoušet funkčnost Unity3D.

Odinstalace / Uvedení pluginů do původního stavu

V případě problémů (konfliktu pluginů), můžete odstranit kompletně všechny Pipelight pluginy příkazem pod rootem:

Konzole

rm -rf ~/.wine-pipelight/

a pak můžete instalaci pluginů z Pipelight provést znova.

A nebo odinstalujte program a závislosti ze systému:

Konzole

# urpme pipelight
# urpme wine-compholio
1)
Instalační postupy byly přepsány z http://fds-team.de/cms/pipelight-installation.html#section_1_9 - necelý překlad a úpravy yullaw
2)
více o bug nastavení User Agent Switcher - https://answers.launchpad.net/pipelight/+faq/2351