Bug 216804

Summary: emulators/pipelight: Flash not working
Product: Ports & Packages Reporter: tom
Component: Individual Port(s)Assignee: freebsd-ports-bugs (Nobody) <ports-bugs>
Status: Closed Overcome By Events    
Severity: Affects Some People CC: freebsdbugs, javashin1986, reezer, rene, w.schwarzenfeld
Priority: --- Keywords: needs-patch, needs-qa
Version: Latest   
Hardware: Any   
OS: Any   

Description tom 2017-02-05 01:11:10 UTC
was running windows Flash under pipelight on 11-current (circa June 10th). upgraded to 12-current a few days ago, can't get it to work.

FreeBSD discordia.uffner.com 12.0-CURRENT FreeBSD 12.0-CURRENT #14 r312996: Mon Jan 30 21:33:53 EST 2017     tom@discordia.uffner.com:/usr/obj/usr/src/sys/DISCORDIA  amd64

pipelight-0.2.8.2_3
i386-wine-staging-2.0.r6,1
seamonkey-2.46_4

ran /usr/local/share/wine/patch-nvidia.sh
followed instructions at https://forums.freebsd.org/threads/56506/#post-321811
didn't work...

pipelight-plugin --system-check says...
>> 32 bit <<

Checking Wine version ...
Version: wine-2.0-rc6 (Staging)
Patched Wine version: PASSED
(Run '/usr/local/share/pipelight/wine --patches' for more details.)

fixme:ntdll:NtCreateNamedPipeFile Message mode not supported, falling back to byte mode.
fixme:ntdll:NtCreateNamedPipeFile Message mode not supported, falling back to byte mode.
fixme:ntdll:NtCreateNamedPipeFile Message mode not supported, falling back to byte mode.
fixme:ntdll:NtCreateNamedPipeFile Message mode not supported, falling back to byte mode.
fixme:ntdll:NtCreateNamedPipeFile Message mode not supported, falling back to byte mode.
Checking OpenGL ...
OpenGL Vendor: NVIDIA Corporation
OpenGL Renderer: GeForce GT 610/PCIe/SSE2
OpenGL Direct Rendering: True
OpenGL: PASSED

Checking fonts ...
Found Arial in Z:\usr\local\share\fonts\webfonts\arial.ttf
Found Arial in Z:\usr\local\share\fonts\webfonts\arialbd.ttf
Found Arial in Z:\usr\local\share\fonts\webfonts\arialbi.ttf
Found Arial in Z:\usr\local\share\fonts\webfonts\ariali.ttf
Found Verdana in Z:\usr\local\share\fonts\webfonts\verdana.ttf
Found Verdana in Z:\usr\local\share\fonts\webfonts\verdanab.ttf
Found Verdana in Z:\usr\local\share\fonts\webfonts\verdanaz.ttf
Found Verdana in Z:\usr\local\share\fonts\webfonts\verdanai.ttf
Fonts: PASSED

Checking ACLs / XATTR ...
ACLs: PASSED

Checking libraries...
libfontconfig.so.1: found
libfreetype.so.6: found
libGL.so.1: found
libgnutls.so.30: found
libjpeg.so.8: found
libncurses.so.8: found
libnetapi.so: missing
libodbc.so: missing
libpcap.so.8: found
libpng16.so.16: found
libtxc_dxtn.so: found
libX11.so.6: found
libX11-xcb.so.1: found
libXcomposite.so.1: found
libXcursor.so.1: found
libXext.so.6: found
libXi.so.6: found
libXinerama.so.1: found
libXrandr.so.2: found
libXrender.so.1: found
libXxf86vm.so.1: found
Libraries: FAILURE

seamonkey logged the following error message:

[install-dependency] Downloading and running wine-flash-installer.
sed: 1: "/Content-Length/{s/.*:  ...": extra characters at the end of p command
Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged.
Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged.
Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged.
[install-dependency] ERROR: Downloading of wine-flash-installer failed multiple times. Please check:
[install-dependency]
[install-dependency]        * that your internet connection is working properly
[install-dependency]
[install-dependency]        * and that the plugin database is up-to-date. To update it just run:
[install-dependency]            sudo pipelight-plugin --update
[install-dependency]
[install-dependency]        If this doesn't help then most-likely the download URLs or checksums
[install-dependency]        have changed. We recommend to open a bug-report in this case.
[install-dependency] ERROR: Download of wine-flash-installer failed.

looking at /usr/local/share/pipelight/install-dependency and http://www.adobe.com/de/software/flash/about/ I found that the binaries had been updated. putting in the following changes:

#                       INS=(install_flash "23_0_0_205")
#                       URL="http://fpdownload.macromedia.com/get/flashplayer/pd
c/23.0.0.205/install_flash_player.exe"
#                       SHA="c4d38ca72b0e818d3418c020753132a3c95fccab4dd361b5486
a151608689f5c"
                        INS=(install_flash "24_0_0_194")
                        URL="http://fpdownload.macromedia.com/get/flashplayer/pd
c/24.0.0.194/install_flash_player.exe"
                        SHA="f2622b7578fd38263369bc28ee2f4e8dd58e225d303434ecada
9e5be8d564ef4"

appears to resolve the error...

[install-dependency] Downloading and running wine-flash-installer.
sed: 1: "/Content-Length/{s/.*:  ...": extra characters at the end of p command
Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged.
Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged.

and i have 

.wine-pipelight/drive_c/windows/system32/Macromed/Flash:
total 14297
drwxr-xr-x  2 tom  staff        10 Feb  4 18:20 .
drwxr-xr-x  4 tom  staff         4 Feb  4 18:20 ..
-rw-r--r--  1 tom  staff      3088 Feb  4 18:20 FlashInstall.log
-rwxr-xr-x  1 tom  staff    270936 Feb  4 18:20 FlashPlayerUpdateService.exe
-rw-r--r--  1 tom  staff    542296 Feb  4 18:20 FlashUtil32_24_0_0_194_Plugin.dll
-rwxr-xr-x  1 tom  staff   1269336 Feb  4 18:20 FlashUtil32_24_0_0_194_Plugin.exe
-rw-r--r--  1 tom  staff  19762776 Feb  4 18:20 NPSWF32_24_0_0_194.dll
-rw-r--r--  1 tom  staff       856 Feb  4 18:20 flashplayer.xpt
-rw-r--r--  1 tom  staff        27 Feb  4 18:20 mms.cfg
-rw-r--r--  1 tom  staff    449899 Feb  4 18:20 plugin.vch

but it still doesn't show up in seamonkey as a working plugin. What am I missing?

I haven't tested the other plugins because I have no use cases for them, but they may need updating too.
Comment 1 Christian Sturm 2017-02-07 11:44:04 UTC
It's actually the script that has a couple of problems.

One is that the Flash URL specified in the script isn't correct, and the checksum isn't either. That's what your changes fix.

The problem you are hitting is this:
    sed: 1: "/Content-Length/{s/.*:  ...": extra characters at the end of p command

This is because the script expect a different version of sed, not FreeBSD's sed. To fix this one would need to use multiple "-e" arguments, so leave the first part, but then a standalone "-e 'p'", instead of "; p" and then the rest.


If someone wants to work on this:

In other words the script in:

/usr/local/share/pipelight/install-dependency

needs a couple of patches. This should preferably be done upstream of course.

It would also make sense to add ca_root_nss as a dependency.

Personally I made it work by looking at the script executing the scripts semi-manually, to see if it works after the effort. It does.

As a hint for other people trying to fix the issue. You need to run the following command, because otherwise it won't rerun the script, but simply fail.

    pipelight-plugin --create-mozilla-plugins


Also I think it would make sense to add consistent for fetch, rather than wget. Here it had problems after first using it correctly. But this is optional, when wget is required/installed.

I hope this helped. I am sorry, I don't have a patch to do the necessary fixing.
Comment 2 JavaShin 2017-03-22 03:04:21 UTC
Hello I have The Same Problem Here on Freebsd 12-Current 
firefox
[PIPELIGHT:LIN:unknown] attached to process.
[PIPELIGHT:LIN:unknown] checking environment variable PIPELIGHT_FLASH_CONFIG.
[PIPELIGHT:LIN:unknown] searching for config file pipelight-flash.
[PIPELIGHT:LIN:unknown] trying to load config file from '/root/.config/pipelight-flash'.
[PIPELIGHT:LIN:unknown] trying to load config file from '/etc/pipelight-flash'.
[PIPELIGHT:LIN:unknown] trying to load config file from '/usr/local/share/pipelight/configs/pipelight-flash'.
[PIPELIGHT:LIN:unknown] sandbox not found or not installed!
[PIPELIGHT:LIN:flash] using wine prefix directory /root/.wine-pipelight.
[PIPELIGHT:LIN:flash] checking plugin installation - this might take some time.
[PIPELIGHT:LIN:flash] -------------------------------------------------------
[PIPELIGHT:LIN:flash] WARNING! YOU ARE RUNNING THIS PIPELIGHT PLUGIN AS ROOT!
[PIPELIGHT:LIN:flash] THIS IS USUALLY NOT A GOOD IDEA! YOU HAVE BEEN WARNED!
[PIPELIGHT:LIN:flash] -------------------------------------------------------
Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged.
[install-dependency] Downloading and running wine-flash-installer.
sed: 1: "/Content-Length/{s/.*:  ...": extra characters at the end of p command
Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged.
[PIPELIGHT:LIN:flash] basicplugin.c:299:checkPluginInstallation(): Plugin installer did not run correctly (error occured).
[PIPELIGHT:LIN:flash] basicplugin.c:116:attach(): plugin not correctly installed - aborting.
Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged.
Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged.
[install-dependency] ERROR: Downloading of wine-flash-installer failed multiple times. Please check:
[install-dependency]
[install-dependency]        * that your internet connection is working properly
[install-dependency]
[install-dependency]        * and that the plugin database is up-to-date. To update it just run:
[install-dependency]            sudo pipelight-plugin --update
[install-dependency]
[install-dependency]        If this doesn't help then most-likely the download URLs or checksums
[install-dependency]        have changed. We recommend to open a bug-report in this case.
[install-dependency] ERROR: Download of wine-flash-installer failed.
[root@darkmaza ~]#
Comment 3 JavaShin 2017-03-22 03:05:08 UTC
How I fix This ?
Comment 4 tom 2017-03-22 07:06:03 UTC
(In reply to Carlos Jimenez from comment #3)
You can probably figure it out from the bottom bit of my post, and Christian's reply.

Basically, you need to look at the install-dependency script, then find the correct links & checksums for the plugins that you need. if you have an nvidia graphics card, you need to run the patch-nvidia.sh for wine. then edit install-dependency to correct the links & checksums. as Christian said, there is also a problem with sed, but it didn't seem to affect me too much.

eventually when i have some spare time i'll submit a patch, but don't hold your breath waiting... what we really need is a new maintainer for the port. if i get it working right i might consider taking it over (even though i would prefer to see Flash die a long overdue death)
Comment 5 JavaShin 2017-03-25 11:01:25 UTC
Sorry for being inpatient 
but i try that and still dont work and some other things
Comment 6 JavaShin 2017-03-25 20:01:09 UTC
Hello for some reason after installing flashplayer Native wrapper around Linux Flash Player and 
nspluginwrapper Compatibility plugin for Mozilla NPAPI plugins

and after changing  in /usr/local/share/pipelight/install-dependency

the installer version and sha256

its working .
Comment 7 JavaShin 2017-03-25 20:01:56 UTC
Hello for some reason after installing flashplayer Native wrapper around Linux Flash Player and 
nspluginwrapper Compatibility plugin for Mozilla NPAPI plugins

and after changing  in /usr/local/share/pipelight/install-dependency

the installer version and sha256

its working .
Comment 8 Walter Schwarzenfeld 2018-01-17 13:05:52 UTC
If I understand right it is solved? So we can close?
Comment 9 Christian Sturm 2018-01-20 14:56:41 UTC
I don't think so. What brings you to that assumption? The port was not changed since September.
Comment 10 Tim Preston 2019-03-25 10:53:25 UTC
I attempted to install this, and updated the install-dependency script for the latest version of Silverlight, but mine fails a little more spectacularly:


 $ pipelight-plugin --system-check
>> 32 bit <<

Checking Wine version ...
Version: wine-3.0.4
Patched Wine version: FAILURE

Checking OpenGL ...
OpenGL Vendor: Intel Open Source Technology Center
OpenGL Renderer: Mesa DRI Intel(R) HD Graphics 630 (Kaby Lake GT2) x86/MMX/SSE2
OpenGL Direct Rendering: False (or old/wrong wine version)
OpenGL: FAILURE

Checking fonts ...
Found Arial in Z:\usr\local\share\fonts\webfonts\arial.ttf
Found Arial in Z:\usr\local\share\fonts\webfonts\arialbd.ttf
Found Arial in Z:\usr\local\share\fonts\webfonts\arialbi.ttf
Found Arial in Z:\usr\local\share\fonts\webfonts\ariali.ttf
Found Verdana in Z:\usr\local\share\fonts\webfonts\verdana.ttf
Found Verdana in Z:\usr\local\share\fonts\webfonts\verdanab.ttf
Found Verdana in Z:\usr\local\share\fonts\webfonts\verdanaz.ttf
Found Verdana in Z:\usr\local\share\fonts\webfonts\verdanai.ttf
Fonts: PASSED

Checking ACLs / XATTR ...
ACLs: FAILURE

Checking libraries...
wine: cannot find L"C:\\windows\\system32\\--check-libs.exe"
Libraries: FAILURE



Firefox logs that it downloads the Silverlight.exe installer, but then fails to install with:

wine: cannot find L"C:\\windows\\system32\\winemenubuilder.exe"
000b:err:wineboot:ProcessRunKeys Error running cmd L"C:\\windows\\system32\\winemenubuilder.exe -a -r" (2)
0009:fixme:ntdll:NtLockFile I/O completion on lock not implemented yet
0009:fixme:msi:is_uninstallable check other criteria
002b:err:msi:ACTION_CallDllFunction failed to load dll L"C:\\Program Files\\Microsoft Silverlight\\xapauthenticodesip.dll" (126)
002d:fixme:heap:RtlSetHeapInformation 0x0 1 0x0 0 stub
002f:fixme:heap:RtlSetHeapInformation 0x0 1 0x0 0 stub
0009:fixme:msi:internal_ui_handler internal UI not implemented for message 0x0b000000 (UI level = 5)
0009:fixme:msi:internal_ui_handler internal UI not implemented for message 0x0b000000 (UI level = 5)
[install-dependency] ERROR: Installer for wine-silverlight5.1-installer did not run correctly or was aborted.
[install-dependency] ERROR: Execution of wine-silverlight5.1-installer failed.
[PIPELIGHT:LIN:silverlight5.1] basicplugin.c:303:checkPluginInstallation(): Plugin installer did not run correctly (exitcode = 1).
[PIPELIGHT:LIN:silverlight5.1] basicplugin.c:116:attach(): plugin not correctly installed - aborting.
Comment 11 Rene Ladan freebsd_committer freebsd_triage 2019-10-16 11:55:32 UTC
No recent activity, and the port expired, so removed.