Opened 3 years ago

Last modified 3 years ago

#289 assigned defect

can't use xpra protocol in new (0.12.22) windows build of winswitch

Reported by: dfeldstern Owned by: dfeldstern
Priority: major Milestone:
Component: Global Keywords: win32
Cc:

Description (last modified by Antoine gmail)

After installing the new windows build of winswitch (to test #270 -- which I also confirm is fixed, thanks!), I was getting errors when trying to connect using xpra:

  ImportError: No module named xpra.platform

This was not a clean install, and it seems that winswitch was trying to use the old xpra; so I uninstalled everything and reinstalled, and also installed the newest xpra in a separate directory (as I understand that xpra is no longer bundled with winswitch?).

However, I am unable to get winswitch to work with the new xpra:

In Configuration->Protocols xpra is by default not enabled, and there is no binary (None).
I tried pointing it to my separately installed xpra binary, and enabling it; apply and save -- but the next time I open Configuration->Protocols, xpra is not enabled and the binary is (None) again.
Only after copying all the 'xpra...' files from the xpra directory into the winswitch directory is it finally possible to enable xpra, however when trying to use it again we get the original error message:

  Traceback (most recent call last):
    File "xpra", line 3, in <module>
  ImportError: No moudle named xpra.platform

Thanks!
Dov

Change History (4)

comment:1 Changed 3 years ago by Antoine gmail

Description: modified (diff)
Keywords: win32 added
Owner: set to dfeldstern
Status: newassigned

Which MS Windows version is this? 32-bit or 64-bit?
Where is xpra installed? (exact path)

Can you try to see what value is stored in your %APPDATA%\Window-Switch\client\client.conf for "xpra_command"?

You may want to nuke that file and start winswitch again, it should detect it automatically, you may need to hit save from the GUI to get the detected value to show up in the config file.

comment:2 Changed 3 years ago by dfeldstern

  • Windows 7, 64-bit.
  • xpra is at the default location suggested by the installer: C:\Program Files (x86)\Xpra\Xpra.exe
  • xpra_command originally read C:\Program Files (x86)\WinSwitch\Xpra.exe; After moving the old client.conf aside and restarting WinSwitch, a new client.conf was generated, in which xpra_command is empty (xpra_command=""), though "supports_xpra" is True; in the GUI's Configuration->Protocols xpra is not checked, and the WinSwitch directory appears as the chosen xpra binary. Changing these values via the GUI doesn't seem to update client.conf. Now that I know where to look, I see that the applet log displays this when 'save' is pressed:
    [EE] 2016/03/05 00:09:39.044000 ConfigureAppletWindow.commit_changes()
    [ee] 2016/03/05 00:09:39.044000 Traceback (most recent call last):
    [ee] 2016/03/05 00:09:39.044000   File "winswitch\ui\config_common.pyc", line 630, in commit_changes
    [ee] 2016/03/05 00:09:39.044000   File "winswitch\ui\config_applet.pyc", line 926, in do_apply_changes
    [ee] 2016/03/05 00:09:39.044000 AttributeError: ConfigureAppletWindow instance has no attribute 'tunnel_sink_button'
    
  • After manually editing client.conf to point to the above-mentioned xpra location and restarting WinSwitch, xpra works just fine, and the GUI displays the correct configuration -- though attempts to edit the location via the GUI still fail with the above error.

So, manually editing the client.conf solved the main issue (I can now use xpra with WinSwitch 0.12.22).

However, there still appear to be a number of issues which conspire to make this difficult and which should perhaps be addressed:

  • xpra doesn't seem to be correctly autodetected during setup;
  • the config file is not correctly updated via the GUI (as per the above error);
  • when upgrading from 0.12.21, the old (bundled) xpra remains in the directory, though it no longer works; and the client.conf still points to it;
  • Some or all of these issues could be mitigated by clearly documenting how to upgrade from 0.12.21 to 0.12.22 (something along the lines of: xpra is no longer bundled, and therefore should be installed separately, and then the client.conf updated (at the moment, manually) to point to it).

Thanks!
Dov

comment:3 Changed 3 years ago by Antoine gmail

xpra doesn't seem to be correctly autodetected during setup


I'll have to test on 64-bit, works OK here.

the config file is not correctly updated via the GUI (as per the above error);


Should be fixed in r5400.

when upgrading from 0.12.21, the old (bundled) xpra remains in the directory, though it no longer works; and the client.conf still points to it;


And that's probably why it doesn't detect the new one...
As of r5401, we now delete the old bundled copy.

Some or all of these issues could be mitigated by clearly documenting how to upgrade from 0.12.21 to 0.12.22...


It kinda was: ANNOUNCE: winswitch 0.12.22


I've uploaded a beta build with those changes: http://winswitch.org/beta/windows, does this work better for you?

comment:4 in reply to:  3 Changed 3 years ago by dfeldstern

Replying to totaam:

xpra doesn't seem to be correctly autodetected during setup


I'll have to test on 64-bit, works OK here.

the config file is not correctly updated via the GUI (as per the above error);


Should be fixed in r5400.


I confirm it is now working with the latest beta, thanks!

when upgrading from 0.12.21, the old (bundled) xpra remains in the directory, though it no longer works; and the client.conf still points to it;


And that's probably why it doesn't detect the new one...
As of r5401, we now delete the old bundled copy.


Still not working. It seems that the problem is that r5401 is only deleting the Xpra subdirectory, however some of the files that were installed with the bundled Xpra -- including the Xpra.exe binary which client.conf points to -- were installed directly under C:\Program Files (x86)\WinSwitch\ and not in the Xpra subdirectory, so they are not removed.

Specifically, these are the files that I still see in the WinSwitch directory that seem to be xpra-related:

Xpra.exe
Xpra_cmd.exe
Xpra-Launcher.exe
xpra.conf

a whole bunch of 'xpra.*.pyd' files


Some or all of these issues could be mitigated by clearly documenting how to upgrade from 0.12.21 to 0.12.22...


It kinda was: ANNOUNCE: winswitch 0.12.22


Missed that, sorry... A lot of the static information on the website is still misleading, though. The FAQ, for example:

  • Q: Microsoft Windows: which installer do I need to run? A: This one. You do not need to install Xpra, NX or VNC, they are bundled in.
  • Q:Why did you fork xpra? A: Upstream does not provide the features required. The correct patched version is included in our repository and installer, ...

AFAICT this page is not a wiki, so I can't fix those myself...?


I've uploaded a beta build with those changes: http://winswitch.org/beta/windows, does this work better for you?


Better, but not there yet, as detailed above. Thanks for being so responsive!

Note: See TracTickets for help on using tickets.