NsisProject
The Insight NSIS plugin generates NSIS script files using Velocity templates, however a number of the template values need to be filled in; some of which are obtained from the Maven project itself, but the rest need to be provided in the configuration below.
This configuration was designed to meet the needs of the Insight installer, the rest of the NSIS features may need expansion of the model in future versions.
<nsisProject> <projectInfo> <productName/> <productVersion/> <publisher/> <webSite/> <readmeFile/> </projectInfo> <installerSettings> <scriptName/> <outFile/> <installDir/> <installDirRegKey/> <showInstallerDetails/> <showUnInstallerDetails/> <uninstallerIcon/> </installerSettings> <muiInstallerSettings> <installerIcon/> <uninstallerIcon/> <useHeaderImage/> <headerImageBmp/> </muiInstallerSettings> <muiPages> <pageHeaderText/> <pageHeaderSubText/> <welcomePageSettings> <title/> <title3Lines/> <text/> </welcomePageSettings> <licensePageSettings> <licensePageSettings> <licenseFileDestination/> <licenseFile/> <textTop/> <textBottom/> <button/> <checkBox/> <checkboxText/> <radioButtons/> <radioButtonsTextAccept/> <radioButtonsTextDecline/> </licensePageSettings> </licensePageSettings> <componentsPageSettings> <textTop/> <textCompList/> <textInstType/> <textDescriptionTitle/> <textDescriptionInfo/> </componentsPageSettings> <directoryPageSettings> <textTop/> <textDestination/> <variable/> <verifyOnLeave/> </directoryPageSettings> <startMenuFolderPageSettings> <textTop/> <textCheckbox/> <defaultFolder/> <noDisable/> <registryRoot/> <registryKey/> <registryValueName/> </startMenuFolderPageSettings> <installationPageSettings> <finishHeaderText/> <finishHeaderSubText/> <abortHeaderText/> <abortHeaderSubText/> </installationPageSettings> <finishPageSettings> <title/> <title3Lines/> <text/> <textLarge/> <button/> <cancelEnabled/> <textReboot/> <textRebootNow/> <textRebootLater/> <rebootLaterDefault/> <run/> <runText/> <runParameters/> <runNotChecked/> <runFunction/> <showReadme/> <showReadmeText/> <showReadmeNotChecked/> <showReadmeFunction/> <link/> <linkLocation/> <linkColor/> <noRebootSupport/> </finishPageSettings> <uninstallConfirmPageSettings> <textTop/> <textLocation/> </uninstallConfirmPageSettings> </muiPages> <sections> <installTypes/> <sections> <section> <name/> <description/> <optional/> <bold/> <hidden/> <inInsTypes/> <fileSets> <fileSet> <directory/> <lineEnding/> <filtered/> <useStrictFiltering/> <useDefaultExcludes/> <outputDirectory/> <includes/> <excludes/> <fileMode/> <directoryMode/> <overWritePolicy/> </fileSet> </fileSets> <files> <file> <source/> <destName/> <lineEnding/> <filtered/> <useStrictFiltering/> <useDefaultExcludes/> <outputDirectory/> <includes/> <excludes/> <fileMode/> <directoryMode/> <overWritePolicy/> </file> </files> <dependencySets> <dependencySet> <outputFileNameMapping/> <unpack/> <unpackOptions> <includes/> <excludes/> <filtered/> </unpackOptions> <scope/> <useProjectArtifact/> <useProjectAttachments/> <useTransitiveDependencies/> <useTransitiveFiltering/> <useStrictFiltering/> <useDefaultExcludes/> <outputDirectory/> <includes/> <excludes/> <fileMode/> <directoryMode/> <overWritePolicy/> </dependencySet> </dependencySets> <shortcuts> <shortcut> <link/> <targetFile/> <parameters/> <icon/> <iconIndexNumber/> <startOptions/> <keyboardShortcut/> <description/> </shortcut> </shortcuts> </section> </sections> </sections> <functions> <useMutexForInstaller/> <multiInstallerInstanceMessage/> <functionDef> <name/> <definition/> </functionDef> <uninstallPrevVer/> <prevVerPresentPrompt/> <prevVerUninstallAbortMsg/> <prevVerUninstallFailMsg/> <uninstallConfirmPrompt/> <functionDef> <name/> <definition/> </functionDef> <uninstallSuccessMsg/> </functions> </nsisProject>
nsisProject
The root Nsis Project. The rest of the information is described below.
Element | Type | Description |
---|---|---|
projectInfo |
ProjectInfo |
Contains the basic information about the project to create the root level information. If not provided, most of this informaiton can be derived from the pom.xml |
installerSettings |
InstallerSettings |
General Installer Settings |
muiInstallerSettings |
MuiInstallerSettings |
NSIS MUI Settings. See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
muiPages |
MuiPages |
The pages to display in the installer |
sections |
InstallerSections |
The sections |
functions |
Functions |
The installer initialization and un-installer initialization functions. |
projectInfo
Contains the basic project information about the project.
Element | Type | Description |
---|---|---|
productName |
String |
The name of the product, if not provided, defaults to the artifactId in the pom.xml. However to maintain Windowz conventions, the first character is converted to the upper case. |
productVersion |
String |
The version of the application. If not provided, defaults to the version in the pom.xml |
publisher |
String |
The publisher of the application, if not provided, defaults to the organization/name from the pom |
webSite |
String |
The product web site. If not provided, defaults to the url from the pom |
readmeFile |
String |
The readme file |
installerSettings
The Windows settings in use by the installer.
Element | Type | Description |
---|---|---|
scriptName |
String |
The name of the installer displayed by Windows. If not provided, this defaults to "${projectInfo.productName} ${projectInfo.productVersion}" |
outFile |
String |
The output file name. If not specified, it will default to "${project.build.finalName}-setup.exe" |
installDir |
String |
The default installation directory in use. Defaults to "$PROGRAMFILES\${projectInfo.publisher}\${projectInfo.productName}" |
installDirRegKey |
String |
The directory the installer will check for installation directory. If not supplied, the default value used is "Software\Microsoft\Windows\CurrentVersion\App Paths\${projectInfo.productName}.exe". For more information see http://nsis.sourceforge.net/Docs/Chapter4.html#4.8.1.22 |
showInstallerDetails |
String |
See http://nsis.sourceforge.net/Docs/Chapter4.html#4.8.1.34. Valid values are hide, show and nevershow. Defaults to hide |
showUnInstallerDetails |
String |
See http://nsis.sourceforge.net/Docs/Chapter4.html#4.8.1.35. Valid values are hide, show and nevershow. Defaults to hide |
uninstallerIcon |
String |
The icon displayed on the Windows Add/Remove programs
Section
Default value is: $INSTDIR\\${project.build.finalName}.exe . |
muiInstallerSettings
The Windows settings in use by the Modern UI installer.
Element | Type | Description |
---|---|---|
installerIcon |
String |
The installer icon. If none is supplied, the default used will be ${NSISDIR}\Contrib\Graphics\Icons\modern-install-colorful.ico If specified, the path should be relative to the project root directory, or should be relative to a NSIS variable. |
uninstallerIcon |
String |
The uninstaller icon. If none is supplied, the default used will be ${NSISDIR}\Contrib\Graphics\Icons\modern-uninstall-colorful.ico If a value is specified, the path should be relative to the project root directory, or should be relative to a NSIS variable. |
useHeaderImage |
boolean |
Flag to indicate if a configured header image is
being used.
Default value is: false . |
headerImageBmp |
String |
The location of the header image being used. It defaults to ${NSISDIR}\Contrib\Graphics\Header\win.bmp The recommended size of the image is 150x57 pixels. This property is read only if @useHeaderImage is set to true. |
muiPages
List of MUI Pages. In the current version, all but the License page can occur only once. The page ordering also may be modifiable in a future release. The presence of a page element creates the page.
Element | Type | Description |
---|---|---|
pageHeaderText |
String |
Text to display on the header of the page. If not present, defaults to ${artifactid} ${version} |
pageHeaderSubText |
String |
Sub text to display on the header of the page. If not present, defaults to ${organization.name} |
welcomePageSettings |
WelcomePageSettings |
To add a newline to any of these texts, use \r\n instead of $\r$\n |
licensePageSettings/licensePageSetting* |
List<LicensePageSettings> |
(Many) The details of the license page |
componentsPageSettings |
ComponentsPageSettings |
To add a newline to any of these texts, use \r\n instead of $\r$\n |
directoryPageSettings |
DirectoryPageSettings |
To add a newline to any of these texts, use \r\n instead of $\r$\n |
startMenuFolderPageSettings |
StartMenuFolderPageSettings |
To add a newline to any of these texts, use \r\n instead of $\r$\n |
installationPageSettings |
InstallationPageSettings |
To add a newline to any of these texts, use \r\n instead of $\r$\n |
finishPageSettings |
FinishPageSettings |
To add a newline to any of these texts, use \r\n instead of $\r$\n |
uninstallConfirmPageSettings |
UninstallConfirmPageSettings |
To add a newline to any of these texts, use \r\n instead of $\r$\n |
welcomePageSettings
To add a newline to any of these texts, use \r\n instead of $\r$\n
Element | Type | Description |
---|---|---|
title |
String |
Title to display on the top of the page |
title3Lines |
boolean |
Extra space for the title area
Default value is: false . |
text |
String |
Text to display on the page |
licensePageSettings
The description of the license page
Element | Type | Description |
---|---|---|
licenseFileDestination |
String |
The end destination of the license file |
licenseFile |
String |
The location of the license file, should be relative to the project root or an absolute path. |
textTop |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
textBottom |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
button |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
checkBox |
boolean |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html
Default value is: false . |
checkboxText |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
radioButtons |
boolean |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html
Default value is: false . |
radioButtonsTextAccept |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
radioButtonsTextDecline |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
componentsPageSettings
Settings for the components page
Element | Type | Description |
---|---|---|
textTop |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
textCompList |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
textInstType |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
textDescriptionTitle |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
textDescriptionInfo |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
directoryPageSettings
The Directory Page Settings
Element | Type | Description |
---|---|---|
textTop |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
textDestination |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
variable |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
verifyOnLeave |
boolean |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html
Default value is: false . |
startMenuFolderPageSettings
The settings for the start menu folder selection page
Element | Type | Description |
---|---|---|
textTop |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
textCheckbox |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
defaultFolder |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
noDisable |
boolean |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html
Default value is: false . |
registryRoot |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
registryKey |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
registryValueName |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
installationPageSettings
Settings for the Installation Page
Element | Type | Description |
---|---|---|
finishHeaderText |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
finishHeaderSubText |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
abortHeaderText |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
abortHeaderSubText |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
finishPageSettings
The settings of the finish page
Element | Type | Description |
---|---|---|
title |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
title3Lines |
boolean |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html
Default value is: false . |
text |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
textLarge |
boolean |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html
Default value is: false . |
button |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
cancelEnabled |
boolean |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html
Default value is: false . |
textReboot |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
textRebootNow |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
textRebootLater |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
rebootLaterDefault |
boolean |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html
Default value is: false . |
run |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html. Variables in this field will be expanded. |
runText |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
runParameters |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
runNotChecked |
boolean |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html
Default value is: false . |
runFunction |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
showReadme |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
showReadmeText |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
showReadmeNotChecked |
boolean |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html
Default value is: false . |
showReadmeFunction |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
link |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
linkLocation |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
linkColor |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
noRebootSupport |
boolean |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html
Default value is: false . |
uninstallConfirmPageSettings
The settings about the un-install page
Element | Type | Description |
---|---|---|
textTop |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
textLocation |
String |
See http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html |
sections
Defines all the sections used in the installer
Element | Type | Description |
---|---|---|
installTypes/installType* |
List<String> |
(Many) The install types. Atleast one is required. |
sections/section* |
List<Section> |
(Many) The sections in the installer |
section
Defines a section
Element | Type | Description |
---|---|---|
name |
String |
The name of the section |
description |
String |
The descriptive name of the section Default value is: . |
optional |
boolean |
Checks if the section is optional Default value is: false . |
bold |
boolean |
Indicates if the section is bold Default value is: false . |
hidden |
boolean |
Indicates if the section is hidden
Default value is: false . |
inInsTypes/inInsType* |
List<String> |
(Many) This command specifies which install types (see InstType) the current section defaults to the enabled state in. For a read only section specify RO, or insert numbers for the corresponding InstType values with an 1 based index. |
fileSets/fileSet* |
List<FileSet> |
(Many) Specifies which groups of files to include in the assembly. A fileSet is specified by providing one or more of <fileSet> subelements. |
files/file* |
List<FileItem> |
(Many) Specifies which single files to include in the assembly. A file is specified by providing one or more of <file> subelements. |
dependencySets/dependencySet* |
List<DependencySet> |
(Many) Specifies which dependencies to include in the assembly. A dependencySet is specified by providing one or more of <dependencySet> subelements. |
shortcuts/shortcut* |
List<ShortCut> |
(Many) The shortcuts that need to be created in this section |
fileSet
A fileSet allows the inclusion of groups of files into the assembly.
Element | Type | Description |
---|---|---|
directory |
String |
Sets the absolute or relative location from the module's directory. For example, "src/main/bin" would select this subdirectory of the project in which this dependency is defined. |
lineEnding |
String |
Sets the line-endings of the files in this fileSet.
Valid values:
|
filtered |
boolean |
Whether to filter symbols in the files as they are
copied, using properties from the build configuration.
(Since 2.2)
Default value is: false . |
useStrictFiltering |
boolean |
When specified as true, any include/exclude patterns
which aren't used to filter an actual artifact during
assembly creation will cause the build to fail with an
error. This is meant to highlight obsolete inclusions or
exclusions, or else signal that the assembly descriptor
is incorrectly configured. (Since 2.2)
Default value is: false . |
useDefaultExcludes |
boolean |
Whether standard exclusion patterns, such as those
matching CVS and Subversion metadata files, should be
used when calculating the files affected by this set.
For backward compatibility, the default value is true.
(Since 2.2)
Default value is: true . |
outputDirectory |
String |
Sets the output directory relative to the root of the root directory of the assembly. For example, "log" will put the specified files in the log directory. |
includes/include* |
List<String> |
(Many) When <include> subelements are present, they define a set of files and directory to include. If none is present, then <includes> represents all valid values. |
excludes/exclude* |
List<String> |
(Many) When <exclude> subelements are present, they define a set of files and directory to exclude. If none is present, then <excludes> represents no exclusions. |
fileMode |
String |
Similar to a UNIX permission, sets the file mode of the files included.
Format: (User)(Group)(Other) where each component is a sum of Read = 4,
Write = 2, and Execute = 1. For example, the default value of 0644
translates to User read-write, Group and Other read-only.
(more on unix-style permissions) Default value is: 0644 . |
directoryMode |
String |
Similar to a UNIX permission, sets the directory mode of the directories
included. Format: (User)(Group)(Other) where each component is a sum of
Read = 4, Write = 2, and Execute = 1. For example, the default value of
0755 translates to User read-write, Group and Other read-only.
(more on unix-style permissions) Default value is: 0755 . |
overWritePolicy |
String |
The SetOverwrite directive policy |
file
A file allows individual file inclusion with the option to change the destination filename not supported by fileSets.
Element | Type | Description |
---|---|---|
source |
String |
Sets the absolute or relative path from the module's directory of the file to be included in the assembly. |
destName |
String |
Sets the destination filename in the outputDirectory. Default is the same name as the source's file. |
lineEnding |
String |
Sets the line-endings of the files in this file.
Valid values are:
|
filtered |
boolean |
Sets whether to determine if the file is filtered.
Default value is: false . |
useStrictFiltering |
boolean |
When specified as true, any include/exclude patterns
which aren't used to filter an actual artifact during
assembly creation will cause the build to fail with an
error. This is meant to highlight obsolete inclusions or
exclusions, or else signal that the assembly descriptor
is incorrectly configured. (Since 2.2)
Default value is: false . |
useDefaultExcludes |
boolean |
Whether standard exclusion patterns, such as those
matching CVS and Subversion metadata files, should be
used when calculating the files affected by this set.
For backward compatibility, the default value is true.
(Since 2.2)
Default value is: true . |
outputDirectory |
String |
Sets the output directory relative to the root of the root directory of the assembly. For example, "log" will put the specified files in the log directory. |
includes/include* |
List<String> |
(Many) When <include> subelements are present, they define a set of files and directory to include. If none is present, then <includes> represents all valid values. |
excludes/exclude* |
List<String> |
(Many) When <exclude> subelements are present, they define a set of files and directory to exclude. If none is present, then <excludes> represents no exclusions. |
fileMode |
String |
Similar to a UNIX permission, sets the file mode of the files included.
Format: (User)(Group)(Other) where each component is a sum of Read = 4,
Write = 2, and Execute = 1. For example, the default value of 0644
translates to User read-write, Group and Other read-only.
(more on unix-style permissions) Default value is: 0644 . |
directoryMode |
String |
Similar to a UNIX permission, sets the directory mode of the directories
included. Format: (User)(Group)(Other) where each component is a sum of
Read = 4, Write = 2, and Execute = 1. For example, the default value of
0755 translates to User read-write, Group and Other read-only.
(more on unix-style permissions) Default value is: 0755 . |
overWritePolicy |
String |
The SetOverwrite directive policy |
dependencySet
A dependencySet allows inclusion and exclusion of project dependencies in the assembly. Though includes and excludes are supported when using dependency sets, note however that they need to be specified as groupId:artifactId combination
Element | Type | Description |
---|---|---|
outputFileNameMapping |
String |
Sets the mapping pattern for all dependencies included
in this assembly. Default is
${artifact.artifactId}-${artifact.version}${dashClassifier?}.${artifact.extension}.
(Since 2.2-beta-2; 2.2-beta-1 uses
${artifactId}-${version}${dashClassifier?}.${extension})
Default value is: ${artifact.artifactId}-${artifact.version}${dashClassifier?}.${artifact.extension} . |
unpack |
boolean |
If set to true, this property will unpack all
dependencies into the specified output directory. When
set to false dependencies will be includes as archives
(jars). Can only unpack jar, zip, tar.gz, and tar.bz
archives. Default value is false.
Default value is: false . |
unpackOptions |
UnpackOptions |
Allows the specification of includes and excludes, along with filtering options, for items unpacked from a dependency artifact. (Since 2.2) |
scope |
String |
Sets the dependency scope for this dependencySet.
Default scope value is "runtime".
Default value is: runtime . |
useProjectArtifact |
boolean |
Determines whether the artifact produced during the current project's
build should be included in this dependency set. Default value is true,
for backward compatibility. (Since 2.2)
Default value is: true . |
useProjectAttachments |
boolean |
Determines whether the attached artifacts produced during the current project's
build should be included in this dependency set. Default value is false. (Since 2.2)
Default value is: false . |
useTransitiveDependencies |
boolean |
Determines whether transitive dependencies will be
included in the processing of the current dependency
set. If true, includes/excludes/useTransitiveFiltering
will apply to transitive dependency artifacts in
addition to the main project dependency artifacts. If
false, useTransitiveFiltering is meaningless, and
includes/excludes only affect the immediate dependencies
of the project. By default, this value is true. (Since
2.2)
Default value is: true . |
useTransitiveFiltering |
boolean |
Determines whether the include/exclude patterns in this
dependency set will be applied to the transitive path of
a given artifact. If true, and the current artifact is a
transitive dependency brought in by another artifact
which matches an inclusion or exclusion pattern, then
the current artifact has the same inclusion/exclusion
logic applied to it as well. By default, this value is
false, in order to preserve backward compatibility with
version 2.1. This means that includes/excludes only
apply directly to the current artifact, and not to the
transitive set of artifacts which brought it in. (Since
2.2)
Default value is: false . |
useStrictFiltering |
boolean |
When specified as true, any include/exclude patterns
which aren't used to filter an actual artifact during
assembly creation will cause the build to fail with an
error. This is meant to highlight obsolete inclusions or
exclusions, or else signal that the assembly descriptor
is incorrectly configured. (Since 2.2)
Default value is: false . |
useDefaultExcludes |
boolean |
Whether standard exclusion patterns, such as those
matching CVS and Subversion metadata files, should be
used when calculating the files affected by this set.
For backward compatibility, the default value is true.
(Since 2.2)
Default value is: true . |
outputDirectory |
String |
Sets the output directory relative to the root of the root directory of the assembly. For example, "log" will put the specified files in the log directory. |
includes/include* |
List<String> |
(Many) When <include> subelements are present, they define a set of files and directory to include. If none is present, then <includes> represents all valid values. |
excludes/exclude* |
List<String> |
(Many) When <exclude> subelements are present, they define a set of files and directory to exclude. If none is present, then <excludes> represents no exclusions. |
fileMode |
String |
Similar to a UNIX permission, sets the file mode of the files included.
Format: (User)(Group)(Other) where each component is a sum of Read = 4,
Write = 2, and Execute = 1. For example, the default value of 0644
translates to User read-write, Group and Other read-only.
(more on unix-style permissions) Default value is: 0644 . |
directoryMode |
String |
Similar to a UNIX permission, sets the directory mode of the directories
included. Format: (User)(Group)(Other) where each component is a sum of
Read = 4, Write = 2, and Execute = 1. For example, the default value of
0755 translates to User read-write, Group and Other read-only.
(more on unix-style permissions) Default value is: 0755 . |
overWritePolicy |
String |
The SetOverwrite directive policy |
unpackOptions
Specifies options for including/excluding/filtering items extracted from an archive. (Since 2.2)
Element | Type | Description |
---|---|---|
includes/include* |
List<String> |
(Many) Set of patterns for matching items to be included from an archive as it is unpacked. (Since 2.2) |
excludes/exclude* |
List<String> |
(Many) Set of patterns for matching items to be excluded from an archive as it is unpacked. (Since 2.2) |
filtered |
boolean |
Whether to filter symbols in the files as they are
unpacked from the archive, using properties from the
build configuration. (Since 2.2)
Default value is: false . |
shortcut
Create Short Cuts
Element | Type | Description |
---|---|---|
link |
String |
The link with the complete path. For start menu items start the link with $SMPROGRAMS\$ICONS_GROUP\Link Name.lnk. For desktop shortcuts start with $DESKTOP. |
targetFile |
String |
The target file that will be opened by the link. This will be variable resolved. For paths relative to the install directory start the path with $INSTDIR |
parameters |
String |
The parameters to pass to the target Default value is: . |
icon |
String |
The icon file Default value is: . |
iconIndexNumber |
String |
The index in a multi icon file Default value is: . |
startOptions |
String |
The startup options. The supported options are:
SW_SHOWNORMAL, SW_SHOWMAXIMIZED, SW_SHOWMINIMIZED
Default value is: . |
keyboardShortcut |
String |
The keyboard shortcut. should be in the form of 'flag|c'
where flag can be a combination (using |) of: ALT,
CONTROL, EXT, or SHIFT. c is the character to use
(a-z, A-Z, 0-9, F1-F24, etc). Note that no spaces are
allowed in this string. A good example is
"ALT|CONTROL|F8"
Default value is: . |
description |
String |
The description of the link Default value is: . |
functions
Contains information about init functions for the installer and the uninstaller.
Element | Type | Description |
---|---|---|
useMutexForInstaller |
boolean |
Indicates if a mutex is to be used to ensure a single
instance of the installer
Default value is: true . |
multiInstallerInstanceMessage |
String |
The message to display when more than one instance of
the installer is running.
Default value is: The installer is already running. . |
installAppRunCheckFn |
FunctionDefinition |
User defined function to check if the application is running when the installer starts. If the value is not specified the check is not performed. |
uninstallPrevVer |
boolean |
If set to true, the installer will try to identify and
uninstall any previous version of the application.
Default value is: true . |
prevVerPresentPrompt |
String |
The prompt to the user when a previous version of the
application is found. This values is used only when
uninstallPreviousVersion is set to true
Default value is: ${PRODUCT_NAME} is already installed. $\\n$\\nClick OK to remove the previous version or Cancel to cancel this upgrade. . |
prevVerUninstallAbortMsg |
String |
Message displayed when the uninstall of the previous
version is aborted by the user.
Default value is: Aborting ${PRODUCT_NAME} ${PRODUCT_VERSION} Install. . |
prevVerUninstallFailMsg |
String |
Message displayed when the uninstall of the previous
version fails
Default value is: ${PRODUCT_NAME} could not be uninstalled properly. Please manually uninstall the application before installing the new version. . |
uninstallConfirmPrompt |
String |
The prompt displayed to the user when the uninstaller
is invoked.
Default value is: Are you sure you want to completely remove $(^Name) and all of its components? . |
uninstallAppRunCheckFn |
FunctionDefinition |
User defined function to check if the application is running when the uninstaller starts. If the value is not specified the check is not performed. |
uninstallSuccessMsg |
String |
Message displayed after successfully uninstalling the
application.
Default value is: $(^Name) was successfully removed from your computer. . |