Appendix D: Project Properties and Lists

Project Properties - Build

property

default value

allowed values

description

buildTag

IB: ${installer_builder_version}-${installer_builder_timestamp}

string

Optional text that will be shown as part of the output of --version and that can be used to distinguish builds

outputDirectory

string

Directory where the installers will be placed once they are built

enableLinuxLegacySupport

0

0, 1

If enabled, the generated Linux installer will support old versions of Linux (prior to Red Hat 9), but it may cause errors on recent versions of Linux with GTK UI mode.

enableTimestamp

1

0, 1

Whether or not to enable or disable generating a timestamp for the installer being built, which is shown on the --version command line option. Disabling this option is useful to guarantee that if all the files of your project remain untouched, the generated installer binaries will be identical for every build.

osxPlatforms

osx-x86_64

string

Space separated list of platforms that will be supported when generating OSX bundles. Can be osx-intel, osx-x86_64, osx-arm64, osx-ppc and osx-10.2

osxApplicationBundleIdentifier

com.installbuilder.appinstaller

string

Identifier used to uniquely identify your application

componentsDirectory

${product_shortname}-${product_version}-components

string

Name of the directory that will contain the component files created by the build process

componentsUrl

string

URL to components; will be appended with component file name

componentsDownloadDirectory

${system_temp_directory}

string

Directory to put downloadable components in

allowAddRemoveComponents

0

0, 1

If enabled, allows adding or removing components by re-running installer or running uninstaller to uninstall parts of application

createOsxBundleZip

0

0, 1

Create a zip archive from OS X bundle to ease shipping of OS X installers

createOsxBundleDmg

0

0, 1

Create a DMG from OS X bundle to ease shipping of OS X installers

osxDmgTitle

$\{project.fullName\}

string

OS X DMG Title

Project Properties - CDROM / DVD

property

default value

allowed values

description

cdromDirectory

${product_shortname}-${product_version}-cdrom

string

Name of the directory that will contain the CDROM files created by the build process

cdromPlatforms

string

Space separated list of platforms that will be supported when generating CDROMs. If not specified, launchers will be created for all supported platforms.

cdromDiskSize

700000000

positive integer or zero

Disk CDROM size (bytes)

cdromFirstDiskSize

650000000

positive integer or zero

Size for the first CDROM disk. This is necessary because additional resources such as PDF files may be bundled in that first disk.

compressPackedFiles

0

0, 1

Compress files as they are packed into the installer file or CDROM media

Project Properties - Compression

property

default value

allowed values

description

compressionAlgorithm

zip

zip, lzma, lzma-ultra, lzham, lzham-ultra

Compression algorithm that will be used to pack the files inside the installer. LZMA compression is available only on Linux, Windows and OS X platforms

lzmaUltraBlockSize

80

string

Specifies block size for lzma-ultra and lzham-ultra compression in MB; the value should be between 50-250

parallelDecompressionCores

auto

auto, 1, 2, 3, 4, 5, 6, 7, 8

Limit maximum number of CPU cores to use for LZMA Ultra decompression ; setting to 1 will disable the parallel decompression

enableUpx

0

0, 1

Only available for Windows installers; if disabled, the generated installer will be larger, but compliant with security best practices and allow better icon fine-tuning

Project Properties - Debugger

property

default value

allowed values

description

enableDebugger

0

0, 1

Allows launching debugger application on installation

debuggerPassword

string

Password required to allow using the debugger

Project Properties - Encryption & SSL

property

default value

allowed values

description

enableSslSupport

0

0, 1

Allows connecting over HTTPS protocol

sslCAFile

string

SSL Certificate Authority file to use for verifying remote peers

enableEncryption

0

0, 1

If enabled, installer payload is encrypted and a password needs to be passed before files can be unpacked and/or installed

encryptionPassword

string

If encryption is enabled, password used for encrypting payload of the installer

requirePasswordOnStartup

1

0, 1

If enabled, installer will require entering correct password at installer startup

Project Properties - Images

property

default value

allowed values

description

logoImage

string

48x48 GIF or PNG logo image that will be placed at the top right corner of the installer. If no image is specified, the default image will be used

leftImage

string

163x314 GIF or PNG image that will be placed at the left side of the installer in the Welcome and Installation Finished pages. If no image is specified, the default image will be used

splashImage

string

The GIF or PNG image that will appear when launching the installer

wmImage

string

48x48 GIF or PNG logo image that will be shown in the window manager task bar on Unix systems. If no image is specified, the default logo image will be used

osxApplicationBundleIcon

string

ICNS file to include in the Application Bundle

osxUninstallerApplicationBundleIcon

string

ICNS file to include in the Uninstaller Application Bundle

osxDmgBackgroundImage

string

OS X DMG Background Image

enableRetinaDisplayImages

0

0, 1

Enable Retina Display Images

windowsExecutableIcon

string

ICO file with an specific format -see below- to set the icon for the installer executable file on Windows systems.

windowsUninstallerExecutableIcon

string

ICO file with an specific format -see below- to set the icon for the uninstaller executable file on Windows systems.

Project Properties - Installation

property

default value

allowed values

description

requireInstallationByRootUser

0

0, 1

Whether or not installation will require super user privileges (root on Linux, Administrator user on Windows and OS X). This setting will prevent the installer from running if the user is not root or Administrator on all operating systems except for OS X. In OS X, the regular authentication dialog window will be shown, asking the user for the administrator password so the installer can be run with root privileges

requestedExecutionLevel

requireAdministrator

requireAdministrator, asInvoker, highestAvailable

UAC execution level of the application on Windows

windows64bitMode

0

0, 1

Access to the 64bit registry and environment variables by default

allowComponentSelection

0

0, 1

Whether or not to allow individual component selection during installation

installationType

normal

normal, upgrade

Installation type. Normal is a regular installation process. Upgrade will not create an uninstaller or Start Menu Group.

rebootRequired

0

0, 1

Determines whether or not to ask the user to reboot after installation is completed (Windows-specific option).

deleteOnExit

0

0, 1

Whether or not to delete the installer binary once the installation has completed

ignoreInvalidOptions

0

0, 1

Ignore invalid options from the command line. Useful to share the same option file across installers.

singleInstanceCheck

0

0, 1

Check that only one installer instance is running. This property does not allow variables.

replaceLockedFilesOnReboot

0

0, 1

If set to true, trying to override a locked file on Windows will create a temporary file and mark it to be renamed after rebooting

showDownloadableComponentsProxyPage

1

0, 1

If enabled, installer will show proxy configuration page if one or more downloadable components will be downloaded

Project Properties - Language

property

default value

allowed values

description

defaultLanguage

en

sq, ar, es_AR, de_AT, az, eu, pt_BR, en_GB, bg, fr_CA, ca, hr, cs, da, nl, en, et, fi, fr, de, el, he, hu, id, it, ja, kk, ko, lv, lt, es_MX, no, fa, pl, pt, ro, ru, sr, zh_CN, sk, sl, es, sv, de_CH, th, zh_TW, tr, tk, uk, va, vi, cy, auto

Default language for the installer

allowLanguageSelection

0

0, 1

Allow language selection. If this setting is enabled, the user will be required to specify the language for the installation

allowedLanguages

string

Space-separated list of language codes for allowed installer languages

languageSelectionStyle

default

default, onlyNativeNames, onlyEnglishNames

Configures whether to display languages English name, native name or both in the language selection dialog

Project Properties - Logs

property

default value

allowed values

description

logFileTimeStampFormat

string

The timestamp format used for the default installation log messages

installationLogFile

string

Aternate path to store the installation log file.

uninstallationLogFile

string

Alternate path to store the uninstallation log file.

removeLogFile

0

0, 1

This project property controls automatic deletion of the generated log file after installation. It is set to 0 by default. If set to 1, the installer will remove the log file

removeUninstallationLogFile

0

0, 1

This project property controls automatic deletion of the generated log file after uninstallation. It is set to 0 by default. If set to 1, the installer will remove the uninstallation log file

debugLevel

2

0, 1, 2, 3, 4

Sets the execution debug level. Values over the standard provide extra debug in the installationLog when using <runProgram> actions, and values under it prevent arguments to be logged

Project Properties - Look and Feel

property

default value

allowed values

description

defaultInstallationMode

string

Default Installation Mode. Available installation modes can be found by running the installer from command line using the --help option

allowedInstallationModes

string

Available Installation Mode. Available installation modes can be found by running the installer from command line using the --help option

unattendedModeUI

none

none, minimal, minimalWithDialogs

Select which UI mode to show during unattended installations. Selecting "none" shows nothing, performing a silent installation. Selecting "minimal" will show a simple graphical progressbar. Selecting "minimalWithDialogs" is the same as "minimal", but allowing also minimal interaction via dialogs such as showInfo and showWarning

overrideGtkButtonText

0

0, 1

Wizard buttons in GTK mode include wording provided by system settings. Enabling this setting will force the wording to be the same as in other modes (Next instead of Forward) . This property does not allow variables.

enableGtkDarkThemesSupport

0

0, 1

Try to respect GTK dark themes coloring. This property does not allow variables.

enableLinuxXwindowXftSupport

1

0, 1

If enabled, the generated Linux installer will support Xft for xwindow mode on Linux, but its size will increase by 500kB

style

standard

standard, custom

Whether or not to customize the graphical interface. If set to custom, then each screen in the installer will contain a leftImage that can be customized

width

500

string

Width in pixels of the installer window

height

350

string

Height in pixels of the installer window

Project Properties - Main

property

default value

allowed values

description

fullName

string

The full product name, as it will be displayed in the installer

shortName

string

The short version of product name, which will be used for naming certain directories and files. It can only contain alphanumeric characters. This property does not allow variables.

version

string

Product version number, which will be used for naming certain directories and files.

vendor

Name of your company

string

Vendor name that will be used to generate native packages, register the application with the package database or the Windows Add/Remove/Program menu

installerFilename

${product_shortname}-${product_version}-${platform_name}-installer.${platform_exec_suffix}

string

Name of the installer created by the build process.

saveRelativePaths

0

0, 1

Determines whether or not to convert absolute paths to relative when saving project files. This is important if the same project file is used by multiple developers. The path will be relative to the location of the project file. This property does not allow variables.

Project Properties - Native Packages

property

default value

allowed values

description

nativePackageName

string

Name used for the native package. If not present, the shortName project property will be used instead

release

0

string

Release number that will be used to generate native packages or register the application with the package database

description

One-line description of your software

string

Description that will be used to generate native packages or register the application with the package database

summary

Place here a detailed description of your software

string

Detailed description to be used to generate native packages or register the application with the package database

registerWithPackageDatabase

0

0, 1

Whether or not to register the application with the RPM package database on Linux

rpmSpecFileTemplate

string

Create RPM using an external spec file

debianCustomPackageDirectory

string

Path to a directory containing customized control and helper script for creating the DEB package

Project Properties - OS X Signing

property

default value

allowed values

description

osxSigningPkcs12File

string

PKCS#12 File used to look for the signing keys on OS X

osxSigningPkcs12Password

string

Password used for unlocking the OS X PKCS#12 File

osxSigningEnableHardenedRuntime

1

0, 1

Enable Hardened Runtime

osxSigningTimestampServer

http://timestamp.apple.com/ts01

string

Server used to timstamp OS X signatures

osxSigningIdentity

string

Signing Identity

osxSigningKeychainFile

string

Keychain used to look for the signing identity. If not provided, the standard keychain search path will be used

Project Properties - Readme & License

property

default value

allowed values

description

readmeFile

string

Path to the README file that can be shown to the user after installation is completed

readmeFileEncoding

iso8859-1

iso8859-1, iso8859-2, utf-8, cp1251, cp1252, ascii, macRoman, unicode

Encoding of the README file

licenseFile

string

Path to the license file that the user must accept in order to install the software

htmlLicenseFile

string

Path to the HTML license file that the user must accept in order to install the software (only allowed in qt mode)

licenseFileEncoding

iso8859-1

iso8859-1, iso8859-2, utf-8, cp1251, cp1252, ascii, macRoman, unicode

Encoding of the license file

wrapLicenseFileText

1

0, 1

Wrap license file text displayed to the user

Project Properties - Rollback

property

default value

allowed values

description

enableRollback

1

0, 1

Enable temporary backup of existing files that are overwriten by the current installation. They will be restored if the installation fails

rollbackBackupDirectory

string

Path to a directory where existing files will be stored if enableRollback property is enabled

overwritePolicy

always

always, never, onlyIfNewer

Whether or not to overwrite an existing destination file

Project Properties - Slideshow

property

default value

allowed values

description

slideShowTiming

5

string

Seconds for each slide during the installation

slideShowLoop

1

0, 1

Show slides continuously during the file copying step

showFileUnpackingProgress

1

0, 1

Whether or not to show detailed information about the file unpacking progress during GUI installation

Project Properties - Splash Screen

property

default value

allowed values

description

disableSplashScreen

0

0, 1

Disable the initial splash screen.

splashScreenDelay

0

positive integer or zero

Extra display time of the splash screen

Project Properties - Uninstaller

property

default value

allowed values

description

uninstallerName

uninstall

string

Name of uninstaller, without platform prefix (such as .exe)

uninstallerDirectory

${installdir}

string

Directory where the uninstaller will be created

createUninstaller

1

0, 1

Create uninstaller

askForConfirmationOnUninstall

1

0, 1

Ask for confirmation before starting uninstallation

deleteLockedFilesOnReboot

1

0, 1

During uninstallation certain files may not be removed because they are in use. This property controls whether or not they should be removed the next time Windows reboots

Project Properties - Unix

property

default value

allowed values

description

defaultUnixOwner

string

Default Unix owner for files and directories

defaultUnixGroup

string

Default Unix group for files and directories

defaultUnixDirectoryPermissions

755

string

Default Unix directory permissions in octal form

defaultUnixFilePermissions

644

string

Default Unix file permissions in octal form

Project Properties - Windows ARP Menu

property

default value

allowed values

description

windowsARPRegistryPrefix

$\{project.fullName\} $\{project.version\}

string

Key name in which the application Add/Remove entry information will be stored

createWindowsARPEntry

1

0, 1

Whether or not entries in ARP on Windows should be created

productDisplayName

${product_fullname}

string

Application or Company name that will be shown in Add/Remove Programs on Windows

productDisplayIcon

string

Application Icon (.ico format) that will be shown in Add/Remove Programs on Windows

productUrlInfoAbout

string

Application or Company URL that will be shown in Add/Remove Programs on Windows

productComments

string

Comments for the application that will be shown in Add/Remove Programs on Windows

productContact

string

Contact info for the application that will be shown in Add/Remove Programs on Windows

productUrlHelpLink

string

Application help or support URL that will be shown in Add/Remove Programs on Windows

Project Properties - Windows Registry

property

default value

allowed values

description

installationScope

auto

auto, user, allusers

Whether or not to install Start Menu and Desktop links for All Users or for the current user. If set to auto, it will be installed for All Users if the current user is an administrator or for the current user otherwise.

startMenuGroupName

${product_fullname}

string

Group Name that will appear in the Start Menu Programs folder. If empty, the folder will not be created.

windowsSoftwareRegistryPrefix

$\{project.vendor\}\${product_fullname}

string

Key under HKEY_LOCAL_MACHINE\Software in which application values will be stored

Project Properties - Windows Resources

property

default value

allowed values

description

windowsResourceProductName

${product_fullname}

string

Product Name for resources embedded in Windows executable

windowsResourceProductVersion

${product_version}

string

Product Version for resources embedded in Windows executable

windowsResourceOriginalFilename

setup.exe

string

Original Filename for resources embedded in Windows executable

windowsResourceFileDescription

string

File Description for resources embedded in Windows executable

windowsResourceFileVersion

1.0.0.0

string

File version for resources embedded in Windows executable

windowsResourceCompanyName

$\{project.vendor\}

string

Company Name for resources embedded in Windows executable

windowsResourceInternalName

string

Internal Name for resources embedded in Windows executable

windowsResourceLegalCopyright

Copyright $\{project.vendor\}

string

Legal Copyright for resources embedded in Windows executable

windowsResourceComments

string

Comments for resources embedded in Windows executable

windowsResourceLegalTrademarks

string

Legal Trademarks for resources embedded in Windows executable

Project Properties - Windows Signing

property

default value

allowed values

description

windowsSigningTimestampServer

string

Server used to timstamp Windows signatures

windowsSigningPkcs12File

string

PKCS#12 File used to look for the signing keys on Windows

windowsSigningPkcs12Password

string

Password used for unlocking the Windows PKCS#12 File

windowsSigningHashingAlgorithms

sha1;sha256

string

Windows Signing Hashing Algorithms

windowsSigningCrossCertificate

string

Windows Signing Cross Certificate

signWindowsUninstaller

0

0, 1

Sign Windows Uninstaller

Project Lists

list name

description

allowed childs

functionDefinitionList

Define extra actions

<actionDefinition>

componentList

Depending on the complexity of your software, you may need to split your installation files into several components. The ability to enable and disable components allows your installer to provide as many setup combinations as you need.

<component>, <componentGroup>, <include>

preBuildActionList

Actions executed before generating the installer file

<action>

postBuildActionList

Actions executed after the installer has been built

<action>

preInitializationActionList

Actions executed directly after loading the project information

<action>

initializationActionList

Actions executed when the installer has started

<action>

preInstallationActionList

Actions executed before the first page of the installer is displayed

<action>

readyToInstallActionList

Actions executed right before the file copying step starts

<action>

postInstallationActionList

Actions executed after the installation process has taken place, but before the uninstaller is created and the final page is displayed

<action>

postUninstallerCreationActionList

Actions executed after the uninstaller has been created and before the installation complete page is displayed.

<action>

onExitActionList

Actions executed right before exiting the installation process

<action>

preUninstallationActionList

Actions executed before the uninstallation process takes place

<action>

postUninstallationActionList

Actions executed after the uninstallation process has finished

<action>

customLanguageFileList

Language files for customizing the installer translation

<language>

finalPageActionList

Actions executed after the installation has completed and the final page has been displayed

<action>

installationAbortedActionList

Actions executed if the installation is aborted

<action>

licenseFileList

License files to be accepted by the user during the installation

<licenseFile>

parameterList

Pages that are displayed to the user through the GUI and text interfaces

<parameter>

platformOptionsList

Platform-specific project options

<platformOptions>

preShowHelpActionList

Actions executed before help text for the installer is displayed. Useful to customize the text for specific operating environments.

<action>

readmeFileList

Text files to be displayed after the installation

<readmeFile>

slideShowImageList

Images to be displayed during the installation

<slideShowImage>