View Issue Details

IDProjectCategoryView StatusLast Update
0001123OpenMPT[All Projects] Generalpublic2018-09-12 06:12
ReportermanxAssigned To 
PrioritynormalSeverityminorReproducibilityhave not tried
Status newResolutionopen 
Product Version 
Target VersionOpenMPT 1.?? (long term goals)Fixed in Version 
Summary0001123: Provide unified multi-arch installer
Description

InnoSetup supports multi-arch installers just fine, and version 5.6.0 will support ARM64.

Bundling all architecture versions into a single installer simplifies users choice and eases switching between x86 and amd64 version by easily having the possibility to have both of them installed at the same time.
Depending on adoption of Windows 10 on ARM, this might be even more important, because Windows 10 on ARM supports at least 3 architectures: x86, ARM, ARM64, and might also support amd64 in the future

A disadvantage is increased download size, however I do not think that would matter much nowadays. Severely bandwidth or traffic limited users could resort to individual architecture-specific portable zip archives which we could continue to provide.

TagsNo tags attached.
Has the bug occurred in previous versions?
Tested code revision (in case you know it)

Relationships

related to 0001011 new Automatic update 
related to 0001120 new Rethink PluginBridge naming 
related to 0000649 new Re-register MPT instantly 

Activities

Saga Musix

Saga Musix

2018-05-27 10:41

administrator   ~0003533

One reason this was not done in the past is that it actually complicates switching between x64 and x86 versions instead of easing it. The application ID in the installer is static, so for a unified installer it would have to be identical between x86 and x64. In return, this would imply that after installing the x64 version, the x86 version would be offered to be installed into the same folder, which we do not support. This could be "solved" by always defaulting to a default installation path based on the bitness when running the installer, but this again complicates the upgrading procedure for non-default path installations, which are still quite popular.

manx

manx

2018-05-27 11:28

administrator   ~0003534

That's not exactly what I had in mind here.
The goal would be to install all supported binaries for the particular system, into the same directory, using the system-native ProgramFiles folder (and ignoring Microsoft's recommendation to install binaries for different architectures into completely separate folder structures, which frankly does not make sense for applications supporting multiple architectures (and is ignored by basically every program that does this already (like 7zip, TortoiseSVN, VisualStudio itself (64bit hosted compilers), LibreOffice))).

What I have in mind is a directory layout as follows:

%ProgramFiles%\OpenMPT\
%ProgramFiles%\OpenMPT\bin\
%ProgramFiles%\OpenMPT\bin\x86\
%ProgramFiles%\OpenMPT\bin\x86\mptrack.exe
%ProgramFiles%\OpenMPT\bin\x86\PluginBridge.exe
%ProgramFiles%\OpenMPT\bin\amd64\
%ProgramFiles%\OpenMPT\bin\amd64\mptrack.exe
%ProgramFiles%\OpenMPT\bin\amd64\PluginBridge.exe
%ProgramFiles%\OpenMPT\bin\arm\
%ProgramFiles%\OpenMPT\bin\arm\mptrack.exe
%ProgramFiles%\OpenMPT\bin\arm\PluginBridge.exe
%ProgramFiles%\OpenMPT\bin\arm64\
%ProgramFiles%\OpenMPT\bin\arm64\mptrack.exe
%ProgramFiles%\OpenMPT\bin\arm64\PluginBridge.exe
%ProgramFiles%\OpenMPT\README
%ProgramFiles%\OpenMPT\Manual.chm
%ProgramFiles%\OpenMPT\Licenses\

and providing Start Menu entries for all variants directly.

Issue History

Date Modified Username Field Change
2018-05-27 06:21 manx New Issue
2018-05-27 06:22 manx Relationship added related to 0001011
2018-05-27 06:22 manx Relationship added related to 0001120
2018-05-27 06:22 manx Description Updated View Revisions
2018-05-27 10:41 Saga Musix Note Added: 0003533
2018-05-27 11:28 manx Note Added: 0003534
2018-09-12 06:12 manx Relationship added related to 0000649