Netflix no longer works after upgrade to 0.2.4

Asked by skorasaurus

Hi,

I have ubuntu 12.04; installed pipelight via the PPA,

my graphics card:
OpenGL vendor string: X.Org
OpenGL renderer string: Gallium 0.4 on AMD SUMO
OpenGL version string: 2.1 Mesa 9.0.3
OpenGL shading language version string: 1.30
OpenGL extensions:

I have wine-compholio 1.7.11~ubuntu12.04.1

After upgrading to the most recent version of sliverlight to 0.2.4.2~ubuntu12.04.1, netflix is no longer working. When I go to view a video on netflix, I receive a message in browser that says that I need to install silverlight.

I have already deleted ~/.wine-pipelight/drive_c/users/Public/Application Data/Microsoft and restarted the browser but receive the same results :(

In firefox and I go to http://fds-team.de/pipelight/ :

the following appears in the console: [PIPELIGHT:LIN:unknown] attached to process.
[PIPELIGHT:LIN:unknown] checking environment variable PIPELIGHT_SILVERLIGHT5_1_CONFIG.
[PIPELIGHT:LIN:unknown] searching for config file pipelight-silverlight5.1.
[PIPELIGHT:LIN:unknown] trying to load config file from '/home/skors/.config/pipelight-silverlight5.1'.
[PIPELIGHT:LIN:unknown] trying to load config file from '/etc/pipelight-silverlight5.1'.
[PIPELIGHT:LIN:unknown] trying to load config file from '/usr/share/pipelight/configs/pipelight-silverlight5.1'.
[PIPELIGHT:LIN:unknown] sandbox not found or not installed!
[PIPELIGHT:LIN:silverlight5.1] basicplugin.c:401:checkSilverlightGraphicDriver(): GPU driver check - Your driver is not in the whitelist, hardware acceleration disabled.
[PIPELIGHT:LIN:silverlight5.1] using wine prefix directory /home/skors/.wine-pipelight/.
[PIPELIGHT:LIN:silverlight5.1] checking plugin installation - this might take some time.
[install-dependency] wine-silverlight5.1-installer is already installed in '/home/skors/.wine-pipelight/'.
[install-dependency] wine-mpg2splt-installer is already installed in '/home/skors/.wine-pipelight/'.
wine: cannot find L"C:\\windows\\system32\\winemenubuilder.exe"
err:wineboot:ProcessRunKeys Error running cmd L"C:\\windows\\system32\\winemenubuilder.exe -a -r" (2)
[PIPELIGHT:WIN:silverlight5.1] embedded mode is on.
[PIPELIGHT:WIN:silverlight5.1] windowless mode is off.
[PIPELIGHT:WIN:silverlight5.1] linux windowless mode is off.
[PIPELIGHT:WIN:silverlight5.1] force SetWindow is off.
[PIPELIGHT:WIN:silverlight5.1] unity hacks is off.
[PIPELIGHT:WIN:silverlight5.1] window class hook is on.
[PIPELIGHT:LIN:silverlight5.1] ../common/common.c:162:receiveCommand(): unable to receive data within the specified timeout.
[PIPELIGHT:LIN:silverlight5.1] basicplugin.c:117:attach(): error during the initialization of the wine process - aborting.
[PIPELIGHT:LIN:silverlight5.1] using timer based event handling.
[PIPELIGHT:LIN:silverlight5.1] running diagnostic checks.
[PIPELIGHT:LIN:silverlight5.1] running diagnostic checks.
[PIPELIGHT:WIN:silverlight5.1] replaced API function CreateWindowExA.
[PIPELIGHT:WIN:silverlight5.1] replaced API function CreateWindowExW.
[PIPELIGHT:WIN:silverlight5.1] replaced API function TrackPopupMenuEx.
[PIPELIGHT:WIN:silverlight5.1] replaced API function TrackPopupMenu.
fixme:advapi:RegisterTraceGuidsW (0x7a1f87, 0x840118, {aa087e0e-0b35-4e28-8f3a-440c3f51eef1}, 1, 0x72f688, (null), (null), 0x840118): stub
[PIPELIGHT:WIN:silverlight5.1] init successful!

and the following appears on the website:

Pipelight diagnostic:
Please select the Plugin you want to test:

User agent (Javascript)
Checking for Windows user agent ...failed
Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:26.0) Gecko/20100101 Firefox/26.0

Silverlight (as seen by a website)
Checking for Silverlight ...failed

Pipelight
Checking for Pipelight ...okay

Configuration of Pipelight
Checking if config exists ...okay
/usr/share/pipelight/configs/pipelight-silverlight5.1
Checking if pluginLoaderPath is set and exists ...okay
/usr/share/pipelight/pluginloader.exe
Checking if winePath is set and exists ...okay
/opt/wine-compholio/bin/wine
Checking if wine exists ...okay
/opt/wine-compholio/bin/wine
Checking if winePrefix is set and exists ...okay
/home/skors/.wine-pipelight/
Checking if dllPath/dllname is set and exists ...okay
You need to define either a valid dllPath/dllName or regKey
/home/skors/.wine-pipelight/dosdevices/c:/Program Files/Silverlight/5.1.20913.0/npctrl.dll
(dllPath = c:\Program Files\Silverlight\5.1.20913.0\)
(dllName = npctrl.dll)
Checking if dependencyInstaller is set and exists ...okay
/usr/share/pipelight/install-dependency
Checking if dependencies are defined ...okay

Distribution
Loading file /etc/issue ...okay
Ubuntu 12.04.4 LTS \n \l

Content of file: /usr/share/pipelight/configs/pipelight-silverlight5.1
Loading file /usr/share/pipelight/configs/pipelight-silverlight5.1 ...okay
#
# Enables a diagnostic mode which might be helpful to find an
# error in the configuration or installation.
# To get the error messages go to: http://fds-team.de/pipelight
#
# Information for advanced users: The diagnostic page embeds the plugin
# of type "application/x-pipelight-error" to trigger the output of some
# debug information. The plugin cannot be triggered if everything is
# working, so this only affects users with a broken installation.
# The debug output will include paths on the local filesystem and the
# linux distribution used. If you don't want to leak this information
# accidentially in case of a broken installation please either uninstall
# Pipelight or disable the diagnosticMode. [default: false]
#
diagnosticMode = true

#
# Path to the wine directory or the wine executable. When you
# specify a directory it should contain /bin/wine.
#
winePath = /opt/wine-compholio/bin/wine

#
# Path to the wine prefix containing Silverlight
#
winePrefix = $HOME/.wine-pipelight/

#
# The wine architecture for the wine prefix containing Silverlight
#
wineArch = win32

#
# DLLs to overwrite in Wine
# (prevents Wine from asking for Gecko, Mono or winegstreamer)
#
wineDLLOverrides = mscoree,mshtml,winegstreamer,winemenubuilder.exe=

#
# Path to the plugin loader executable
# (Should be set correctly by the make script)
#
pluginLoaderPath = /usr/share/pipelight/pluginloader.exe

#
# Path to the runtime DLLs (libgcc_s_sjlj-1.dll, libspp-0.dll,
# libstdc++-6.dll). Only necessary when these DLLs are not in the same
# directory as the pluginloader executable.
#
gccRuntimeDlls =

#
# Path and name to the Silverlight directory
# You should prefer using regKey to make it easier to switch between
# different versions.
#
dllPath = c:\Program Files\Silverlight\5.1.20913.0\
dllName = npctrl.dll

#
# Name of the registry key at HKCU\Software\MozillaPlugins\ or
# HKLM\Software\MozillaPlugins\ where to search for the plugin path.
#
# You should use this option instead of dllPath/dllName in most cases
# since you do not need to alter dllPath on a program update.
#
# regKey = @Microsoft.com/NpCtrl,version=1.0

#
# fakeVersion allows to fake the version string of Silverlight
# Allows to get around some version checks done by some websites
# when using an old version of Silverlight.
#
# fakeVersion = 5.1.20913.0

#
# overwriteArg allows to overwrite/add initialization arguments
# passed by websites to Silverlight applications. You can
# use this option as often as you want to overwrite multiple
# parameters. The GPU acceleration state of Silverlight can be controlled
# by setting:
#
# enableGPUAcceleration=false # disable GPU acceleration
# comment out # let the application decide (default)
# enableGPUAcceleration=true # force GPU acceleration
#
# You may need to overwrite the minimum runtime version if
# you use an old Silverlight version as some websites set
# an artificial limit for the version number although it
# would work with older versions.
#
# overwriteArg = minRuntimeVersion=5.0.61118.0
# overwriteArg = enableGPUAcceleration=false
# overwriteArg = enableGPUAcceleration=true
#

#
# windowlessmode refers to a term of the Netscape Plugin API and
# defines a different mode of drawing and handling events.
# On some desktop enviroments you may have problems using the
# keyboard in windowless mode, on the other hand the drawing is
# more efficient when this mode is enabled. Just choose what works
# best for you. [default: false]
#
windowlessMode = false

#
# Some browsers that don't support XEmbed only work with "real"
# windowlessmode. The following option can be used to force this
# mode. [default: false]
#
linuxWindowlessMode = false

#
# embed defines whether the Silverlight plugin should be shown
# inside the browser (true) or an external window (false).
# [default: true]
#
embed = true

#
# Path to the dependency installer script provided by the compholio
# package. (optional)
#
dependencyInstaller = /usr/share/pipelight/install-dependency

#
# Dependencies which should be installed for this plugin via the
# dependencyInstaller, can be used multiple times. (optional)
#
# Useful values for Silverlight are:
#
# -> Silverlight versions (you need to adjust dllPath):
# wine-silverlight5.1-installer
# wine-silverlight5.0-installer
# wine-silverlight4-installer
#
# -> optional depependencies (required by some streaming sites)
# wine-mpg2splt-installer
#
dependency = wine-silverlight5.1-installer
dependency = wine-mpg2splt-installer
optional-dependency = wine-wininet-installer

#
# Doesn't show any dialogs which require manual confirmation during
# the installation process, like EULA or DRM dialogs.
# [default: true]
#
quietInstallation = true

#
# In order to support browsers without NPAPI timer support
# (like Midori) we've implemented a fallback to
# NPN_PluginThreadAsyncCall. In the default configuration
# a timer based approach is preferred over async calls and the
# plugin decides by itself which method to use depending on the
# browser capabilities. Setting the following option to true
# forces the plugin to use async calls. This might be mainly
# useful for testing the difference between both event handling
# approaches. [default: false]
#
# eventAsyncCall = true

#
# The opera browser claims to provide timer functions, but they
# don't seem to work properly. When the opera detection is
# enabled Pipelight will switch to eventAsyncCall automatically
# based on the user agent string. [default: true]
#
operaDetection = true

#
# Minimal JavaScript user agent switcher. If your page doesn't check
# the user agent before loading a Silverlight instance, you can use
# this trick to overwrite the useragent or execute any other Java-
# Script you want. You can use this command multiple times.
# Uncomment the following 4 lines for FF15 spoofing.
#
# executejavascript = var __originalNavigator = navigator;
# executejavascript = navigator = new Object();
# executejavascript = navigator.__proto__ = __originalNavigator;
# executejavascript = navigator.__defineGetter__('userAgent', function () { return 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:15.0) Gecko/20120427 Firefox/15.0a1'; });

#
# We are currently implementing hardware acceleration support, which
# can cause problems on some systems as especially specific open source
# drivers render only garbage when hardware acceleration is enabled.
# To prevent breaking any working solutions, we are currently
# implementing a whitelist system, which will enable hardware
# acceleration by default if the specified shell scripts returns 0.
# Otherwise we will disable it. You can still use
#
# overwriteArg = enableGPUAcceleration=false/true
#
# to overwrite the check results. If you really want to skip this test
# you can use: silverlightGraphicDriverCheck = /bin/true
#
silverlightGraphicDriverCheck = /usr/share/pipelight/hw-accel-default

#------------------------- EXPERIMENTAL -------------------------
# Watch out: The following section contains highly experimental
# stuff! These functions are likely not working properly yet and
# might be removed at any time.

#
# In order to make it possible to let a window stay opened in fullscreen, even
# if the user clicks somewhere else it is necessary to install a window class
# hook. With some plugins this could lead to other problems! [default: false]
experimental-windowClassHook = true

#
# A sandbox is a method to isolate an untrusted program from the rest of
# the system to prevent damage in case of a virus, program errors or
# similar issues. We've been developing the ability to use a (self-created)
# sandbox, but this feature still has to be considered experimental.
# The feature will only be used when the sandbox path exists.
#
sandboxPath = /usr/share/pipelight/sandbox

Configuration of Pipelight
Checking if config exists ...okay
/usr/share/pipelight/configs/pipelight-silverlight5.1
Checking if pluginLoaderPath is set and exists ...okay
/usr/share/pipelight/pluginloader.exe
Checking if winePath is set and exists ...okay
/opt/wine-compholio/bin/wine
Checking if wine exists ...okay
/opt/wine-compholio/bin/wine
Checking if winePrefix is set and exists ...okay
/home/skors/.wine-pipelight/
Checking if dllPath/dllname is set and exists ...okay
You need to define either a valid dllPath/dllName or regKey
/home/skors/.wine-pipelight/dosdevices/c:/Program Files/Silverlight/5.1.20913.0/npctrl.dll
(dllPath = c:\Program Files\Silverlight\5.1.20913.0\)
(dllName = npctrl.dll)
Checking if dependencyInstaller is set and exists ...okay
/usr/share/pipelight/install-dependency
Checking if dependencies are defined ...okay

Distribution
Loading file /etc/issue ...okay
Ubuntu 12.04.4 LTS \n \l

Content of file: /usr/share/pipelight/configs/pipelight-silverlight5.1
Loading file /usr/share/pipelight/configs/pipelight-silverlight5.1 ...okay
#
# Enables a diagnostic mode which might be helpful to find an
# error in the configuration or installation.
# To get the error messages go to: http://fds-team.de/pipelight
#
# Information for advanced users: The diagnostic page embeds the plugin
# of type "application/x-pipelight-error" to trigger the output of some
# debug information. The plugin cannot be triggered if everything is
# working, so this only affects users with a broken installation.
# The debug output will include paths on the local filesystem and the
# linux distribution used. If you don't want to leak this information
# accidentially in case of a broken installation please either uninstall
# Pipelight or disable the diagnosticMode. [default: false]
#
diagnosticMode = true

#
# Path to the wine directory or the wine executable. When you
# specify a directory it should contain /bin/wine.
#
winePath = /opt/wine-compholio/bin/wine

#
# Path to the wine prefix containing Silverlight
#
winePrefix = $HOME/.wine-pipelight/

#
# The wine architecture for the wine prefix containing Silverlight
#
wineArch = win32

#
# DLLs to overwrite in Wine
# (prevents Wine from asking for Gecko, Mono or winegstreamer)
#
wineDLLOverrides = mscoree,mshtml,winegstreamer,winemenubuilder.exe=

#
# Path to the plugin loader executable
# (Should be set correctly by the make script)
#
pluginLoaderPath = /usr/share/pipelight/pluginloader.exe

#
# Path to the runtime DLLs (libgcc_s_sjlj-1.dll, libspp-0.dll,
# libstdc++-6.dll). Only necessary when these DLLs are not in the same
# directory as the pluginloader executable.
#
gccRuntimeDlls =

#
# Path and name to the Silverlight directory
# You should prefer using regKey to make it easier to switch between
# different versions.
#
dllPath = c:\Program Files\Silverlight\5.1.20913.0\
dllName = npctrl.dll

#
# Name of the registry key at HKCU\Software\MozillaPlugins\ or
# HKLM\Software\MozillaPlugins\ where to search for the plugin path.
#
# You should use this option instead of dllPath/dllName in most cases
# since you do not need to alter dllPath on a program update.
#
# regKey = @Microsoft.com/NpCtrl,version=1.0

#
# fakeVersion allows to fake the version string of Silverlight
# Allows to get around some version checks done by some websites
# when using an old version of Silverlight.
#
# fakeVersion = 5.1.20913.0

#
# overwriteArg allows to overwrite/add initialization arguments
# passed by websites to Silverlight applications. You can
# use this option as often as you want to overwrite multiple
# parameters. The GPU acceleration state of Silverlight can be controlled
# by setting:
#
# enableGPUAcceleration=false # disable GPU acceleration
# comment out # let the application decide (default)
# enableGPUAcceleration=true # force GPU acceleration
#
# You may need to overwrite the minimum runtime version if
# you use an old Silverlight version as some websites set
# an artificial limit for the version number although it
# would work with older versions.
#
# overwriteArg = minRuntimeVersion=5.0.61118.0
# overwriteArg = enableGPUAcceleration=false
# overwriteArg = enableGPUAcceleration=true
#

#
# windowlessmode refers to a term of the Netscape Plugin API and
# defines a different mode of drawing and handling events.
# On some desktop enviroments you may have problems using the
# keyboard in windowless mode, on the other hand the drawing is
# more efficient when this mode is enabled. Just choose what works
# best for you. [default: false]
#
windowlessMode = false

#
# Some browsers that don't support XEmbed only work with "real"
# windowlessmode. The following option can be used to force this
# mode. [default: false]
#
linuxWindowlessMode = false

#
# embed defines whether the Silverlight plugin should be shown
# inside the browser (true) or an external window (false).
# [default: true]
#
embed = true

#
# Path to the dependency installer script provided by the compholio
# package. (optional)
#
dependencyInstaller = /usr/share/pipelight/install-dependency

#
# Dependencies which should be installed for this plugin via the
# dependencyInstaller, can be used multiple times. (optional)
#
# Useful values for Silverlight are:
#
# -> Silverlight versions (you need to adjust dllPath):
# wine-silverlight5.1-installer
# wine-silverlight5.0-installer
# wine-silverlight4-installer
#
# -> optional depependencies (required by some streaming sites)
# wine-mpg2splt-installer
#
dependency = wine-silverlight5.1-installer
dependency = wine-mpg2splt-installer
optional-dependency = wine-wininet-installer

#
# Doesn't show any dialogs which require manual confirmation during
# the installation process, like EULA or DRM dialogs.
# [default: true]
#
quietInstallation = true

#
# In order to support browsers without NPAPI timer support
# (like Midori) we've implemented a fallback to
# NPN_PluginThreadAsyncCall. In the default configuration
# a timer based approach is preferred over async calls and the
# plugin decides by itself which method to use depending on the
# browser capabilities. Setting the following option to true
# forces the plugin to use async calls. This might be mainly
# useful for testing the difference between both event handling
# approaches. [default: false]
#
# eventAsyncCall = true

#
# The opera browser claims to provide timer functions, but they
# don't seem to work properly. When the opera detection is
# enabled Pipelight will switch to eventAsyncCall automatically
# based on the user agent string. [default: true]
#
operaDetection = true

#
# Minimal JavaScript user agent switcher. If your page doesn't check
# the user agent before loading a Silverlight instance, you can use
# this trick to overwrite the useragent or execute any other Java-
# Script you want. You can use this command multiple times.
# Uncomment the following 4 lines for FF15 spoofing.
#
# executejavascript = var __originalNavigator = navigator;
# executejavascript = navigator = new Object();
# executejavascript = navigator.__proto__ = __originalNavigator;
# executejavascript = navigator.__defineGetter__('userAgent', function () { return 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:15.0) Gecko/20120427 Firefox/15.0a1'; });

#
# We are currently implementing hardware acceleration support, which
# can cause problems on some systems as especially specific open source
# drivers render only garbage when hardware acceleration is enabled.
# To prevent breaking any working solutions, we are currently
# implementing a whitelist system, which will enable hardware
# acceleration by default if the specified shell scripts returns 0.
# Otherwise we will disable it. You can still use
#
# overwriteArg = enableGPUAcceleration=false/true
#
# to overwrite the check results. If you really want to skip this test
# you can use: silverlightGraphicDriverCheck = /bin/true
#
silverlightGraphicDriverCheck = /usr/share/pipelight/hw-accel-default

#------------------------- EXPERIMENTAL -------------------------
# Watch out: The following section contains highly experimental
# stuff! These functions are likely not working properly yet and
# might be removed at any time.

#
# In order to make it possible to let a window stay opened in fullscreen, even
# if the user clicks somewhere else it is necessary to install a window class
# hook. With some plugins this could lead to other problems! [default: false]
experimental-windowClassHook = true

#
# A sandbox is a method to isolate an untrusted program from the rest of
# the system to prevent damage in case of a virus, program errors or
# similar issues. We've been developing the ability to use a (self-created)Ah
# sandbox, but this feature still has to be considered experimental.
# The feature will only be used when the sandbox path exists.
#
sandboxPath = /usr/share/pipelight/sandbox

Question information

Language:
English Edit question
Status:
Solved
For:
Pipelight Edit question
Assignee:
No assignee Edit question
Solved by:
Sebastian Lackner
Solved:
Last query:
Last reply:
Revision history for this message
Sebastian Lackner (slackner) said :
#1

Hi,

this error is a bit unusual, since it basically means that the plugin wasn't loaded correctly or just loaded too slowly and was aborted before its finished.

Can you just try to delete your wine prefix? It will automatically be recreated after the next browser restart.

Close all your browsers, then run (as regular user)
rm -rf ~/.wine-pipelight

And restart it again. Does this solve the problem?

Sebastian

Revision history for this message
skorasaurus (skoraw) said :
#2

Thank you for the prompt response.

After running rm -rf ~/.wine-pipelight and restarting firefox, ./wine-pipelight still was not made and I had a similar error at netflix. I then went to http://fds-team.de/pipelight/ and selected SL5.1 and received the following response. I forgot to record the console output for this. At this point, I also noticed that a wine dialog began to run and that .wine-pipelight folder was created...

User agent (Javascript)
Checking for Windows user agent ...failed
Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:26.0) Gecko/20100101 Firefox/26.0

Silverlight (as seen by a website)
Checking for Silverlight ...failed

Pipelight
Checking for Pipelight ...okay
Valid browser plugin cache ...failed
Pipelight is correctly installed, but you still need to clear the plugin cache!
Take a look at the FAQ section on how to do this.
Valid browser plugin cache ...failed
Pipelight is correctly installed, but you still need to clear the plugin cache!
Take a look at the FAQ section on how to do this.

===================
I eventually found the faq; it wasn't very easy to find, found it at: https://answers.launchpad.net/pipelight/+faq/2349
perhaps you could hotlink it on your main page or link it in the error message.

Following that direction, I closed firefox and ran:
sudo pipelight-plugin --create-mozilla-plugins

I started firefox, went to http://fds-team.de/pipelight/ again and selected SL5.1
and received the following response:
User agent (Javascript)
Checking for Windows user agent ...failed
Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:26.0) Gecko/20100101 Firefox/26.0

Silverlight (as seen by a website)
Checking for Silverlight ...failed

Pipelight
Checking for Pipelight ...okay

Configuration of Pipelight
Checking if config exists ...okay
/usr/share/pipelight/configs/pipelight-silverlight5.1
Checking if pluginLoaderPath is set and exists ...okay
/usr/share/pipelight/pluginloader.exe
Checking if winePath is set and exists ...okay
/opt/wine-compholio/bin/wine
Checking if wine exists ...okay
/opt/wine-compholio/bin/wine
Checking if winePrefix is set and exists ...okay
/home/skors/.wine-pipelight/
Checking if dllPath/dllname is set and exists ...okay
You need to define either a valid dllPath/dllName or regKey
/home/skors/.wine-pipelight/dosdevices/c:/Program Files/Silverlight/5.1.20913.0/npctrl.dll
(dllPath = c:\Program Files\Silverlight\5.1.20913.0\)
(dllName = npctrl.dll)
Checking if dependencyInstaller is set and exists ...okay
/usr/share/pipelight/install-dependency
Checking if dependencies are defined ...okay

Distribution
Loading file /etc/issue ...okay
Ubuntu 12.04.4 LTS \n \l

Content of file: /usr/share/pipelight/configs/pipelight-silverlight5.1
Loading file /usr/share/pipelight/configs/pipelight-silverlight5.1 ...okay
#
# Enables a diagnostic mode which might be helpful to find an
# error in the configuration or installation.
# To get the error messages go to: http://fds-team.de/pipelight
#
# Information for advanced users: The diagnostic page embeds the plugin
# of type "application/x-pipelight-error" to trigger the output of some
# debug information. The plugin cannot be triggered if everything is
# working, so this only affects users with a broken installation.
# The debug output will include paths on the local filesystem and the
# linux distribution used. If you don't want to leak this information
# accidentially in case of a broken installation please either uninstall
# Pipelight or disable the diagnosticMode. [default: false]
#
diagnosticMode = true

#
# Path to the wine directory or the wine executable. When you
# specify a directory it should contain /bin/wine.
#
winePath = /opt/wine-compholio/bin/wine

#
# Path to the wine prefix containing Silverlight
#
winePrefix = $HOME/.wine-pipelight/

#
# The wine architecture for the wine prefix containing Silverlight
#
wineArch = win32

#
# DLLs to overwrite in Wine
# (prevents Wine from asking for Gecko, Mono or winegstreamer)
#
wineDLLOverrides = mscoree,mshtml,winegstreamer,winemenubuilder.exe=

#
# Path to the plugin loader executable
# (Should be set correctly by the make script)
#
pluginLoaderPath = /usr/share/pipelight/pluginloader.exe

#
# Path to the runtime DLLs (libgcc_s_sjlj-1.dll, libspp-0.dll,
# libstdc++-6.dll). Only necessary when these DLLs are not in the same
# directory as the pluginloader executable.
#
gccRuntimeDlls =

#
# Path and name to the Silverlight directory
# You should prefer using regKey to make it easier to switch between
# different versions.
#
dllPath = c:\Program Files\Silverlight\5.1.20913.0\
dllName = npctrl.dll

#
# Name of the registry key at HKCU\Software\MozillaPlugins\ or
# HKLM\Software\MozillaPlugins\ where to search for the plugin path.
#
# You should use this option instead of dllPath/dllName in most cases
# since you do not need to alter dllPath on a program update.
#
# regKey = @Microsoft.com/NpCtrl,version=1.0

#
# fakeVersion allows to fake the version string of Silverlight
# Allows to get around some version checks done by some websites
# when using an old version of Silverlight.
#
# fakeVersion = 5.1.20913.0

#
# overwriteArg allows to overwrite/add initialization arguments
# passed by websites to Silverlight applications. You can
# use this option as often as you want to overwrite multiple
# parameters. The GPU acceleration state of Silverlight can be controlled
# by setting:
#
# enableGPUAcceleration=false # disable GPU acceleration
# comment out # let the application decide (default)
# enableGPUAcceleration=true # force GPU acceleration
#
# You may need to overwrite the minimum runtime version if
# you use an old Silverlight version as some websites set
# an artificial limit for the version number although it
# would work with older versions.
#
# overwriteArg = minRuntimeVersion=5.0.61118.0
# overwriteArg = enableGPUAcceleration=false
# overwriteArg = enableGPUAcceleration=true
#

#
# windowlessmode refers to a term of the Netscape Plugin API and
# defines a different mode of drawing and handling events.
# On some desktop enviroments you may have problems using the
# keyboard in windowless mode, on the other hand the drawing is
# more efficient when this mode is enabled. Just choose what works
# best for you. [default: false]
#
windowlessMode = false

#
# Some browsers that don't support XEmbed only work with "real"
# windowlessmode. The following option can be used to force this
# mode. [default: false]
#
linuxWindowlessMode = false

#
# embed defines whether the Silverlight plugin should be shown
# inside the browser (true) or an external window (false).
# [default: true]
#
embed = true

#
# Path to the dependency installer script provided by the compholio
# package. (optional)
#
dependencyInstaller = /usr/share/pipelight/install-dependency

#
# Dependencies which should be installed for this plugin via the
# dependencyInstaller, can be used multiple times. (optional)
#
# Useful values for Silverlight are:
#
# -> Silverlight versions (you need to adjust dllPath):
# wine-silverlight5.1-installer
# wine-silverlight5.0-installer
# wine-silverlight4-installer
#
# -> optional depependencies (required by some streaming sites)
# wine-mpg2splt-installer
#
dependency = wine-silverlight5.1-installer
dependency = wine-mpg2splt-installer
optional-dependency = wine-wininet-installer

#
# Doesn't show any dialogs which require manual confirmation during
# the installation process, like EULA or DRM dialogs.
# [default: true]
#
quietInstallation = true

#
# In order to support browsers without NPAPI timer support
# (like Midori) we've implemented a fallback to
# NPN_PluginThreadAsyncCall. In the default configuration
# a timer based approach is preferred over async calls and the
# plugin decides by itself which method to use depending on the
# browser capabilities. Setting the following option to true
# forces the plugin to use async calls. This might be mainly
# useful for testing the difference between both event handling
# approaches. [default: false]
#
# eventAsyncCall = true

#
# The opera browser claims to provide timer functions, but they
# don't seem to work properly. When the opera detection is
# enabled Pipelight will switch to eventAsyncCall automatically
# based on the user agent string. [default: true]
#
operaDetection = true

#
# Minimal JavaScript user agent switcher. If your page doesn't check
# the user agent before loading a Silverlight instance, you can use
# this trick to overwrite the useragent or execute any other Java-
# Script you want. You can use this command multiple times.
# Uncomment the following 4 lines for FF15 spoofing.
#
# executejavascript = var __originalNavigator = navigator;
# executejavascript = navigator = new Object();
# executejavascript = navigator.__proto__ = __originalNavigator;
# executejavascript = navigator.__defineGetter__('userAgent', function () { return 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:15.0) Gecko/20120427 Firefox/15.0a1'; });

#
# We are currently implementing hardware acceleration support, which
# can cause problems on some systems as especially specific open source
# drivers render only garbage when hardware acceleration is enabled.
# To prevent breaking any working solutions, we are currently
# implementing a whitelist system, which will enable hardware
# acceleration by default if the specified shell scripts returns 0.
# Otherwise we will disable it. You can still use
#
# overwriteArg = enableGPUAcceleration=false/true
#
# to overwrite the check results. If you really want to skip this test
# you can use: silverlightGraphicDriverCheck = /bin/true
#
silverlightGraphicDriverCheck = /usr/share/pipelight/hw-accel-default

#------------------------- EXPERIMENTAL -------------------------
# Watch out: The following section contains highly experimental
# stuff! These functions are likely not working properly yet and
# might be removed at any time.

#
# In order to make it possible to let a window stay opened in fullscreen, even
# if the user clicks somewhere else it is necessary to install a window class
# hook. With some plugins this could lead to other problems! [default: false]
experimental-windowClassHook = true

#
# A sandbox is a method to isolate an untrusted program from the rest of
# the system to prevent damage in case of a virus, program errors or
# similar issues. We've been developing the ability to use a (self-created)
# sandbox, but this feature still has to be considered experimental.
# The feature will only be used when the sandbox path exists.
#
sandboxPath = /usr/share/pipelight/sandbox

Configuration of Pipelight
Checking if config exists ...okay
/usr/share/pipelight/configs/pipelight-silverlight5.1
Checking if pluginLoaderPath is set and exists ...okay
/usr/share/pipelight/pluginloader.exe
Checking if winePath is set and exists ...okay
/opt/wine-compholio/bin/wine
Checking if wine exists ...okay
/opt/wine-compholio/bin/wine
Checking if winePrefix is set and exists ...okay
/home/skors/.wine-pipelight/
Checking if dllPath/dllname is set and exists ...okay
You need to define either a valid dllPath/dllName or regKey
/home/skors/.wine-pipelight/dosdevices/c:/Program Files/Silverlight/5.1.20913.0/npctrl.dll
(dllPath = c:\Program Files\Silverlight\5.1.20913.0\)
(dllName = npctrl.dll)
Checking if dependencyInstaller is set and exists ...okay
/usr/share/pipelight/install-dependency
Checking if dependencies are defined ...okay

Distribution
Loading file /etc/issue ...okay
Ubuntu 12.04.4 LTS \n \l

Content of file: /usr/share/pipelight/configs/pipelight-silverlight5.1
Loading file /usr/share/pipelight/configs/pipelight-silverlight5.1 ...okay
#
# Enables a diagnostic mode which might be helpful to find an
# error in the configuration or installation.
# To get the error messages go to: http://fds-team.de/pipelight
#
# Information for advanced users: The diagnostic page embeds the plugin
# of type "application/x-pipelight-error" to trigger the output of some
# debug information. The plugin cannot be triggered if everything is
# working, so this only affects users with a broken installation.
# The debug output will include paths on the local filesystem and the
# linux distribution used. If you don't want to leak this information
# accidentially in case of a broken installation please either uninstall
# Pipelight or disable the diagnosticMode. [default: false]
#
diagnosticMode = true

#
# Path to the wine directory or the wine executable. When you
# specify a directory it should contain /bin/wine.
#
winePath = /opt/wine-compholio/bin/wine

#
# Path to the wine prefix containing Silverlight
#
winePrefix = $HOME/.wine-pipelight/

#
# The wine architecture for the wine prefix containing Silverlight
#
wineArch = win32

#
# DLLs to overwrite in Wine
# (prevents Wine from asking for Gecko, Mono or winegstreamer)
#
wineDLLOverrides = mscoree,mshtml,winegstreamer,winemenubuilder.exe=

#
# Path to the plugin loader executable
# (Should be set correctly by the make script)
#
pluginLoaderPath = /usr/share/pipelight/pluginloader.exe

#
# Path to the runtime DLLs (libgcc_s_sjlj-1.dll, libspp-0.dll,
# libstdc++-6.dll). Only necessary when these DLLs are not in the same
# directory as the pluginloader executable.
#
gccRuntimeDlls =

#
# Path and name to the Silverlight directory
# You should prefer using regKey to make it easier to switch between
# different versions.
#
dllPath = c:\Program Files\Silverlight\5.1.20913.0\
dllName = npctrl.dll

#
# Name of the registry key at HKCU\Software\MozillaPlugins\ or
# HKLM\Software\MozillaPlugins\ where to search for the plugin path.
#
# You should use this option instead of dllPath/dllName in most cases
# since you do not need to alter dllPath on a program update.
#
# regKey = @Microsoft.com/NpCtrl,version=1.0

#
# fakeVersion allows to fake the version string of Silverlight
# Allows to get around some version checks done by some websites
# when using an old version of Silverlight.
#
# fakeVersion = 5.1.20913.0

#
# overwriteArg allows to overwrite/add initialization arguments
# passed by websites to Silverlight applications. You can
# use this option as often as you want to overwrite multiple
# parameters. The GPU acceleration state of Silverlight can be controlled
# by setting:
#
# enableGPUAcceleration=false # disable GPU acceleration
# comment out # let the application decide (default)
# enableGPUAcceleration=true # force GPU acceleration
#
# You may need to overwrite the minimum runtime version if
# you use an old Silverlight version as some websites set
# an artificial limit for the version number although it
# would work with older versions.
#
# overwriteArg = minRuntimeVersion=5.0.61118.0
# overwriteArg = enableGPUAcceleration=false
# overwriteArg = enableGPUAcceleration=true
#

#
# windowlessmode refers to a term of the Netscape Plugin API and
# defines a different mode of drawing and handling events.
# On some desktop enviroments you may have problems using the
# keyboard in windowless mode, on the other hand the drawing is
# more efficient when this mode is enabled. Just choose what works
# best for you. [default: false]
#
windowlessMode = false

#
# Some browsers that don't support XEmbed only work with "real"
# windowlessmode. The following option can be used to force this
# mode. [default: false]
#
linuxWindowlessMode = false

#
# embed defines whether the Silverlight plugin should be shown
# inside the browser (true) or an external window (false).
# [default: true]
#
embed = true

#
# Path to the dependency installer script provided by the compholio
# package. (optional)
#
dependencyInstaller = /usr/share/pipelight/install-dependency

#
# Dependencies which should be installed for this plugin via the
# dependencyInstaller, can be used multiple times. (optional)
#
# Useful values for Silverlight are:
#
# -> Silverlight versions (you need to adjust dllPath):
# wine-silverlight5.1-installer
# wine-silverlight5.0-installer
# wine-silverlight4-installer
#
# -> optional depependencies (required by some streaming sites)
# wine-mpg2splt-installer
#
dependency = wine-silverlight5.1-installer
dependency = wine-mpg2splt-installer
optional-dependency = wine-wininet-installer

#
# Doesn't show any dialogs which require manual confirmation during
# the installation process, like EULA or DRM dialogs.
# [default: true]
#
quietInstallation = true

#
# In order to support browsers without NPAPI timer support
# (like Midori) we've implemented a fallback to
# NPN_PluginThreadAsyncCall. In the default configuration
# a timer based approach is preferred over async calls and the
# plugin decides by itself which method to use depending on the
# browser capabilities. Setting the following option to true
# forces the plugin to use async calls. This might be mainly
# useful for testing the difference between both event handling
# approaches. [default: false]
#
# eventAsyncCall = true

#
# The opera browser claims to provide timer functions, but they
# don't seem to work properly. When the opera detection is
# enabled Pipelight will switch to eventAsyncCall automatically
# based on the user agent string. [default: true]
#
operaDetection = true

#
# Minimal JavaScript user agent switcher. If your page doesn't check
# the user agent before loading a Silverlight instance, you can use
# this trick to overwrite the useragent or execute any other Java-
# Script you want. You can use this command multiple times.
# Uncomment the following 4 lines for FF15 spoofing.
#
# executejavascript = var __originalNavigator = navigator;
# executejavascript = navigator = new Object();
# executejavascript = navigator.__proto__ = __originalNavigator;
# executejavascript = navigator.__defineGetter__('userAgent', function () { return 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:15.0) Gecko/20120427 Firefox/15.0a1'; });

#
# We are currently implementing hardware acceleration support, which
# can cause problems on some systems as especially specific open source
# drivers render only garbage when hardware acceleration is enabled.
# To prevent breaking any working solutions, we are currently
# implementing a whitelist system, which will enable hardware
# acceleration by default if the specified shell scripts returns 0.
# Otherwise we will disable it. You can still use
#
# overwriteArg = enableGPUAcceleration=false/true
#
# to overwrite the check results. If you really want to skip this test
# you can use: silverlightGraphicDriverCheck = /bin/true
#
silverlightGraphicDriverCheck = /usr/share/pipelight/hw-accel-default

#------------------------- EXPERIMENTAL -------------------------
# Watch out: The following section contains highly experimental
# stuff! These functions are likely not working properly yet and
# might be removed at any time.

#
# In order to make it possible to let a window stay opened in fullscreen, even
# if the user clicks somewhere else it is necessary to install a window class
# hook. With some plugins this could lead to other problems! [default: false]
experimental-windowClassHook = true

#
# A sandbox is a method to isolate an untrusted program from the rest of
# the system to prevent damage in case of a virus, program errors or
# similar issues. We've been developing the ability to use a (self-created)
# sandbox, but this feature still has to be considered experimental.
# The feature will only be used when the sandbox path exists.
#
sandboxPath = /usr/share/pipelight/sandbox

Here is the console log :

[PIPELIGHT:LIN:unknown] attached to process.
[PIPELIGHT:LIN:unknown] checking environment variable PIPELIGHT_SILVERLIGHT5_1_CONFIG.
[PIPELIGHT:LIN:unknown] searching for config file pipelight-silverlight5.1.
[PIPELIGHT:LIN:unknown] trying to load config file from '/home/skors/.config/pipelight-silverlight5.1'.
[PIPELIGHT:LIN:unknown] trying to load config file from '/etc/pipelight-silverlight5.1'.
[PIPELIGHT:LIN:unknown] trying to load config file from '/usr/share/pipelight/configs/pipelight-silverlight5.1'.
[PIPELIGHT:LIN:unknown] sandbox not found or not installed!
[PIPELIGHT:LIN:silverlight5.1] basicplugin.c:401:checkSilverlightGraphicDriver(): GPU driver check - Your driver is not in the whitelist, hardware acceleration disabled.
[PIPELIGHT:LIN:silverlight5.1] using wine prefix directory /home/skors/.wine-pipelight/.
[PIPELIGHT:LIN:silverlight5.1] checking plugin installation - this might take some time.
[install-dependency] wine-silverlight5.1-installer is already installed in '/home/skors/.wine-pipelight/'.
[install-dependency] wine-mpg2splt-installer is already installed in '/home/skors/.wine-pipelight/'.
wine: cannot find L"C:\\windows\\system32\\winemenubuilder.exe"
err:wineboot:ProcessRunKeys Error running cmd L"C:\\windows\\system32\\winemenubuilder.exe -a -r" (2)
[PIPELIGHT:WIN:silverlight5.1] embedded mode is on.
[PIPELIGHT:WIN:silverlight5.1] windowless mode is off.
[PIPELIGHT:WIN:silverlight5.1] linux windowless mode is off.
[PIPELIGHT:WIN:silverlight5.1] force SetWindow is off.
[PIPELIGHT:WIN:silverlight5.1] unity hacks is off.
[PIPELIGHT:WIN:silverlight5.1] window class hook is on.
[PIPELIGHT:LIN:silverlight5.1] ../common/common.c:162:receiveCommand(): unable to receive data within the specified timeout.
[PIPELIGHT:LIN:silverlight5.1] basicplugin.c:117:attach(): error during the initialization of the wine process - aborting.
[PIPELIGHT:LIN:silverlight5.1] using timer based event handling.
[PIPELIGHT:LIN:silverlight5.1] running diagnostic checks.
[PIPELIGHT:LIN:silverlight5.1] running diagnostic checks.
[PIPELIGHT:WIN:silverlight5.1] replaced API function CreateWindowExA.
[PIPELIGHT:WIN:silverlight5.1] replaced API function CreateWindowExW.
[PIPELIGHT:WIN:silverlight5.1] replaced API function TrackPopupMenuEx.
[PIPELIGHT:WIN:silverlight5.1] replaced API function TrackPopupMenu.
fixme:advapi:RegisterTraceGuidsW (0x7a1f87, 0x840118, {aa087e0e-0b35-4e28-8f3a-440c3f51eef1}, 1, 0x72f688, (null), (null), 0x840118): stub
[PIPELIGHT:WIN:silverlight5.1] init successful!

Revision history for this message
Best Sebastian Lackner (slackner) said :
#3

Hi,

your new error message is basically the same as at the beginning, which means that it didn't help unfortunately.

Is your PC and/or your hard drive very slow, so that it takes some time until the plugins are loaded? The only reason I can imagine for this problem, is that the latest wine version probably needs a bit more time to initialize, and your PC isn't fast enough to do this within the specified timeout. To check this, please do the following steps:

* Close the browser windows

* Start regedit with the following command. You do not need to do anything with it, just keep it open, so that wine is already running, which means that the next process will start up a bit faster.

WINEPREFIX=~/.wine-pipelight /opt/wine-compholio/bin/wine regedit

* Then clear the plugin cache again:

sudo pipelight-plugin --create-mozilla-plugins

* And finally start the browser, for example with:

firefox

Does it work then? If yes I can increase the timeout a bit. I expected the current one to be enough for all PCs out there, but if it loads actually slower in your case, its no problem to adjust that. I can also provide you with a version for testing (just tell me if your OS is 32 or 64bit) if it is related to that.

Sebastian

Revision history for this message
Willing2Learn (curious-g74) said :
#4

I'm having the same problem. Tried the most recent suggestion (closed browser, started regedit, cleared plugin cache and restarted browser). When I logged into Netflix after all of this, the icons for the various 'flix' did not load (just black squares inside of which 'play' buttons appeared when I hovered the mouse). When I click on one to play the movie, nothing loads, and I eventually get an error code from Netflix (error N8109).

Thanks to skorasaurus for posing the question, and thanks to Sebastian for helping to troubleshoot.

Revision history for this message
skorasaurus (skoraw) said :
#5

Thanks Sebastian Lackner, that solved my question.

Revision history for this message
skorasaurus (skoraw) said :
#6

After I tried your advice and it worked; I closed the browser and regedit. I then started my browser and went to netflix.com again and tried to view a movie, and received a black screen.

I tried a couple times to confirm and that netflix will only work if I have regedit open as well.

I have a relatively new laptop (8gb ram, acer aspire 5560-7414) with this as my hard drive:

(FROM HDparm)
 Model=ST1000LM014-1EJ164, FwRev=SM11, SerialNo=W3803VY6
 Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs RotSpdTol>.5% }
 RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=4
 BuffType=unknown, BuffSize=unknown, MaxMultSect=16, MultSect=16
 CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=1953525168
 IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}
 PIO modes: pio0 pio1 pio2 pio3 pio4
 DMA modes: mdma2
 UDMA modes: udma0 udma1 udma2 udma3 udma4 udma5 *udma6
 AdvancedPM=yes: unknown setting WriteCache=enabled
 Drive conforms to: Reserved: ATA/ATAPI-4,5,6,7

Revision history for this message
skorasaurus (skoraw) said :
#7

and my OS is 64bit.

Revision history for this message
Sebastian Lackner (slackner) said :
#8

Hi,

@Willing2Learn (curious-g74): Your problem is most probably something else. The error code N8109 is typical for a wrong or missing user agent switcher. Take a look here: https://bugs.launchpad.net/pipelight/+bug/1213672 or at our FAQ: https://answers.launchpad.net/pipelight/+faq/2351 . Netflix works best when using this one: "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:15.0) Gecko/20120427 Firefox/15.0a1". If the problem isn't solved afterwards please create a new question which contains some more details.

@skorasaurus: Thanks for testing. It really seems like wine starts up too slow on your machine (for some unknown reason). I have just build a pipelight version based on the current git, where the timeout is increased from 20 to 60 seconds. I would suggest you try it out, and check if this solves the problem. If yes I can also push this change to the branch, so that its included in future versions of Pipelight.

Just download the following file:
https://dl.dropboxusercontent.com/u/21447213/pipelight/pipelight-multi_0.2.5_amd64.deb
(sha256sum: 7f99490f3c82db10157f727b4dd24ce53087e0919ede499de6f4905d36c25d5a )

And install it with:
sudo dpkg -i pipelight-multi_0.2.5_amd64.deb

Afterwards please check if the error is gone.

Sebastian

Revision history for this message
Willing2Learn (curious-g74) said :
#9

Many thanks for the help, Sebastian!

I switched User Agent AddOns and used 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:15.0) Gecko/20120427 Firefox/15.0a1' and now I'm back in business.

Cheers

Revision history for this message
skorasaurus (skoraw) said :
#10

Sebastian,

Yes, that fixed it. :)

Revision history for this message
Sebastian Lackner (slackner) said :
#11

Hi,

thanks for testing.

I have just commited this change, so it will be part of future Pipelight versions.
https://bitbucket.org/mmueller2012/pipelight/commits/448c48dcb4176b775031964a960e0d730644cade

In the meantime you can use the version provided above.

Sebastian