The forum

problem with shasum or download

Author Replies
rupert Sunday 25 January 2015 at 13:34
rupert

Hello,

when I try to install any program in POL 4.2.5, e.g. MS Office 2010 from a local install file, the process stops with a popup window saying "Der Download ist fehlgeschlagen" (meaning download failed -- I am using the German POL version). Having started POL from a terminal window the messages are as follows:

rupert@venus:/tmp$ playonlinux
Looking for python... 2.7.6 - selected
[main] Message: PlayOnLinux (4.2.5) is starting
[clean_tmp] Message: Cleaning temp directory
[Check_OpenGL] Message: 32bits direct rendering is enabled
[Check_OpenGL] Message: 64bits direct rendering is enabled
[POL_System_CheckFS] Message: Checking filesystem for /home/rupert/.PlayOnLinux/
[main] Message: Filesystem is compatible
[install_plugins] Message: Überprüfe Plugin: Capture...
[install_plugins] Message: Überprüfe Plugin: ScreenCap...
[install_plugins] Message: Überprüfe Plugin: PlayOnLinux Vault...
[maj_check] Message: Web version : 1422182743
[maj_check] Message: Current local version : 1422157287
[maj_check] Message: Updating list
[POL_Config_Write] Message: Config write: LAST_TIMESTAMP 1422182743
[POL_GPG_auth_script] Message: Checking signature of /home/rupert/.PlayOnLinux//install
[POL_GPG_install_key] Message: Importing PlayOnLinux public key
[POL_Bash] Message: POL GPG : Good signature - Microsoft Office 2010
[POL_SetupWindow_Init] Message: Creating new window for pid 13955
Version 4.1.6-Ubuntu
[POL_System_SetArch] Message: POL_ARCH set to x86
[POL_SetupWindow_icon_menu] Message: icon_menu answer: Benutze die Setup-Datei auf meinem Computer
[POL_SetupWindow_InstallMethod] Message: Install method: LOCAL
[POL_SetupWindow_browse] Message: browser answer: /home/rupert/WindowsDaten/Speicher/ExtensionsXP/Office2010/X17-75245.exe
[POL_Wine_SelectPrefix] Message: Selecting prefix: Office2010
[POL_Wine_PrefixCreate] Message: Setting POL_WINEVERSION to 1.7.22
[POL_Wine_PrefixCreate] Message: Creating prefix (1.7.22)...
[POL_Wine_PrefixCreate] Message: Prefix already exists
[POL_SetupWindow_menu] Message: menu answer: Lösche (Inhalte des virtuellen Laufwerk gehen verloren)
[POL_Wine_PrefixCreate] Message: Erase Prefix
[POL_Wine_PrefixCreate] Message: Using wine 1.7.22
[POL_Wine_InstallVersion] Message: Installing wine version path: 1.7.22, x86
shasum: ./PlayOnLinux-wine-1.7.22-linux-x86.pol:
Server sha1 : 0f9d87130aac62ec00cbeaea786eb9d336db6ea6
Client sha1 :

Clicking on "Weiter" ("Continue"?) adds these lines:

rm: das Entfernen von »PlayOnLinux-wine-1.7.22-linux-x86.pol“ ist nicht möglich: Datei oder Verzeichnis nicht gefunden
[POL_Wine_Install_resources] Message: Installing gecko for wine 1.7.22 x86
[POL_Wine_Install_resources] Message: Linking gecko
ln: Die symbolische Verknüpfung »/home/rupert/.PlayOnLinux//wine/linux-x86/1.7.22/share/wine/gecko“ konnte nicht angelegt werden: Datei oder Verzeichnis nicht gefunden
[POL_Wine_Install_resources] Message: Installing wine_gecko-2.24-x86.msi
[POL_Download] Message: Downloading http://www.playonlinux.com/wine/gecko/x86/wine_gecko-2.24-x86.msi
cat: wine_gecko-2.24-x86.msi: Datei oder Verzeichnis nicht gefunden

and the POL window says that files do not match and reports different shasums on server and locally. This can be repeated five times until the script terminates due to this fatal error:

Error in POL_Download
Unable to download http://www.playonlinux.com/wine/gecko/x86/wine_gecko-2.24-x86.msi after 5 attemps

Is this a shasum or a download problem? The machine is connected to the internet via a squid3 proxy which I configured to pass everything (testwise) and which I also allowed to get bypassed -- no success either. The proxy address and port for sure were filled in the appropriate boxes of POL.

Can I check whether a file gets downloaded? Where would it be stored in the filesystem?

shasum and sha1sum are present:

rupert@venus:/tmp$ which shasum
/usr/bin/shasum
rupert@venus:/tmp$ which sha1sum
/usr/bin/sha1sum

Any ideas?

Thanks a lot

Rupert

petch Sunday 25 January 2015 at 16:02
petch

sha1=$($POL_WGET "$WINE_SITE/$WINE_SECTION/$WINE_ADDRESS.sha1" -O- | awk '{print $1}')
sha1_file=$(shasum "./$WINE_ADDRESS" | awk '{print $1}')
echo "Server sha1 : $sha1"
echo "Client sha1 : $sha1_file"

Resulting in

shasum: ./PlayOnLinux-wine-1.7.22-linux-x86.pol:
Server sha1 : 0f9d87130aac62ec00cbeaea786eb9d336db6ea6
Client sha1 :

means that shasum is actually outputting its name and parameters to the standard error output or something instead of the SHA1 digest of its file parameter to the standard output? That's weird

I wonder what version this is, on the systems at my disposal they're actually Perl programs...

rupert Sunday 25 January 2015 at 18:14
rupert

Hello petch,

I interpret the code and the result that $sha1_file remains empty -- maybe due to the file ./$WINE_ADDRESS being missing.

Where is the code extract you posted from? I would like to do some more research there.

Thank you, Rupert

petch Sunday 25 January 2015 at 22:38
petch

Bash function POL_Wine_InstallVersion in lib/wine.lib

rupert Sunday 1 February 2015 at 13:41
rupert

Hi petch,

Thanks for your directions to the bash function files. Using "set -x" at the top of those files I traced the program and found the following: There are several messages saying "Downloading" something but no real download command like wget!

To make a long story short: I assume the function POL_SetupWindow_download () is missing something.

Original code (my version of lib/setupwindow.lib dated Sept 7, 2014)

POL_SetupWindow_download ()
{
        # Download a file and place it to the current directory
        # Usage: POL_SetupWindow_download [message] [title] [url] [file]
        # /!\ Scriptors should directly use POL_Download
        # If provided, make sure the filename is absolute to avoid any misinterpretation from server
        [ -n "$4" ] && FILENAME="$4" || FILENAME="$PWD/"
        Result="$(echo "$POL_COOKIE     POL_SetupWindow_download        $$      $(POL_Untab "$1")       $(POL_Untab "$2")       $3      $(POL_Untab "$FILENAME")" | ncns "$POL_HOST" "$POL_PORT")"
        # FIXME: Result should send 'fail' if the download has failed. Maybe we could catch it
}

I cannot see how this code would download anything!

When I added a quick&dirty

wget $3

before the long "Result=..." line and a

Result=""

after it, all install scripts I tested just work perfectly! (The latter to avoid false download problem reports resulting in repeated download attempts.)

It's hard for me to believe that I am the first to discover this very basic script problem since the release of this POL version. Maybe it's due to the fact that I started from scratch, no wine or gecko version installed yet.

Those are my findings. Maybe I am wrong because I do not understand POL and wine completely and my fix definitely is not good for release. Who would be the right person to verify? Has this lib file changed recently? Is there a changelog over released versions?

Best regards

Rupert

Quentin PÂRIS Sunday 1 February 2015 at 13:47
Quentin PÂRISAnonymous

Original code (my version of lib/setupwindow.lib dated Sept 7, 2014)
POL_SetupWindow_download ()
{
        # Download a file and place it to the current directory
        # Usage: POL_SetupWindow_download [message] [title] [url] [file]
        # /!\ Scriptors should directly use POL_Download
        # If provided, make sure the filename is absolute to avoid any misinterpretation from server
        [ -n "$4" ] && FILENAME="$4" || FILENAME="$PWD/"
        Result="$(echo "$POL_COOKIE     POL_SetupWindow_download        $$      $(POL_Untab "$1")       $(POL_Untab "$2")       $3      $(POL_Untab "$FILENAME")" | ncns "$POL_HOST" "$POL_PORT")"
        # FIXME: Result should send 'fail' if the download has failed. Maybe we could catch it
}

I cannot see how this code would download anything!

POL_Download does not use wget. Download is managed with Python

ncns command send the download instruction to PlayOnLinux GUI, the result is stored into Result variable.

(Hopefully, this command works, otherwise it would mean that PlayOnLinux has been broken for everyone for more than a year)

When I added a quick&dirty

wget $3

before the long "Result=..." line and a

Result=""

after it, all install scripts I tested just work perfectly! (The latter to avoid false download problem reports resulting in repeated download attempts.)

 
POL_SetupWindow_Init
POL_Download "http://testurl" 

Edited by Tinou

rupert Sunday 1 February 2015 at 21:07
rupert

Hello Quentin,

Thanks for your reply. I placed these lines in my_test.pol and ran the script in POL by Tools -> Run local script (or so).

#!/bin/bash

[ "$PLAYONLINUX" = "" ] && exit 0
source "$PLAYONLINUX/lib/sources"

POL_SetupWindow_Init
POL_Download "http://files.playonlinux.com/resources/setups/Office/top.jpg"

The POL window first reports an error during download and asks for retries, then it says "Bitte warten Sie bis PlayOnLinux heruntergeladen wird: top.jpg", translated back to something like "Please wait while PlayOnLinux gets downloaded". The window stays open forever, so I "cancelled".

The complete console output is

rupert@venus:~/tmp$ playonlinux
Looking for python... 2.7.6 - selected
[main] Message: PlayOnLinux (4.2.5) is starting
[clean_tmp] Message: Cleaning temp directory
[Check_OpenGL] Message: 32bits direct rendering is enabled
[Check_OpenGL] Message: 64bits direct rendering is enabled
[POL_System_CheckFS] Message: Checking filesystem for /home/rupert/.PlayOnLinux/
[main] Message: Filesystem is compatible
[install_plugins] Message: Überprüfe Plugin: Capture...
[install_plugins] Message: Überprüfe Plugin: ScreenCap...
[install_plugins] Message: Überprüfe Plugin: PlayOnLinux Vault...
[POL_SetupWindow_Init] Message: Creating new window for pid 11322
[maj_check] Message: Web version : 1422790717
[maj_check] Message: Current local version : <!DOCTYPE html>
[maj_check] Message: Updating list
[POL_Config_Write] Message: Config write: LAST_TIMESTAMP 1422790717
[POL_SetupWindow_browse] Message: browser answer: /home/rupert/tmp/my_test.pol
[POL_SetupWindow_Close] Message: Closing window for pid 11322
[POL_GPG_auth_script] Message: Checking signature of /home/rupert/tmp/my_test.pol
[POL_GPG_install_key] Message: Importing PlayOnLinux public key
[POL_SetupWindow_Init] Message: Creating new window for pid 11322
[POL_SetupWindow_Close] Message: Closing window for pid 11322
[POL_SetupWindow_Init] Message: Creating new window for pid 11592
[POL_Download] Message: Downloading http://files.playonlinux.com/resources/setups/Office/top.jpg
[POL_SetupWindow_question] Message: question answer: TRUE
[POL_Download] Message: Downloading http://files.playonlinux.com/resources/setups/Office/top.jpg
[POL_Download] Warning: POL_Download - MD5 is missing!
Registered PID: 11112 (Missing)
Registered PID: 11322 (Present)
Registered PID: 11417 (Missing)
Registered PID: 11592 (Missing)

 

I enabled "extended messages" by set -x. The lines are below, just those related to my_test.

+ POL_SetupWindow_Close
+ POL_Debug_Message 'Closing window for pid 9503'
++ Get_CurrentDate
++ date '+%D %T'
+ echo '02/01/15 20:51:24 - [POL_SetupWindow_Close] Message: Closing window for pid 9503'
+ echo -e '[POL_SetupWindow_Close] \x1b[1;34mMessage:\x1b[0m Closing window for pid 9503'
[POL_SetupWindow_Close] Message: Closing window for pid 9503
+ '[' '' = YES -a -n '' -a -n '' -a -z '' ']'
+ echo 'RozngA1MlV8AtWnLsZAf    POL_SetupWindow_Close    9503'
+ ncs 127.0.0.1 30000
+ ncns 127.0.0.1 30000
+ export SETUPWINDOW_INIT=false
+ SETUPWINDOW_INIT=false
+ export NOBUGREPORT=YES
+ NOBUGREPORT=YES
+ export POL_BAD_SIGNATURE=TRUE
+ POL_BAD_SIGNATURE=TRUE
+ bash /home/rupert/tmp/my_test.pol
+++ export POL_SetupWindow_ID=9705
+++ POL_SetupWindow_ID=9705
+++ export POL_HOST=127.0.0.1
+++ POL_HOST=127.0.0.1
++ source /usr/share/playonlinux/lib/website.lib
++ source /usr/share/playonlinux/lib/wine.lib
++ source /usr/share/playonlinux/lib/dosbox.lib
++ '[' '!' 1 ']'
++ '[' '!' '' ']'
++ POL_System_RegisterPID 9705
++ '[' 30000 = 0 ']'
++ echo 'RozngA1MlV8AtWnLsZAf    POL_System_RegisterPID    9705'
++ ncs 127.0.0.1 30000
++ ncns 127.0.0.1 30000
+ POL_SetupWindow_Init
+ POL_Debug_Message 'Creating new window for pid 9705'
++ Get_CurrentDate
++ date '+%D %T'
+ echo '02/01/15 20:51:26 - [POL_SetupWindow_Init] Message: Creating new window for pid 9705'
+ echo -e '[POL_SetupWindow_Init] \x1b[1;34mMessage:\x1b[0m Creating new window for pid 9705'
[POL_SetupWindow_Init] Message: Creating new window for pid 9705
+ local arg1
+ local arg2
+ local arg3
+ '[' '' = --protect ']'
+ '[' '' = '' ']'
+ arg1=
+ '[' '' = '' ']'
+ arg2=
+ '[' '' = '' ']'
+ arg1=None
+ '[' '' = '' ']'
+ arg2=None
+ '[' '' = '' ']'
+ arg3=None
+ echo 'RozngA1MlV8AtWnLsZAf    POL_SetupWindow_Init    9705    None    None    None'
+ ncs 127.0.0.1 30000
+ ncns 127.0.0.1 30000
+ export SETUPWINDOW_INIT=true
+ SETUPWINDOW_INIT=true
+ POL_Download http://files.playonlinux.com/resources/setups/Office/top.jpg
+ POL_Debug_Message 'Downloading http://files.playonlinux.com/resources/setups/Office/top.jpg'
++ Get_CurrentDate
++ date '+%D %T'
+ echo '02/01/15 20:51:27 - [POL_Download] Message: Downloading http://files.playonlinux.com/resources/setups/Office/top.jpg'
+ echo -e '[POL_Download] \x1b[1;34mMessage:\x1b[0m Downloading http://files.playonlinux.com/resources/setups/Office/top.jpg'
[POL_Download] Message: Downloading http://files.playonlinux.com/resources/setups/Office/top.jpg
+ local URL=http://files.playonlinux.com/resources/setups/Office/top.jpg
+ local FICHIER=top.jpg
+ local i
+ '[' '' ']'
+ i=1
+ '[' 1 = 5 ']'
+ '[' http://files.playonlinux.com/resources/setups/Office/top.jpg = '' ']'
++ POL_Download_GetSize http://files.playonlinux.com/resources/setups/Office/top.jpg
++ wget http://files.playonlinux.com/resources/setups/Office/top.jpg --spider --server-response -O -
++ sed -ne '/Content-Length/{s/.*: //;p}'
++ tail -n1
+ neededSpace=4567
+ '[' 4567 ']'
+ let neededSpace=neededSpace/1024
+ POL_System_EnoughSpace 4
++ POL_System_UserRootSpaceLeft
++ df -P -k /home/rupert/.PlayOnLinux/
++ awk '{print $4}'
++ tail -n1
+ '[' 4 -le 232221104 ']'
++ eval_gettext 'Please wait while $APPLICATION_TITLE is downloading:'
++ gettext 'Please wait while $APPLICATION_TITLE is downloading:'
+++ envsubst --variables 'Please wait while $APPLICATION_TITLE is downloading:'
++ export PATH APPLICATION_TITLE
++ envsubst 'Please wait while $APPLICATION_TITLE is downloading:'
+ POL_SetupWindow_download 'Bitte warten Sie bis PlayOnLinux heruntergeladen wird:\ntop.jpg' 'Ein lokales Skript ausführen' http://files.playonlinux.com/resources/setups/Office/top.jpg /home/rupert/top.jpg
+ '[' -n /home/rupert/top.jpg ']'
+ FILENAME=/home/rupert/top.jpg
++ ncns 127.0.0.1 30000
+++ POL_Untab 'Bitte warten Sie bis PlayOnLinux heruntergeladen wird:\ntop.jpg'
+++ echo 'Bitte warten Sie bis PlayOnLinux heruntergeladen wird:\ntop.jpg'
+++ POL_Config_Read FORCE_LEGACY_NETCAT
+++ POL_Untab 'Ein lokales Skript ausführen'
+++ echo 'Ein lokales Skript ausführen'
+++ cat /home/rupert/.PlayOnLinux//playonlinux.cfg
+++ grep '^FORCE_LEGACY_NETCAT='
+++ POL_Untab /home/rupert/top.jpg
+++ cut -d= -f2-
+++ echo /home/rupert/top.jpg
++ echo 'RozngA1MlV8AtWnLsZAf    POL_SetupWindow_download    9705    Bitte warten Sie bis PlayOnLinux heruntergeladen wird:\ntop.jpg    Ein lokales Skript ausführen    http://files.playonlinux.com/resources/setups/Office/top.jpg    /home/rupert/top.jpg'
++ '[' Linux = Mac -o '' = TRUE ']'
++ nc -q -1 127.0.0.1 30000
+ Result=Fail
+ '[' Fail = Fail ']'
++ eval_gettext 'An error happened during download.'
++ gettext 'An error happened during download.'
+++ envsubst --variables 'An error happened during download.'
++ export PATH
++ envsubst 'An error happened during download.'
++ eval_gettext 'Do you want to retry?'
++ gettext 'Do you want to retry?'
+++ envsubst --variables 'Do you want to retry?'
++ export PATH
++ envsubst 'Do you want to retry?'
+ POL_SetupWindow_question 'http://files.playonlinux.com/resources/setups/Office/top.jpg\n\nEin Fehler ist aufgetreten während des Downloads.\n\nMöchten Sie es erneut versuchen?'
++ ncns 127.0.0.1 30000
+++ POL_Untab 'http://files.playonlinux.com/resources/setups/Office/top.jpg\n\nEin Fehler ist aufgetreten während des Downloads.\n\nMöchten Sie es erneut versuchen?'
+++ echo 'http://files.playonlinux.com/resources/setups/Office/top.jpg\n\nEin Fehler ist aufgetreten während des Downloads.\n\nMöchten Sie es erneut versuchen?'
+++ POL_Config_Read FORCE_LEGACY_NETCAT
+++ POL_Untab ''
+++ echo ''
+++ cat /home/rupert/.PlayOnLinux//playonlinux.cfg
++ echo 'RozngA1MlV8AtWnLsZAf    POL_SetupWindow_question    9705    http://files.playonlinux.com/resources/setups/Office/top.jpg\n\nEin Fehler ist aufgetreten während des Downloads.\n\nMöchten Sie es erneut versuchen?    '
+++ grep '^FORCE_LEGACY_NETCAT='
+++ cut -d= -f2-
++ '[' Linux = Mac -o '' = TRUE ']'
++ nc -q -1 127.0.0.1 30000

This is just to the first retry question.

Any clues?

-Rupert

Quentin PÂRIS Tuesday 3 February 2015 at 10:23
Quentin PÂRISAnonymous

I think it is because of the proxy. I suspect PlayOnLinux not to handle it for internal downloads.

Do you have the possibility to try POL_Download with no proxy at all? (For exemple http://localhost thing)

rupert Tuesday 3 February 2015 at 22:32
rupert

Hello Quentin,

Thanks for your support.

There is no web server on localhost but my proxy server named rasppi runs apache. A

wget http://rasppi/index.html

places the file to the working directory.

So I added one line to my_test.pol which now is

#!/bin/bash

[ "$PLAYONLINUX" = "" ] && exit 0
source "$PLAYONLINUX/lib/sources"

POL_SetupWindow_Init
POL_Download "http://rasppi/index.html"
POL_Download "http://files.playonlinux.com/resources/setups/Office/top.jpg"

Running this script, POL first reports an error during the download of http://rasppi/index.html and asks whether I would like to  retry. Clicking "Yes" brings the message "Please wait until top.jpg gets downloaded" -- I do no wait forever but cancelled the operation.

Console output is

rupert@venus:~/tmp$ playonlinux
Looking for python... 2.7.6 - selected
[main] Message: PlayOnLinux (4.2.5) is starting
[clean_tmp] Message: Cleaning temp directory
[Check_OpenGL] Message: 32bits direct rendering is enabled
[Check_OpenGL] Message: 64bits direct rendering is enabled
[POL_System_CheckFS] Message: Checking filesystem for /home/rupert/.PlayOnLinux/
[main] Message: Filesystem is compatible
[install_plugins] Message: Überprüfe Plugin: Capture...
[install_plugins] Message: Überprüfe Plugin: ScreenCap...
[install_plugins] Message: Überprüfe Plugin: PlayOnLinux Vault...
[maj_check] Message: List is up to date
[POL_SetupWindow_Init] Message: Creating new window for pid 6713
[POL_SetupWindow_browse] Message: browser answer: /home/rupert/tmp/my_test.pol
[POL_SetupWindow_Close] Message: Closing window for pid 6713
[POL_GPG_auth_script] Message: Checking signature of /home/rupert/tmp/my_test.pol
[POL_GPG_install_key] Message: Importing PlayOnLinux public key
[POL_SetupWindow_Init] Message: Creating new window for pid 6713
[POL_SetupWindow_Close] Message: Closing window for pid 6713
[POL_SetupWindow_Init] Message: Creating new window for pid 6914
[POL_Download] Message: Downloading http://rasppi/index.html
[POL_SetupWindow_question] Message: question answer: TRUE
[POL_Download] Message: Downloading http://rasppi/index.html
[POL_Download] Warning: POL_Download - MD5 is missing!
[POL_Download] Message: Downloading http://files.playonlinux.com/resources/setups/Office/top.jpg
[POL_Download] Warning: POL_Download - MD5 is missing!
Registered PID: 6456 (Missing)
Registered PID: 6477 (Missing)
Registered PID: 6713 (Present)
Registered PID: 6914 (Missing)
rupert@venus:~/tmp$

- I can't find index.html (where should it go to? To ~/.PlayOnLinux/tmp/ ?)

- I can't find a log file

POL behaves identically whether I enable proxy usage in Settings -> Internet or not. I did not disable proxy using entirely, e.g. by deleting all environment variables like http_proxy or https_proxy or the file ~/.PlayOnLinux/configurations/wgetrc.

Another observation, probably not important in this context but annoying: The POL GUI menu Settings -> Internet does not open the window and tab for the proxy information. It just does nothing. I have to use Settings -> Plugins and then change to the Internet tab.

Back to the original problem: Can you give me some more information how the single bash command in POL_SetupWindow_Download

Result="$(echo "$POL_COOKIE     POL_SetupWindow_download        $$      $(POL_Untab "$1")       $(POL_Untab "$2")       $3      $(POL_Untab "$FILENAME")" | ncns "$POL_HOST" "$POL_PORT")"

would perform a file download? You mentioned earlier this would be done in Python. Is there anything I can trace back or debug?

Best regards

Rupert

rupert Wednesday 4 February 2015 at 19:56
rupert

Additum: The squid proxy I use is not transparent, but it certainly handles http, https and ftp protocol (tested). If POL with its python routines would use other protocols or ports, this might be the reason for my problems.

Can somebody who successfully connects from POL to the internet via a proxy server post some information about his/her configuration? Thank you.

- Rupert

Ronin DUSETTE Wednesday 4 February 2015 at 20:14
Ronin DUSETTE

 

POL behaves identically whether I enable proxy usage in Settings -> Internet or not. I did not disable proxy using entirely, e.g. by deleting all environment variables like http_proxy or https_proxy or the file ~/.PlayOnLinux/configurations/wgetrc.

Just something that I noticed. It does not behave the same with or without the proxy; you didn't fully disable the proxy. ;) That throws a bit of a kink in to the test. 

 

Back to the original problem: Can you give me some more information how the single bash command in POL_SetupWindow_Download

A quick glance at the source code for POL shows how all of the POL_* functions work:

https://github.com/playonlinux/pol-pom-4

 

Also, and I may just be not-in-the-know, but wouldn't simply disabling the proxy (as it breaks POL) for installing POL-based apps clear it up? I am also curious what a local proxy would do, as that would only mask the port numbers, and not your WAN IP (because the raspi is sitting behind your gateway, hence using that WAN IP to go out, but I would guess still obfuscating the traffic somewhat.). Are you bouncing it through another proxy after the Pi? 

 

So I added one line to my_test.pol which now is

1
2
3
4
5
6
7
8
#!/bin/bash
 
"$PLAYONLINUX" "" ] && exit 0
source "$PLAYONLINUX/lib/sources"
 
POL_SetupWindow_Init

Running this script, POL first reports an error during the download of http://rasppi/index.html and asks whether I would like to  retry. Clicking "Yes" brings the message "Please wait until top.jpg gets downloaded" -- I do no wait forever but cancelled the operation.

The main thing that I see is that you did not include an MD5 as a second argument for POL_Download, which is why it is saying that it cannot find an MD5. You should download the file, check it's MD5, and put the MD5 as a second positional argument.

A quick note for this; I believe you would want to use POL_Download_Resource. Just something I noticed. 

 

 If POL with its python routines would use other protocols or ports, this might be the reason for my problems.

Well, it seems to be connecting to the POL servers to download everything else fine (updating the script and component list, etc.), so I am not sure, but I would take care of the MD5 issue first, as that will always through an error without it. 

Edited by RoninDusette


Please:
Post debug logs & full computer specs in first post
No private messages for general help, use the forums
Read the wiki, Report broken scripts
rupert Thursday 5 February 2015 at 22:12
rupert

Hello Ronin,

thanks for your reply.

Disabling proxy use entirely is not an option for me at this moment. From a system perspective, it is working as desired, and only POL is having problems with it.

Well, it seems to be connecting to the POL servers to download everything else fine (updating the script and component list, etc.)

Yes, and I can tell you why: Because the download of "everything else" is done by wget commands in bash scripts:

rupert@venus:/usr/share/playonlinux/lib$ playonlinux 2>&1 | grep wget
+ touch /home/rupert/.PlayOnLinux//configurations/wgetrc
++ wget --prefer-family=IPv4 -q http://repository.playonlinux.com/update_mark.txt -O-
+ wget --prefer-family=IPv4 -q http://repository.playonlinux.com/V4_data/repository/get_packages.php -O-
+ wget --prefer-family=IPv4 -nv -nd -i /home/rupert/.PlayOnLinux//tmp/icons_fetch_list2
+ wget --prefer-family=IPv4 -q http://www.playonlinux.com/wine/gecko/gecko.lst -O-
+ wget --prefer-family=IPv4 -q http://www.playonlinux.com/wine/mono/mono.lst -O-
+ wget --prefer-family=IPv4 -q http://repository.playonlinux.com/V4_data/repository/get_list_v4.php -O-
+ wget --prefer-family=IPv4 -q 'http://repository.playonlinux.com/V4_data/repository/get_md5_list.php?playonlinux=1' -O-
+ wget --prefer-family=IPv4 -q 'http://repository.playonlinux.com/V4_data/repository/get_file.php?version=PlayOnLinux-4.2.5&id=ElsterFormular' -O /home/rupert/.PlayOnLinux//install

("Extended verbosity" by set -x ;-)

I have no idea why wget isn't used in POL_Setupwindow_download() ...

Thanks for the link to POL-POM. I browsed through the files and also searched the local .py files. I tried to follow the function calls in gui_server.py and guiv3.py, but somewhat got lost in class Download(threading.Thread). I also used

grep -i proxy *

It seems that all proxy info from the GUI (Settings -> Internet -- which does not work: I found the reason and opened a bug report ;-) which is processed in options.py and lib/Variables.py just leads to an environment variable

os.environ["http_proxy"] = http_proxy

I could not find any hint how this would be used anywhere else in the POL python code.

The script my_test.pol was based on Quentin's suggestion. Maybe I will test it with MD5 this weekend.

Best regards,

Rupert

Edited by rupert

Ronin DUSETTE Thursday 5 February 2015 at 22:34
Ronin DUSETTE

Ah. I see it now. I looked at it before, and I understood that it was using wget. I went back after I saw your edited post, and I can see that now. 


Please:
Post debug logs & full computer specs in first post
No private messages for general help, use the forums
Read the wiki, Report broken scripts
rupert Sunday 8 February 2015 at 14:27
rupert

Hi Ronin,

I tried around with MD5 and POL_Download_Resource, but this did not change anything: No files get downloaded.

POL_Download_Resource "http://files.playonlinux.com/resources/setups/Office/top.jpg" "77234604eff7f9d2148baec11da13f15" "my_pol"

Directory ~/.PlayOnLinux/ressources/my_pol is created but stays empty.

I suspect the problem in the POL python code. As I mentioned on Friday, the proxy information from the POL GUI simply goes to an environment variable. Do the python function calls responsible for the actual file download look for this variable? Unfortunately I do not know how to debug python.

Edited by rupert