0.91 MSI Installer Missing "InstallLocation", Side By Side Installations Allowed

Bug #1418274 reported by Eric
12
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Inkscape
Triaged
Low
Unassigned

Bug Description

Installing the Inkscape MSI (x86 or x64) creates the appropriate registry entry under HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{81922150-317E-4BB0-A31D-FF1C14F707C5}, but does not populate the "InstallLocation" value with any data (The exe installer populates the "InstallLocation" value correctly). This value is useful for deployment scenarios where the location of installed files is necessary. Fetching this location from HKEY_LOCAL_MACHINE\SOFTWARE\Classes\inkscape.svg\DefaultIcon is dubious at best for the reasons described below. The key will be updated with each installed version, and will point to the latest installed version.

Installations are allowed side by side in that if the 32-bit MSI installer (inkscape-0.91.msi) is run on an endpoint with 0.48.5 installed (Inkscape-0.48.5-1-win32.exe) in the default location, "Programs and Features" will show both Inkscape 0.48.5 and Inkscape 0.91 installed. Inkscape version 0.48.5 has been overwritten completely, and without warning, leaving only Inkscape 0.91 executable files in the installation directory. (Reference Bug: https://bugs.launchpad.net/inkscape/+bug/1417070)

Installing Inkscape 0.91 EXE (Inkscape-0.91-1.exe) and then Inkscape 0.91 MSI (inkscape-0.91.msi) behaves similarly in that there are now two entries in "Programs and Features" of "Inkscape 0.91".

Finally, adding in a differentiating mark in the registry that would be outwardly visible as well (altering the "DisplayName" registry value at the aforementioned uninstall key possibly) would be a nice-to-have feature. Displaying "Inkscape 0.91 (64-bit)" if the 64-bit MSI was used for install?

Operating systems impacted:
Windows Vista (x86, x64)
Windows 7 (x86, x64)
Windows 8 (x86, x64)
Windows 8.1 (x86, x64)
Including all their server counterparts

Eric (eric-barber)
description: updated
su_v (suv-lp)
tags: added: packaging win32 win64
removed: 0.91 exe installer msi registry side-by-side
Revision history for this message
theAdib (theadib) wrote :

unfortunately the NSIS based .exe installer and the wix based .msi installer user different methods that might not be compatible.
However mixing msi 32bit and msi 64bit must be avoided.
Regards, Adib.

Changed in inkscape:
assignee: nobody → theAdib (theadib)
importance: Undecided → Low
milestone: none → 0.91.1
status: New → In Progress
Revision history for this message
theAdib (theadib) wrote :

I just
- removed all installed inkscapes.
- install inscape 0.91 msi
- install inscape 0.91 x64 msi <-- this is blocked by windows, because the product is already installed an need to be removed first

So I think this is the expected behaviour. Can you confirm this?
This crosschecking of the installer does not work if you mix . exe and .msi installer in any version.
We should have had a note in the release message ...

Adib.
--

Revision history for this message
rickmastfan67 (rickmastfan67) wrote :

You should be allowed to install both the 32bit and 64bit MSI's for Inkscape if you want to. Look at how Java and Adobe flash installers work.

You need both versions of Java if you run IE and want to be able to use it correctly. Sure, they only offer EXE files (as far as I can tell), but still, they label the names differently once they are installed. The 32bit version of Java is 'Java 7 Update 75', while the 64bit name once installed is 'Java 7 Update 75 (64bit)'. At least that allows you to know where version you want to uninstall if needed to update it.

Same think goes with Flash. They do offer MSI's that install both the 32bit and 64bit flavors of Flash. That's because IE needs both versions to run properly since sometimes it runs in pure 64bit, and other times in 32bit mode depending on what other plugins are running in the background. Meanwhile, Firefox (on Windows) only can take advantage of the 32bit installed version from the MSI that Adobe offers for it.

I wish Ghostscript did the same thing as Java. Would make it 10x easier to know which version is which when I need to uninstall a version to figure out a bug.

So, I think that the name for the 64bit version of Inkscape needs to have the '(64-bit)' part added to it ["Inkscape 0.91 (64-bit)"] so people know which version they have installed in the 'Uninstall or change a program' window. The 64-bit EXE should also name Inkscape 64bit the same way.

Revision history for this message
rickmastfan67 (rickmastfan67) wrote :

That or, you could use 'x64' instead of '64-bit' in the name. Seems more programs that mention the flavor in the 'Uninstall or change a program' window use the 'x64' more often than '64-bit'.

Revision history for this message
Angel Guzman Maeso (shakaran) wrote :

Which is the status of this bug? More than a year "in progress"?

Revision history for this message
jazzynico (jazzynico) wrote :

@theAdib, are you still working on it?

Changed in inkscape:
milestone: 0.91.1 → 0.93
Changed in inkscape:
status: In Progress → Triaged
Patrick Storz (ede123)
Changed in inkscape:
assignee: theAdib (theadib) → nobody
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.