xpra icon
Bug tracker and wiki

Opened 4 weeks ago

Last modified 4 weeks ago

#2126 assigned defect

Disambiguate installation package names

Reported by: stdedos Owned by: Antoine Martin
Priority: minor Milestone: 2.5
Component: packaging Version: 2.4.x
Keywords: Cc:

Description (last modified by Antoine Martin)

From ticket:2088?#comment:13

I think xpra/xpra-client is trivial also: Full Xpra vs Client only Xpra.


(Is it "just" minus the server part, or there are other bits and pieces missing?)

Just the server part.

What about py2/py3?
I think I've heard that some things are missing in Python3 ... but in what context? "Missing things" are missing indeed, or they just use Python2 stuff?

Not much missing now: #1568. The server needs a bit more work, the client needs a new session-info graph tab, etc..

In Windows 10, I had full-py2-x32 installed, and then I added full-py3-x64.

From here, arises a difficulty: Only one of the uninstallation "entries" are active.

In my case, I had a more weird error: the x32 bit version could not somehow uninstall itself, because of "lack of Administrator rights". However, it uninstalled itself through the Windows Uninstall. Then, x64 needed to be uninstalled manually through "C:\Program Files\Xpra\unins000.exe"

The possible solutions of this issue IMHO are:

  1. If there is (any) xpra install, force uninstall or abort.
  2. Use different names, entries etc

As (1) has the complexity that xpra versions cannot co-exist (which might be wanted?), I propose fix (2)

Change History (2)

comment:1 Changed 4 weeks ago by Antoine Martin

Component: corepackaging
Description: modified (diff)
Status: newassigned

We already uninstall any existing version before installing a new one.
The fact that it doesn't remove the 32-bit one before installing the 64-bit one means that innosetup is already using a different appid for each - no idea how. (see install appid)

The innosetup script: browser/xpra/trunk/src/win32/xpra.iss looks up Software\Microsoft\Windows\CurrentVersion\Uninstall\Xpra_is1.
Maybe this needs to be 32-bit / 64-bit aware somehow?

comment:2 Changed 4 weeks ago by Antoine Martin

For completeness, 2 more things:

  • how do we want to deal with file associations... overwrite them with the newer package? What about restoring them on uninstall?
  • python2 vs python3: not going to worry about this, python3 will be the only build soon
  • client vs full builds: same, just replace the other build
Note: See TracTickets for help on using tickets.