Setting Default Installation Directories
You can set a list of default installation directories depending on the target installation platform.
When the compiled installer is executed, IzPack chooses the default that matches the platform.
The prefix:Â TargetPanel.dir
is used to specify variables related to setting the default installation directory.
IzPack recognizes this as a built-in variable which can be user-modified.
For example, change the resources to variables:
<resources> <res id="TargetPanel.dir.windows" src="@{izpack.dir.app}/installpath.windows.txt"/> <res id="TargetPanel.dir.unix" src="@{izpack.dir.app}/installpath.unix.txt"/> </resources>
to
<variables> <variable name="TargetPanel.dir.windows" value="C:/MyApp"/> <variable name="TargetPanel.dir.unix" value="/usr/local/myapp"/> </variables>
This uses the following variable search order to determine the default directory to display:
- TargetPanel.dir.<platform symbolic name> e.g. TargetPanel.dir.windows_7
- TargetPanel.dir.<platform name> e.g. TargetPanel.dir.windows
- TargetPanel.dir.<parent platform> e.g. given platform "FEDORA_LINUX" looks for TargetPanel.dir.linux, followed by TargetPanel.dir.unix
- TargetPanel.dir
- DEFAULT_INSTALL_PATH
- SYSTEM_user_dir corresponds to the system property "user.dir"
Available platforms can be found in the class Platforms. The names are the lowercase versions of those defined.
Allowed names include:
- aix
- debian_linux
- fedora_linux
- freebsd
- hp_ux
- linux
- mac
- mac_osx
- mandrake_linux
- mandriva_linux
- os_2
- red_hat_linux
- sunos
- sunos_x86
- sunos_sparc
- suse_linux
- unix
- ubuntu_linux
- windows
- windows_7
- windows_8
- windows_xp
- windows_2003
- windows_vista
The DEFAULT_INSTALL_PATH variable is initialised to <PARENT_DIRECTORY>/$APP_NAME where <PARENT_DIRECTORY> is determined by:
OS | Parent Directory |
---|---|
Windows | ProgramFiles environment variable |
Mac OSX | /Applications |
Others | /usr/local/ if writeable, or System.getProperty("user.home") if not |
Changes from 4.3.6
Changes from earlier versions
Prior to 4.3.6, resources were used rather than variables. Resources were searched for with the following names
- "TargetPanel.dir." + lower case version of System.getProperty("os.name"), with any spaces replace with underscores
- "TargetPanel.dir." + <platform> where platform is one of ("windows", "mac", "unix")
- "TargetPanel.dir"
IZPACK-798Â changed the above to use variables instead of text files, following the same naming convention.