Update Installation - The IBM Way
I had to install IBM Tivoli Directory Integrator 6.1.1 Fix Pack 3 to get some functionality (like sorting Assembly Lines). After downloading the zip file, I dutifully opened up the README file and immediately went into WTF!? mode:
To install this fixpack you need to launch update installer using GMI tool, Default location for GMI tools is like this:
For Windows GMI tool is available in C:\Program Files\IBM\Common\ci\gmi\bin Start GMI tool from applicable location, using „gmi” command.
Whereas IBM apparently doesn’t know that „Program Files” only applies to english Windows-Installations, I found the GMI directory under „C:\Programme\IBM\Common\ci\gmi\bin”.
The second error in the installation manual is the command to start the GMI. As you (usually) can’t run Unix Shellscripts in Windows, you would have to start „gmi.cmd” and not „gmi”.
But that are just „minor” annoyances. Because mentioned CMD-file looks like this:
if exist "C:\Program Files\IBM\Common\acsi\setenv.cmd" goto GLOBAL
if exist "%USERPROFILE%\acsi_%USERNAME%\setenv.cmd" goto LOCAL
call "C:\Program Files\IBM\Common\acsi\setenv.cmd"
Yep, this script will NEVER run on a non-english Windows-Installation. What really annoys me with this script is, that the author apparently knew about system variables and how to use them but was IMHO just too lazy to use them consequently. Stuff like this is easy to fix but is – if you are in a hurry – still a major pain in the ass.
Microsoft has this to say about hardcoded installations paths in the MSDN documentation of the Windows Installer:
By default, your application must install into an appropriate subdirectory where the current users program files are stored. This folder is represented by the ProgramFilesFolder property in the Windows Installer-based package. (The ProgramFilesFolder property is a variable that exposes the path to the Program Files folder, and the Windows Installer sets that variable appropriately on all Windows platforms.) On English systems, this folder is often „C:\Program Files”. However, do NOT hardcode that path, as it is not universal.