The UI doesn't show whether or not the version installed or available is 64-bit or 32-bit. It'd help if there were an indicator.
Only 32 bit programs are supported at this time, but yes this needs to be done in the future when 64 bit support happens.
This is really starting to be a problem.
1) The repository needs a way to indicate if a package is 32 bit or 64 bit or both.
2) The application needs to filter out 64 bit packages on 32 bit systems. On 64 bit systems, the application needs to install the 64 bit version if available, otherwise fall back to the 32 bit version
3) The automated package tools need a way to extract 32 and 64 bit version information from installers. Right now it just expects a single 32 bit version to be installed.
I just added an "arch" tag to svn r968 of the XML.txt spec to handle #1. For now this should be reserved only for separate x64 repositories, since versions 1.5 and earlier can't tell the difference between x86 and x64 packages.
It looks like the only way to reliably detect if Windows is x86 or x64 from within 32-bit Python is to parse the output of systeminfo.exe for "System Type: x64-based PC"
Or we can check if %SYSTEMROOT%\SysWOW64 exists, this is probably more efficient.
Just checked in client support for the new tag in svn r969. Now we just need to do 3) to create a test repository.
Test repository is at:
I updated the versions.dtd file to reflect metalink4 formats to pass XML validation.
We may also need to add PROGRAMFILES(X86) to the search.
Nope PROGRAMFILES(X86) is already in there.