Xpra: Ticket #2126: Disambiguate installation package names

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)

Tue, 29 Jan 2019 03:26:23 GMT - Antoine Martin: status, component, description changed

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?

Tue, 29 Jan 2019 03:28:32 GMT - Antoine Martin:

For completeness, 2 more things:

Mon, 04 Mar 2019 05:11:02 GMT - Antoine Martin: attachment set

windows 7 "add and remove software" dialog

Mon, 04 Mar 2019 05:12:49 GMT - Antoine Martin: owner, status changed

Should be fixed in r21952. We now also show the full version details (r21953) There are newer beta builds uploaded. The "add and remove" software dialog should now show something like this: windows 7

We could do the same thing for python2 vs python3 builds, but since python2 is going away soon, we won't.

Note: you can install both 32-bit and 64-bit versions on the same system but some registry keys will point to the last version you install and when you remove that version the features that rely on those keys will not work. ie: ".xpra" file associations and "xpra" urls.

Mon, 04 Mar 2019 12:23:14 GMT - Antoine Martin:

Forgot to upload newer beta builds, now done.

Fri, 08 Mar 2019 14:50:00 GMT - stdedos: status changed; resolution set

Verified everything in the https://github.com/Xpra-org/xpra/issues/2126#comment:3 comment.

I just want to disambiguate something you noted:

but some registry keys will point to the last version you install and when you remove that version the features that rely on those keys will not work.

So if I:

Then the

".xpra" file associations and "xpra" urls.

will cease to exist, right?

Fri, 08 Mar 2019 15:00:44 GMT - Antoine Martin:

.. will cease to exist, right?

Most likely, I've tested the other way: uninstall x64, and it didn't revert to the x86 mapping.

There might be a way to tell innosetup to backup the previous key values. I could only find: Registry section: createvalueifdoesntexist: When this flag is specified, Setup will create the value only if a value of the same name doesn't already exist. This flag has no effect if the data type is none, or if you specify the deletevalue flag Problem is that this does not solve the uninstall issue, none of the "uninstall" options they have would help it seems.

Fri, 08 Mar 2019 15:41:38 GMT - stdedos:

I guess that's okay. Just put the warning next to the "official dl page", that, hey, multiple versions are okay BUT references point only to the latest installation

Tue, 19 Mar 2019 14:40:21 GMT - totaamwin32:

Hopefully this didn't cause #2224.

Sat, 23 Jan 2021 05:42:54 GMT - migration script:

this ticket has been moved to: https://github.com/Xpra-org/xpra/issues/2126