JAL-3449 added an install4j compiler var
[jalview.git] / utils / install4j / install4j8_template.install4j
1 <?xml version="1.0" encoding="UTF-8"?>
2 <install4j version="8.0.2" transformSequenceNumber="8">
3   <directoryPresets config="." />
4   <application name="Jalview" applicationId="6595-2347-1923-0725" mediaDir="../../build/install4j" lzmaCompression="true" shortName="Jalview" publisher="University of Dundee" publisherWeb="https://www.jalview.org/" version="$$VERSION$$" allPathsRelative="true" macVolumeId="5aac4968c304f65" javaMinVersion="0000000000" javaMaxVersion="9999999999" allowBetaVM="true" jdkMode="jdk" jdkName="JDK 11.0">
5     <searchSequence>
6       <directory location="${compiler:JRE_DIR}" />
7       <registry />
8       <envVar name="JAVA_HOME" />
9     </searchSequence>
10     <variables>
11       <variable name="OSX_KEYSTORE" />
12       <variable name="JSIGN_SH" />
13       <variable name="JRE_DIR" value="jre" description="The folder under the app folder that the JRE will be either copied or unpacked into" />
14       <variable name="INSTALLER_VERSION" value="2.11.1" />
15     </variables>
16     <codeSigning macEnabled="true" macPkcs12File="${compiler:OSX_KEYSTORE}" />
17   </application>
18   <files defaultUninstallMode="2">
19     <filesets>
20       <fileset name="Full file set" id="734" />
21       <fileset name="Mac OS X JRE" id="880" />
22       <fileset name="Windows JRE" id="882" />
23       <fileset name="Jalview application" id="1873" />
24       <fileset name="MacOS Old Jalview Uninstaller" id="2105" />
25     </filesets>
26     <roots>
27       <root id="735" fileset="734" />
28       <root id="881" fileset="880" />
29       <root id="883" fileset="882" />
30       <root id="1874" fileset="1873" />
31       <root id="2106" fileset="2105" />
32     </roots>
33     <mountPoints>
34       <mountPoint id="454" />
35       <mountPoint id="736" root="735" />
36       <mountPoint id="884" root="881" />
37       <mountPoint id="885" root="883" />
38       <mountPoint id="1875" root="1874" />
39       <mountPoint id="2107" root="2106" />
40     </mountPoints>
41     <entries>
42       <dirEntry mountPoint="454" file="../../getdown/files/$$JAVA_VERSION$$" uninstallMode="2" overrideOverwriteMode="true" overrideUninstallMode="true" subDirectory="files" />
43       <dirEntry mountPoint="736" file="../../getdown/website/$$JAVA_VERSION$$" uninstallMode="2" overrideOverwriteMode="true" overrideUninstallMode="true" subDirectory="files" />
44       <dirEntry mountPoint="884" file="$$MACOS_JAVA_VM_DIR$$" fileMode="755" overrideFileMode="true" overrideUninstallMode="true" entryMode="subdir" subDirectory="${compiler:JRE_DIR}" />
45       <dirEntry mountPoint="885" file="$$WINDOWS_JAVA_VM_DIR$$" fileMode="755" overrideFileMode="true" overrideUninstallMode="true" entryMode="subdir" subDirectory="${compiler:JRE_DIR}" />
46       <dirEntry mountPoint="1875" file="../../getdown/website/$$JAVA_VERSION$$/$$GETDOWN_DIST_DIR$$" overwriteMode="1" uninstallMode="2" overrideFileMode="true" overrideOverwriteMode="true" overrideUninstallMode="true" entryMode="subdir" subDirectory="$$GETDOWN_DIST_DIR$$" overrideDirMode="true" />
47       <dirEntry mountPoint="2107" file="Uninstall Old Jalview.app" fileMode="755" overrideFileMode="true" entryMode="subdir" subDirectory="Uninstall Old Jalview.app" overrideDirMode="true" />
48     </entries>
49     <components>
50       <component name="jalview_getdown" id="1031">
51         <include>
52           <entry filesetId="734" />
53         </include>
54       </component>
55       <component name="macos_java_vm" id="1155">
56         <include>
57           <entry filesetId="880" />
58         </include>
59       </component>
60       <component name="windows_java_vm" id="1156">
61         <include>
62           <entry filesetId="882" />
63         </include>
64       </component>
65       <component name="getdown" id="1276">
66         <include>
67           <entry defaultFileset="true" />
68         </include>
69       </component>
70       <component name="jalview" id="1881">
71         <include>
72           <entry filesetId="1873" />
73         </include>
74       </component>
75       <component name="macos_old_jalview_uninstaller" id="2110">
76         <include>
77           <entry filesetId="2105" />
78         </include>
79       </component>
80     </components>
81   </files>
82   <launchers>
83     <launcher name="Offline Jalview Launcher" id="737" menuName="${compiler:sys.shortName}" icnsFile="../../resources/images/jalview_logos.icns" customMacBundleIdentifier="true" macBundleIdentifier="$$MACOS_BUNDLE_ID$$" fileset="734" useCustomMacosExecutableName="true" customMacosExecutableName="${compiler:sys.shortName}">
84       <executable name="${compiler:sys.shortName}" iconSet="true" iconFile="../../resources/images/jalview_logos.ico" executableDir="." redirectStdout="true" executableMode="gui" singleInstance="true" checkConsoleParameter="true">
85         <versionInfo include="true" fileDescription="${compiler:sys.shortName}" legalCopyright="$$COPYRIGHT_MESSAGE$$" internalName="${compiler:sys.shortName}" productName="${compiler:sys.shortName}" />
86       </executable>
87       <splashScreen width="640" height="480" bitmapFile="../../resources/images/jalview_logo_background_fade-640x480.png" textOverlay="true">
88         <text>
89           <statusLine x="85" y="81" text="${compiler:sys.shortName}" fontSize="18" />
90           <versionLine x="85" y="109" text="version ${compiler:sys.version}" />
91         </text>
92       </splashScreen>
93       <java mainClass="com.threerings.getdown.launcher.GetdownApp" arguments=". jalview">
94         <classPath>
95           <archive location="getdown-launcher.jar" />
96           <scanDirectory location="$$GETDOWN_INSTALL_DIR$$" failOnError="false" />
97         </classPath>
98       </java>
99       <iconImageFiles>
100         <file path="../../resources/images/JalviewLogo_Huge.png" />
101       </iconImageFiles>
102     </launcher>
103     <launcher name="Network Jalview Launcher" id="1402" menuName="${compiler:sys.shortName}" icnsFile="../../resources/images/jalview_logos.icns" customMacBundleIdentifier="true" macBundleIdentifier="$$MACOS_BUNDLE_ID$$" useCustomMacosExecutableName="true" customMacosExecutableName="${compiler:sys.shortName}">
104       <executable name="Jalview" iconSet="true" iconFile="../../resources/images/jalview_logos.ico" executableDir="." redirectStdout="true" executableMode="gui" singleInstance="true" checkConsoleParameter="true">
105         <versionInfo include="true" fileDescription="${compiler:sys.shortName}" legalCopyright="$$COPYRIGHT_MESSAGE$$" internalName="${compiler:sys.shortName}" productName="${compiler:sys.shortName}" />
106       </executable>
107       <splashScreen width="640" height="480" bitmapFile="../../resources/images/jalview_logo_background_fade-640x480.png" textOverlay="true">
108         <text>
109           <statusLine x="85" y="81" text="${compiler:sys.shortName}" fontSize="18" />
110           <versionLine x="85" y="109" text="version ${compiler:sys.version}" />
111         </text>
112       </splashScreen>
113       <java mainClass="com.threerings.getdown.launcher.GetdownApp" arguments=". jalview">
114         <classPath>
115           <archive location="getdown-launcher.jar" />
116           <scanDirectory location="$$GETDOWN_INSTALL_DIR$$" failOnError="false" />
117         </classPath>
118       </java>
119       <iconImageFiles>
120         <file path="../../resources/images/JalviewLogo_Huge.png" />
121       </iconImageFiles>
122     </launcher>
123     <launcher name="Jalview package" id="1876" menuName="${compiler:sys.shortName} $$VERSION$$" fileset="1873">
124       <executable name="${compiler:sys.shortName}" iconSet="true" redirectStderr="false" failOnStderrOutput="false" executableMode="gui" changeWorkingDirectory="false" singleInstance="true" />
125       <java mainClass="jalview.bin.Launcher">
126         <classPath>
127           <scanDirectory location="$$GETDOWN_DIST_DIR$$" failOnError="false" />
128         </classPath>
129       </java>
130       <macStaticAssociationActions mode="selected" />
131       <iconImageFiles>
132         <file path="../../resources/images/JalviewLogo_Huge.png" />
133       </iconImageFiles>
134     </launcher>
135   </launchers>
136   <installerGui autoUpdateDescriptorUrl="https://www.jalview.org/install4j/updates.xml">
137     <applications>
138       <application id="installer" beanClass="com.install4j.runtime.beans.applications.InstallerApplication" styleId="35" customIcnsFile="../../resources/images/jalview_logos.icns" customIcoFile="../../resources/images/jalview_logos.ico">
139         <serializedBean>
140           <property name="useCustomIcon" type="boolean" value="true" />
141         </serializedBean>
142         <styleOverrides>
143           <styleOverride name="Customize banner image" enabled="true">
144             <group id="146" beanClass="com.install4j.runtime.beans.groups.VerticalFormComponentGroup" useExternalParametrization="true" externalParametrizationName="Customize banner image" externalParametrizationMode="include">
145               <serializedBean>
146                 <property name="backgroundColor">
147                   <object class="java.awt.Color">
148                     <int>255</int>
149                     <int>255</int>
150                     <int>255</int>
151                     <int>255</int>
152                   </object>
153                 </property>
154                 <property name="borderSides">
155                   <object class="com.install4j.runtime.beans.formcomponents.BorderSides">
156                     <property name="bottom" type="boolean" value="true" />
157                   </object>
158                 </property>
159                 <property name="imageEdgeBackgroundColor">
160                   <object class="java.awt.Color">
161                     <int>255</int>
162                     <int>255</int>
163                     <int>255</int>
164                     <int>255</int>
165                   </object>
166                 </property>
167                 <property name="imageEdgeBorder" type="boolean" value="true" />
168                 <property name="imageFile">
169                   <object class="com.install4j.api.beans.ExternalFile">
170                     <string>../../resources/images/jalview_logo_background_fade-640x480.png</string>
171                   </object>
172                 </property>
173                 <property name="insets">
174                   <object class="java.awt.Insets">
175                     <int>5</int>
176                     <int>10</int>
177                     <int>10</int>
178                     <int>10</int>
179                   </object>
180                 </property>
181               </serializedBean>
182               <externalParametrizationPropertyNames>
183                 <propertyName>imageAnchor</propertyName>
184                 <propertyName>imageEdgeBackgroundColor</propertyName>
185                 <propertyName>imageFile</propertyName>
186               </externalParametrizationPropertyNames>
187             </group>
188           </styleOverride>
189           <styleOverride name="Jalview" enabled="true">
190             <formComponent name="Watermark" id="352" beanClass="com.install4j.runtime.beans.formcomponents.SeparatorComponent" insetTop="0" insetLeft="5" insetBottom="0" useExternalParametrization="true" externalParametrizationName="Jalview" externalParametrizationMode="include">
191               <serializedBean>
192                 <property name="enabledTitleText" type="boolean" value="false" />
193               </serializedBean>
194               <externalParametrizationPropertyNames>
195                 <propertyName>labelText</propertyName>
196               </externalParametrizationPropertyNames>
197             </formComponent>
198           </styleOverride>
199         </styleOverrides>
200         <startup>
201           <screen id="1" beanClass="com.install4j.runtime.beans.screens.StartupScreen" rollbackBarrierExitCode="0">
202             <actions>
203               <action id="22" beanClass="com.install4j.runtime.beans.actions.misc.RequestPrivilegesAction" actionElevationType="none" rollbackBarrierExitCode="0">
204                 <serializedBean>
205                   <property name="obtainIfAdminWin" type="boolean" value="false" />
206                 </serializedBean>
207               </action>
208             </actions>
209           </screen>
210         </startup>
211         <screens>
212           <screen id="2" beanClass="com.install4j.runtime.beans.screens.WelcomeScreen" rollbackBarrierExitCode="0">
213             <styleOverrides>
214               <styleOverride name="Customize banner image" enabled="true">
215                 <group id="145" beanClass="com.install4j.runtime.beans.groups.VerticalFormComponentGroup" useExternalParametrization="true" externalParametrizationName="Customize banner image" externalParametrizationMode="include">
216                   <serializedBean>
217                     <property name="backgroundColor">
218                       <object class="java.awt.Color">
219                         <int>255</int>
220                         <int>255</int>
221                         <int>255</int>
222                         <int>255</int>
223                       </object>
224                     </property>
225                     <property name="borderSides">
226                       <object class="com.install4j.runtime.beans.formcomponents.BorderSides">
227                         <property name="bottom" type="boolean" value="true" />
228                       </object>
229                     </property>
230                     <property name="imageEdgeBackgroundColor">
231                       <object class="java.awt.Color">
232                         <int>25</int>
233                         <int>143</int>
234                         <int>220</int>
235                         <int>255</int>
236                       </object>
237                     </property>
238                     <property name="imageEdgeBorder" type="boolean" value="true" />
239                     <property name="imageFile">
240                       <object class="com.install4j.api.beans.ExternalFile">
241                         <string>../../resources/images/jalview_logo_background_fade-640x480.png</string>
242                       </object>
243                     </property>
244                     <property name="insets">
245                       <object class="java.awt.Insets">
246                         <int>5</int>
247                         <int>10</int>
248                         <int>10</int>
249                         <int>10</int>
250                       </object>
251                     </property>
252                   </serializedBean>
253                   <externalParametrizationPropertyNames>
254                     <propertyName>imageAnchor</propertyName>
255                     <propertyName>imageEdgeBackgroundColor</propertyName>
256                     <propertyName>imageFile</propertyName>
257                   </externalParametrizationPropertyNames>
258                 </group>
259               </styleOverride>
260             </styleOverrides>
261             <actions>
262               <action id="7" beanClass="com.install4j.runtime.beans.actions.misc.LoadResponseFileAction" rollbackBarrierExitCode="0" multiExec="true">
263                 <serializedBean>
264                   <property name="excludedVariables" type="array" elementType="string" length="1">
265                     <element index="0">sys.installationDir</element>
266                   </property>
267                 </serializedBean>
268                 <condition>context.getBooleanVariable("sys.confirmedUpdateInstallation")</condition>
269               </action>
270             </actions>
271             <formComponents>
272               <formComponent id="3" beanClass="com.install4j.runtime.beans.formcomponents.MultilineLabelComponent">
273                 <serializedBean>
274                   <property name="labelText" type="string">${form:welcomeMessage}</property>
275                 </serializedBean>
276                 <visibilityScript>!context.isConsole()</visibilityScript>
277               </formComponent>
278               <formComponent id="4" beanClass="com.install4j.runtime.beans.formcomponents.ConsoleHandlerFormComponent">
279                 <serializedBean>
280                   <property name="consoleScript">
281                     <object class="com.install4j.api.beans.ScriptProperty">
282                       <property name="value" type="string">String message = context.getMessage("ConsoleWelcomeLabel", context.getApplicationName());
283 return console.askOkCancel(message, true);
284 </property>
285                     </object>
286                   </property>
287                 </serializedBean>
288               </formComponent>
289               <formComponent id="5" beanClass="com.install4j.runtime.beans.formcomponents.UpdateAlertComponent" useExternalParametrization="true" externalParametrizationName="Update Alert" externalParametrizationMode="include">
290                 <externalParametrizationPropertyNames>
291                   <propertyName>updateCheck</propertyName>
292                 </externalParametrizationPropertyNames>
293               </formComponent>
294               <formComponent id="6" beanClass="com.install4j.runtime.beans.formcomponents.MultilineLabelComponent" insetTop="20">
295                 <serializedBean>
296                   <property name="labelText" type="string">${i18n:ClickNext}</property>
297                 </serializedBean>
298               </formComponent>
299             </formComponents>
300           </screen>
301           <screen id="8" beanClass="com.install4j.runtime.beans.screens.InstallationDirectoryScreen" rollbackBarrierExitCode="0">
302             <condition>!context.getBooleanVariable("sys.confirmedUpdateInstallation")</condition>
303             <actions>
304               <action id="11" beanClass="com.install4j.runtime.beans.actions.misc.LoadResponseFileAction" rollbackBarrierExitCode="0" multiExec="true">
305                 <serializedBean>
306                   <property name="excludedVariables" type="array" elementType="string" length="1">
307                     <element index="0">sys.installationDir</element>
308                   </property>
309                 </serializedBean>
310                 <condition>context.getVariable("sys.responseFile") == null</condition>
311               </action>
312             </actions>
313             <formComponents>
314               <formComponent id="9" beanClass="com.install4j.runtime.beans.formcomponents.MultilineLabelComponent" insetBottom="25">
315                 <serializedBean>
316                   <property name="labelText" type="string">${i18n:SelectDirLabel(${compiler:sys.fullName})}</property>
317                 </serializedBean>
318               </formComponent>
319               <formComponent id="10" beanClass="com.install4j.runtime.beans.formcomponents.InstallationDirectoryChooserComponent" useExternalParametrization="true" externalParametrizationName="Installation Directory Chooser" externalParametrizationMode="include">
320                 <serializedBean>
321                   <property name="requestFocus" type="boolean" value="true" />
322                 </serializedBean>
323                 <externalParametrizationPropertyNames>
324                   <propertyName>allowSpacesOnUnix</propertyName>
325                   <propertyName>checkFreeSpace</propertyName>
326                   <propertyName>checkWritable</propertyName>
327                   <propertyName>existingDirWarning</propertyName>
328                   <propertyName>manualEntryAllowed</propertyName>
329                   <propertyName>showFreeDiskSpace</propertyName>
330                   <propertyName>showRequiredDiskSpace</propertyName>
331                   <propertyName>standardValidation</propertyName>
332                   <propertyName>suggestAppDir</propertyName>
333                   <propertyName>validateApplicationId</propertyName>
334                   <propertyName>validationScript</propertyName>
335                 </externalParametrizationPropertyNames>
336               </formComponent>
337             </formComponents>
338           </screen>
339           <screen id="12" beanClass="com.install4j.runtime.beans.screens.ComponentsScreen" enabled="false" rollbackBarrierExitCode="0">
340             <formComponents>
341               <formComponent id="13" beanClass="com.install4j.runtime.beans.formcomponents.MultilineLabelComponent">
342                 <serializedBean>
343                   <property name="labelText" type="string">${i18n:SelectComponentsLabel2}</property>
344                 </serializedBean>
345                 <visibilityScript>!context.isConsole()</visibilityScript>
346               </formComponent>
347               <formComponent id="14" beanClass="com.install4j.runtime.beans.formcomponents.ComponentSelectorComponent" useExternalParametrization="true" externalParametrizationName="Installation Components" externalParametrizationMode="include">
348                 <serializedBean>
349                   <property name="fillVertical" type="boolean" value="true" />
350                 </serializedBean>
351                 <externalParametrizationPropertyNames>
352                   <propertyName>selectionChangedScript</propertyName>
353                 </externalParametrizationPropertyNames>
354               </formComponent>
355             </formComponents>
356           </screen>
357           <screen id="1692" beanClass="com.install4j.runtime.beans.screens.FileAssociationsScreen" rollbackBarrierExitCode="0">
358             <formComponents>
359               <formComponent id="1693" beanClass="com.install4j.runtime.beans.formcomponents.MultilineLabelComponent">
360                 <serializedBean>
361                   <property name="labelText" type="string">${i18n:SelectAssociationsLabel}</property>
362                 </serializedBean>
363               </formComponent>
364               <formComponent id="1694" beanClass="com.install4j.runtime.beans.formcomponents.FileAssociationsComponent" useExternalParametrization="true" externalParametrizationName="File Associations" externalParametrizationMode="include">
365                 <serializedBean>
366                   <property name="fillVertical" type="boolean" value="true" />
367                   <property name="selectionButtonPosition" type="enum" class="com.install4j.runtime.beans.formcomponents.VerticalDockingPosition" value="TOP" />
368                   <property name="showSelectionButtons" type="boolean" value="true" />
369                 </serializedBean>
370                 <externalParametrizationPropertyNames>
371                   <propertyName>showSelectionButtons</propertyName>
372                   <propertyName>selectionButtonPosition</propertyName>
373                 </externalParametrizationPropertyNames>
374               </formComponent>
375             </formComponents>
376           </screen>
377           <screen id="15" beanClass="com.install4j.runtime.beans.screens.InstallationScreen" rollbackBarrier="true" rollbackBarrierExitCode="0">
378             <actions>
379               <action id="17" beanClass="com.install4j.runtime.beans.actions.InstallFilesAction" actionElevationType="elevated" rollbackBarrierExitCode="0" failureStrategy="quit" errorMessage="${i18n:FileCorrupted}" />
380               <action id="18" beanClass="com.install4j.runtime.beans.actions.desktop.CreateProgramGroupAction" actionElevationType="elevated" rollbackBarrierExitCode="0">
381                 <serializedBean>
382                   <property name="uninstallerMenuName" type="string">${i18n:UninstallerMenuEntry(${compiler:sys.fullName})}</property>
383                 </serializedBean>
384                 <condition>!context.getBooleanVariable("sys.programGroupDisabled")</condition>
385               </action>
386               <action id="19" beanClass="com.install4j.runtime.beans.actions.desktop.RegisterAddRemoveAction" actionElevationType="elevated" rollbackBarrierExitCode="0">
387                 <serializedBean>
388                   <property name="itemName" type="string">${compiler:sys.fullName} ${compiler:sys.version}</property>
389                 </serializedBean>
390               </action>
391               <action id="124" beanClass="com.install4j.runtime.beans.actions.control.SetVariableAction" enabled="false" rollbackBarrierExitCode="0">
392                 <serializedBean>
393                   <property name="script">
394                     <object class="com.install4j.api.beans.ScriptProperty">
395                       <property name="value" type="string" />
396                     </object>
397                   </property>
398                   <property name="variableName" type="string" />
399                 </serializedBean>
400                 <condition>true</condition>
401               </action>
402               <action id="134" beanClass="com.install4j.runtime.beans.actions.misc.AddVmOptionsAction" enabled="false" actionElevationType="elevated" rollbackBarrierExitCode="0">
403                 <serializedBean>
404                   <property name="launcherId" type="string">121</property>
405                   <property name="vmOptions" type="array" elementType="string" length="0" />
406                 </serializedBean>
407               </action>
408               <group id="2251" beanClass="com.install4j.runtime.beans.groups.ActionGroup">
409                 <beans>
410                   <action id="2253" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
411                     <serializedBean>
412                       <property name="statusMessage" type="string">Creating file associations...</property>
413                       <property name="useDetail" type="boolean" value="true" />
414                       <property name="useStatus" type="boolean" value="true" />
415                     </serializedBean>
416                   </action>
417                   <action id="2254" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
418                     <serializedBean>
419                       <property name="progressChangeType" type="enum" class="com.install4j.runtime.beans.actions.control.ProgressChangeType" value="SET_INDETERMINATE" />
420                     </serializedBean>
421                   </action>
422                   <action name="EXTENSIONS_REPLACED_BY_GRADLE" id="1691" customizedId="EXTENSIONS" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0">
423                     <serializedBean>
424                       <property name="description" type="string">This action, identified by its name "EXTENSIONS_REPLACED_BY_GRADLE", will be replaced by gradle with the contents of file 'file_associations_auto_install4j.xml'.</property>
425                       <property name="extension" type="string">extensions_to_be_replaced_by_gradle</property>
426                     </serializedBean>
427                   </action>
428                 </beans>
429               </group>
430             </actions>
431             <formComponents>
432               <formComponent id="16" beanClass="com.install4j.runtime.beans.formcomponents.ProgressComponent">
433                 <serializedBean>
434                   <property name="initialStatusMessage" type="string">${i18n:WizardPreparing}</property>
435                 </serializedBean>
436               </formComponent>
437             </formComponents>
438           </screen>
439           <screen id="20" beanClass="com.install4j.runtime.beans.screens.FinishedScreen" rollbackBarrierExitCode="0" finishScreen="true">
440             <actions>
441               <action id="2012" beanClass="com.install4j.runtime.beans.actions.desktop.CreateStartMenuEntryAction" actionElevationType="elevated" rollbackBarrierExitCode="0">
442                 <serializedBean>
443                   <property name="allUsers" type="boolean" value="false" />
444                   <property name="entryName" type="string">${compiler:sys.shortName}</property>
445                   <property name="file">
446                     <object class="java.io.File">
447                       <string>${compiler:sys.shortName}</string>
448                     </object>
449                   </property>
450                   <property name="icon">
451                     <object class="com.install4j.api.beans.ExternalFile">
452                       <string>../../resources/images/jalview_logos.ico</string>
453                     </object>
454                   </property>
455                   <property name="unixIconFile">
456                     <object class="com.install4j.api.beans.ExternalFile">
457                       <string>../../resources/images/JalviewLogo_Huge.png</string>
458                     </object>
459                   </property>
460                 </serializedBean>
461                 <condition>!context.getBooleanVariable("sys.programGroupDisabled")</condition>
462               </action>
463               <action id="573" beanClass="com.install4j.runtime.beans.actions.desktop.CreateDesktopLinkAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make desktop link">
464                 <serializedBean>
465                   <property name="allUsers" type="boolean" value="false" />
466                   <property name="description" type="string">${compiler:sys.shortName}</property>
467                   <property name="file">
468                     <object class="java.io.File">
469                       <string>${compiler:sys.shortName}</string>
470                     </object>
471                   </property>
472                   <property name="name" type="string">${compiler:sys.fullName}</property>
473                   <property name="unixIconFile">
474                     <object class="com.install4j.api.beans.ExternalFile">
475                       <string>../../resources/images/JalviewLogo_Huge.png</string>
476                     </object>
477                   </property>
478                   <property name="winIconFile">
479                     <object class="com.install4j.api.beans.ExternalFile">
480                       <string>../../resources/images/jalview_logos.ico</string>
481                     </object>
482                   </property>
483                 </serializedBean>
484                 <condition>context.getBooleanVariable("createDesktopLinkAction")</condition>
485               </action>
486               <action id="576" beanClass="com.install4j.runtime.beans.actions.desktop.AddToDockAction" actionElevationType="none" rollbackBarrierExitCode="0">
487                 <serializedBean>
488                   <property name="executable">
489                     <object class="java.io.File">
490                       <string>Jalview.app</string>
491                     </object>
492                   </property>
493                 </serializedBean>
494                 <condition>context.getBooleanVariable("addToDockAction")</condition>
495               </action>
496             </actions>
497             <formComponents>
498               <formComponent id="21" beanClass="com.install4j.runtime.beans.formcomponents.MultilineLabelComponent" insetBottom="10">
499                 <serializedBean>
500                   <property name="labelText" type="string">${form:finishedMessage}</property>
501                 </serializedBean>
502               </formComponent>
503               <formComponent name="Add a desktop link" id="574" beanClass="com.install4j.runtime.beans.formcomponents.CheckboxComponent">
504                 <serializedBean>
505                   <property name="checkboxText" type="string">${i18n:CreateDesktopIcon}</property>
506                   <property name="initiallySelected" type="boolean" value="true" />
507                   <property name="variableName" type="string">createDesktopLinkAction</property>
508                 </serializedBean>
509               </formComponent>
510               <formComponent name="Add an executable to the dock" id="577" beanClass="com.install4j.runtime.beans.formcomponents.CheckboxComponent">
511                 <serializedBean>
512                   <property name="checkboxText" type="string">${i18n:AddToDock}</property>
513                   <property name="initiallySelected" type="boolean" value="true" />
514                   <property name="variableName" type="string">addToDockAction</property>
515                 </serializedBean>
516                 <visibilityScript>Util.isMacOS()</visibilityScript>
517               </formComponent>
518             </formComponents>
519           </screen>
520         </screens>
521       </application>
522       <application id="uninstaller" beanClass="com.install4j.runtime.beans.applications.UninstallerApplication" styleId="35">
523         <serializedBean>
524           <property name="customMacosExecutableName" type="string">${i18n:UninstallerMenuEntry(${compiler:sys.fullName})}</property>
525           <property name="useCustomMacosExecutableName" type="boolean" value="true" />
526         </serializedBean>
527         <styleOverrides>
528           <styleOverride name="Customize banner image" enabled="true">
529             <group id="147" beanClass="com.install4j.runtime.beans.groups.VerticalFormComponentGroup" useExternalParametrization="true" externalParametrizationName="Customize banner image" externalParametrizationMode="include">
530               <serializedBean>
531                 <property name="backgroundColor">
532                   <object class="java.awt.Color">
533                     <int>255</int>
534                     <int>255</int>
535                     <int>255</int>
536                     <int>255</int>
537                   </object>
538                 </property>
539                 <property name="borderSides">
540                   <object class="com.install4j.runtime.beans.formcomponents.BorderSides">
541                     <property name="bottom" type="boolean" value="true" />
542                   </object>
543                 </property>
544                 <property name="imageEdgeBackgroundColor">
545                   <object class="java.awt.Color">
546                     <int>192</int>
547                     <int>192</int>
548                     <int>192</int>
549                     <int>255</int>
550                   </object>
551                 </property>
552                 <property name="imageEdgeBorder" type="boolean" value="true" />
553                 <property name="imageFile">
554                   <object class="com.install4j.api.beans.ExternalFile">
555                     <string>../../resources/images/jalview_logo_background_fade-640x480.png</string>
556                   </object>
557                 </property>
558                 <property name="insets">
559                   <object class="java.awt.Insets">
560                     <int>5</int>
561                     <int>10</int>
562                     <int>10</int>
563                     <int>10</int>
564                   </object>
565                 </property>
566               </serializedBean>
567               <externalParametrizationPropertyNames>
568                 <propertyName>imageAnchor</propertyName>
569                 <propertyName>imageEdgeBackgroundColor</propertyName>
570                 <propertyName>imageFile</propertyName>
571               </externalParametrizationPropertyNames>
572             </group>
573           </styleOverride>
574         </styleOverrides>
575         <startup>
576           <screen id="23" beanClass="com.install4j.runtime.beans.screens.StartupScreen" rollbackBarrierExitCode="0">
577             <actions>
578               <action id="33" beanClass="com.install4j.runtime.beans.actions.misc.LoadResponseFileAction" rollbackBarrierExitCode="0" />
579               <action id="34" beanClass="com.install4j.runtime.beans.actions.misc.RequireInstallerPrivilegesAction" actionElevationType="none" rollbackBarrierExitCode="0" />
580             </actions>
581           </screen>
582         </startup>
583         <screens>
584           <screen id="24" beanClass="com.install4j.runtime.beans.screens.UninstallWelcomeScreen" rollbackBarrierExitCode="0">
585             <formComponents>
586               <formComponent id="25" beanClass="com.install4j.runtime.beans.formcomponents.MultilineLabelComponent" insetBottom="10">
587                 <serializedBean>
588                   <property name="labelText" type="string">${form:welcomeMessage}</property>
589                 </serializedBean>
590                 <visibilityScript>!context.isConsole()</visibilityScript>
591               </formComponent>
592               <formComponent id="26" beanClass="com.install4j.runtime.beans.formcomponents.ConsoleHandlerFormComponent">
593                 <serializedBean>
594                   <property name="consoleScript">
595                     <object class="com.install4j.api.beans.ScriptProperty">
596                       <property name="value" type="string">String message = context.getMessage("ConfirmUninstall", context.getApplicationName());
597 return console.askYesNo(message, true);
598 </property>
599                     </object>
600                   </property>
601                 </serializedBean>
602               </formComponent>
603             </formComponents>
604           </screen>
605           <screen id="27" beanClass="com.install4j.runtime.beans.screens.UninstallationScreen" rollbackBarrierExitCode="0">
606             <actions>
607               <action id="659" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
608                 <serializedBean>
609                   <property name="progressChangeType" type="enum" class="com.install4j.runtime.beans.actions.control.ProgressChangeType" value="SET_INDETERMINATE" />
610                 </serializedBean>
611               </action>
612               <action id="29" beanClass="com.install4j.runtime.beans.actions.UninstallFilesAction" actionElevationType="elevated" rollbackBarrierExitCode="0" />
613               <action id="660" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" enabled="false" actionElevationType="none" rollbackBarrierExitCode="0">
614                 <serializedBean>
615                   <property name="percentValue" type="int" value="95" />
616                 </serializedBean>
617               </action>
618               <action id="1525" beanClass="com.install4j.runtime.beans.actions.files.DeleteFileAction" actionElevationType="elevated" rollbackBarrierExitCode="0">
619                 <serializedBean>
620                   <property name="files" type="array" class="java.io.File" length="31">
621                     <element index="0">
622                       <object class="java.io.File">
623                         <string>jre</string>
624                       </object>
625                     </element>
626                     <element index="1">
627                       <object class="java.io.File">
628                         <string>jre.jar</string>
629                       </object>
630                     </element>
631                     <element index="2">
632                       <object class="java.io.File">
633                         <string>.install4j</string>
634                       </object>
635                     </element>
636                     <element index="3">
637                       <object class="java.io.File">
638                         <string>$$GETDOWN_DIST_DIR$$</string>
639                       </object>
640                     </element>
641                     <element index="4">
642                       <object class="java.io.File">
643                         <string>$$GETDOWN_ALT_DIR$$</string>
644                       </object>
645                     </element>
646                     <element index="5">
647                       <object class="java.io.File">
648                         <string>$$GETDOWN_RESOURCE_DIR$$</string>
649                       </object>
650                     </element>
651                     <element index="6">
652                       <object class="java.io.File">
653                         <string>getdown-launcher.jar</string>
654                       </object>
655                     </element>
656                     <element index="7">
657                       <object class="java.io.File">
658                         <string>getdown-launcher-old.jar</string>
659                       </object>
660                     </element>
661                     <element index="8">
662                       <object class="java.io.File">
663                         <string>getdown-launcher-new.jar</string>
664                       </object>
665                     </element>
666                     <element index="9">
667                       <object class="java.io.File">
668                         <string>*.jarv</string>
669                       </object>
670                     </element>
671                     <element index="10">
672                       <object class="java.io.File">
673                         <string>gettingdown.lock</string>
674                       </object>
675                     </element>
676                     <element index="11">
677                       <object class="java.io.File">
678                         <string>*.log</string>
679                       </object>
680                     </element>
681                     <element index="12">
682                       <object class="java.io.File">
683                         <string>*.txt</string>
684                       </object>
685                     </element>
686                     <element index="13">
687                       <object class="java.io.File">
688                         <string>*_new</string>
689                       </object>
690                     </element>
691                     <element index="14">
692                       <object class="java.io.File">
693                         <string>digest.txt</string>
694                       </object>
695                     </element>
696                     <element index="15">
697                       <object class="java.io.File">
698                         <string>digest2.txt</string>
699                       </object>
700                     </element>
701                     <element index="16">
702                       <object class="java.io.File">
703                         <string>getdown-launcher.jarv</string>
704                       </object>
705                     </element>
706                     <element index="17">
707                       <object class="java.io.File">
708                         <string>getdown-launcher-new.jarv</string>
709                       </object>
710                     </element>
711                     <element index="18">
712                       <object class="java.io.File">
713                         <string>channel_launch.jvl</string>
714                       </object>
715                     </element>
716                     <element index="19">
717                       <object class="java.io.File">
718                         <string>launcher.log</string>
719                       </object>
720                     </element>
721                     <element index="20">
722                       <object class="java.io.File">
723                         <string>proxy.txt</string>
724                       </object>
725                     </element>
726                     <element index="21">
727                       <object class="java.io.File">
728                         <string>META-INF</string>
729                       </object>
730                     </element>
731                     <element index="22">
732                       <object class="java.io.File">
733                         <string>install/getdown-launcher.jar</string>
734                       </object>
735                     </element>
736                     <element index="23">
737                       <object class="java.io.File">
738                         <string>install/getdown.txt</string>
739                       </object>
740                     </element>
741                     <element index="24">
742                       <object class="java.io.File">
743                         <string>install/build_properties</string>
744                       </object>
745                     </element>
746                     <element index="25">
747                       <object class="java.io.File">
748                         <string>build_properties</string>
749                       </object>
750                     </element>
751                     <element index="26">
752                       <object class="java.io.File">
753                         <string>install</string>
754                       </object>
755                     </element>
756                     <element index="27">
757                       <object class="java.io.File">
758                         <string>dist</string>
759                       </object>
760                     </element>
761                     <element index="28">
762                       <object class="java.io.File">
763                         <string>release</string>
764                       </object>
765                     </element>
766                     <element index="29">
767                       <object class="java.io.File">
768                         <string>alt</string>
769                       </object>
770                     </element>
771                     <element index="30">
772                       <object class="java.io.File">
773                         <string>resource</string>
774                       </object>
775                     </element>
776                   </property>
777                   <property name="recursive" type="boolean" value="true" />
778                 </serializedBean>
779               </action>
780               <action id="1791" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
781                 <serializedBean>
782                   <property name="percentValue" type="int" value="100" />
783                 </serializedBean>
784               </action>
785             </actions>
786             <formComponents>
787               <formComponent id="28" beanClass="com.install4j.runtime.beans.formcomponents.ProgressComponent">
788                 <serializedBean>
789                   <property name="initialStatusMessage" type="string">${i18n:UninstallerPreparing}</property>
790                 </serializedBean>
791               </formComponent>
792             </formComponents>
793           </screen>
794           <screen id="32" beanClass="com.install4j.runtime.beans.screens.UninstallFailureScreen" rollbackBarrierExitCode="0" finishScreen="true" />
795           <screen id="30" beanClass="com.install4j.runtime.beans.screens.UninstallSuccessScreen" styleId="41" rollbackBarrierExitCode="0" finishScreen="true">
796             <formComponents>
797               <formComponent id="31" beanClass="com.install4j.runtime.beans.formcomponents.MultilineLabelComponent" insetBottom="10">
798                 <serializedBean>
799                   <property name="labelText" type="string">${form:successMessage}</property>
800                 </serializedBean>
801               </formComponent>
802             </formComponents>
803           </screen>
804         </screens>
805       </application>
806     </applications>
807     <styles defaultStyleId="35">
808       <style name="Standard" id="35" beanClass="com.install4j.runtime.beans.styles.FormStyle">
809         <formComponents>
810           <formComponent name="Header" id="36" beanClass="com.install4j.runtime.beans.styles.NestedStyleComponent" insetTop="0" insetBottom="0">
811             <serializedBean>
812               <property name="styleId" type="string">48</property>
813             </serializedBean>
814           </formComponent>
815           <group name="Main" id="37" beanClass="com.install4j.runtime.beans.groups.VerticalFormComponentGroup">
816             <serializedBean>
817               <property name="imageEdgeAxisType" type="enum" class="com.install4j.runtime.beans.formcomponents.AxisType" value="HORIZONTAL" />
818               <property name="imageFile">
819                 <object class="com.install4j.api.beans.ExternalFile">
820                   <string>../../resources/images/jalview_logo_background_fade-640x480.png</string>
821                 </object>
822               </property>
823               <property name="imageOverlap" type="boolean" value="true" />
824             </serializedBean>
825             <beans>
826               <formComponent id="38" beanClass="com.install4j.runtime.beans.styles.ContentComponent" insetTop="10" insetLeft="20" insetBottom="10" insetRight="20" />
827               <formComponent name="Watermark" id="39" beanClass="com.install4j.runtime.beans.formcomponents.SeparatorComponent" insetTop="0" insetLeft="5" insetBottom="0" useExternalParametrization="true" externalParametrizationName="Jalview" externalParametrizationMode="include">
828                 <serializedBean>
829                   <property name="enabledTitleText" type="boolean" value="false" />
830                 </serializedBean>
831                 <externalParametrizationPropertyNames>
832                   <propertyName>labelText</propertyName>
833                 </externalParametrizationPropertyNames>
834               </formComponent>
835               <formComponent name="Footer" id="40" beanClass="com.install4j.runtime.beans.styles.NestedStyleComponent" insetTop="0" insetBottom="0">
836                 <serializedBean>
837                   <property name="styleId" type="string">52</property>
838                 </serializedBean>
839               </formComponent>
840             </beans>
841           </group>
842         </formComponents>
843       </style>
844       <style name="Banner" id="41" beanClass="com.install4j.runtime.beans.styles.FormStyle">
845         <formComponents>
846           <group id="42" beanClass="com.install4j.runtime.beans.groups.VerticalFormComponentGroup" useExternalParametrization="true" externalParametrizationName="Customize banner image" externalParametrizationMode="include">
847             <serializedBean>
848               <property name="backgroundColor">
849                 <object class="java.awt.Color">
850                   <int>255</int>
851                   <int>255</int>
852                   <int>255</int>
853                   <int>255</int>
854                 </object>
855               </property>
856               <property name="borderSides">
857                 <object class="com.install4j.runtime.beans.formcomponents.BorderSides">
858                   <property name="bottom" type="boolean" value="true" />
859                 </object>
860               </property>
861               <property name="imageEdgeBackgroundColor">
862                 <object class="java.awt.Color">
863                   <int>25</int>
864                   <int>143</int>
865                   <int>220</int>
866                   <int>255</int>
867                 </object>
868               </property>
869               <property name="imageEdgeBorder" type="boolean" value="true" />
870               <property name="imageFile">
871                 <object class="com.install4j.api.beans.ExternalFile">
872                   <string>${compiler:sys.install4jHome}/resource/styles/wizard.png</string>
873                 </object>
874               </property>
875               <property name="insets">
876                 <object class="java.awt.Insets">
877                   <int>5</int>
878                   <int>10</int>
879                   <int>10</int>
880                   <int>10</int>
881                 </object>
882               </property>
883             </serializedBean>
884             <beans>
885               <formComponent id="43" beanClass="com.install4j.runtime.beans.styles.ScreenTitleComponent" insetTop="0">
886                 <serializedBean>
887                   <property name="labelFontSizePercent" type="int" value="130" />
888                   <property name="labelFontStyle" type="enum" class="com.install4j.runtime.beans.formcomponents.FontStyle" value="BOLD" />
889                   <property name="labelFontType" type="enum" class="com.install4j.runtime.beans.formcomponents.FontType" value="DERIVED" />
890                 </serializedBean>
891               </formComponent>
892               <formComponent id="44" beanClass="com.install4j.runtime.beans.formcomponents.SeparatorComponent" />
893               <formComponent id="45" beanClass="com.install4j.runtime.beans.styles.ContentComponent" insetTop="10" insetBottom="0" />
894             </beans>
895             <externalParametrizationPropertyNames>
896               <propertyName>imageAnchor</propertyName>
897               <propertyName>imageEdgeBackgroundColor</propertyName>
898               <propertyName>imageFile</propertyName>
899             </externalParametrizationPropertyNames>
900           </group>
901           <formComponent id="46" beanClass="com.install4j.runtime.beans.styles.NestedStyleComponent" insetBottom="0">
902             <serializedBean>
903               <property name="styleId" type="string">52</property>
904             </serializedBean>
905           </formComponent>
906         </formComponents>
907       </style>
908       <group name="Style components" id="47" beanClass="com.install4j.runtime.beans.groups.StyleGroup">
909         <beans>
910           <style name="Standard header" id="48" beanClass="com.install4j.runtime.beans.styles.FormStyle">
911             <serializedBean>
912               <property name="fillVertical" type="boolean" value="false" />
913               <property name="standalone" type="boolean" value="false" />
914               <property name="verticalAnchor" type="enum" class="com.install4j.api.beans.Anchor" value="NORTH" />
915             </serializedBean>
916             <formComponents>
917               <group id="49" beanClass="com.install4j.runtime.beans.groups.VerticalFormComponentGroup" useExternalParametrization="true" externalParametrizationName="Customize title bar" externalParametrizationMode="include">
918                 <serializedBean>
919                   <property name="backgroundColor">
920                     <object class="java.awt.Color">
921                       <int>255</int>
922                       <int>255</int>
923                       <int>255</int>
924                       <int>255</int>
925                     </object>
926                   </property>
927                   <property name="borderSides">
928                     <object class="com.install4j.runtime.beans.formcomponents.BorderSides">
929                       <property name="bottom" type="boolean" value="true" />
930                     </object>
931                   </property>
932                   <property name="imageAnchor" type="enum" class="com.install4j.api.beans.Anchor" value="NORTHEAST" />
933                   <property name="imageEdgeBorderWidth" type="int" value="2" />
934                   <property name="imageFile">
935                     <object class="com.install4j.api.beans.ExternalFile">
936                       <string>icon:${installer:sys.installerApplicationMode}_header.png</string>
937                     </object>
938                   </property>
939                   <property name="imageInsets">
940                     <object class="java.awt.Insets">
941                       <int>0</int>
942                       <int>5</int>
943                       <int>1</int>
944                       <int>1</int>
945                     </object>
946                   </property>
947                   <property name="insets">
948                     <object class="java.awt.Insets">
949                       <int>0</int>
950                       <int>20</int>
951                       <int>0</int>
952                       <int>10</int>
953                     </object>
954                   </property>
955                 </serializedBean>
956                 <beans>
957                   <formComponent name="Title" id="50" beanClass="com.install4j.runtime.beans.styles.ScreenTitleComponent">
958                     <serializedBean>
959                       <property name="labelFontStyle" type="enum" class="com.install4j.runtime.beans.formcomponents.FontStyle" value="BOLD" />
960                       <property name="labelFontType" type="enum" class="com.install4j.runtime.beans.formcomponents.FontType" value="DERIVED" />
961                     </serializedBean>
962                   </formComponent>
963                   <formComponent name="Subtitle" id="51" beanClass="com.install4j.runtime.beans.styles.ScreenTitleComponent" insetLeft="8">
964                     <serializedBean>
965                       <property name="titleType" type="enum" class="com.install4j.runtime.beans.styles.TitleType" value="SUB_TITLE" />
966                     </serializedBean>
967                   </formComponent>
968                 </beans>
969                 <externalParametrizationPropertyNames>
970                   <propertyName>backgroundColor</propertyName>
971                   <propertyName>foregroundColor</propertyName>
972                   <propertyName>imageAnchor</propertyName>
973                   <propertyName>imageFile</propertyName>
974                   <propertyName>imageOverlap</propertyName>
975                 </externalParametrizationPropertyNames>
976               </group>
977             </formComponents>
978           </style>
979           <style name="Standard footer" id="52" beanClass="com.install4j.runtime.beans.styles.FormStyle">
980             <serializedBean>
981               <property name="fillVertical" type="boolean" value="false" />
982               <property name="standalone" type="boolean" value="false" />
983               <property name="verticalAnchor" type="enum" class="com.install4j.api.beans.Anchor" value="SOUTH" />
984             </serializedBean>
985             <formComponents>
986               <group id="53" beanClass="com.install4j.runtime.beans.groups.HorizontalFormComponentGroup">
987                 <serializedBean>
988                   <property name="alignFirstLabel" type="boolean" value="false" />
989                   <property name="insets">
990                     <object class="java.awt.Insets">
991                       <int>3</int>
992                       <int>5</int>
993                       <int>8</int>
994                       <int>5</int>
995                     </object>
996                   </property>
997                 </serializedBean>
998                 <beans>
999                   <formComponent id="54" beanClass="com.install4j.runtime.beans.formcomponents.SpringComponent" />
1000                   <formComponent name="Back button" id="55" beanClass="com.install4j.runtime.beans.styles.StandardControlButtonComponent">
1001                     <serializedBean>
1002                       <property name="buttonText" type="string">&lt; ${i18n:ButtonBack}</property>
1003                       <property name="controlButtonType" type="enum" class="com.install4j.api.context.ControlButtonType" value="PREVIOUS" />
1004                     </serializedBean>
1005                   </formComponent>
1006                   <formComponent name="Next button" id="56" beanClass="com.install4j.runtime.beans.styles.StandardControlButtonComponent">
1007                     <serializedBean>
1008                       <property name="buttonText" type="string">${i18n:ButtonNext} &gt;</property>
1009                       <property name="controlButtonType" type="enum" class="com.install4j.api.context.ControlButtonType" value="NEXT" />
1010                     </serializedBean>
1011                   </formComponent>
1012                   <formComponent name="Cancel button" id="57" beanClass="com.install4j.runtime.beans.styles.StandardControlButtonComponent" insetLeft="5">
1013                     <serializedBean>
1014                       <property name="buttonText" type="string">${i18n:ButtonCancel}</property>
1015                       <property name="controlButtonType" type="enum" class="com.install4j.api.context.ControlButtonType" value="CANCEL" />
1016                     </serializedBean>
1017                   </formComponent>
1018                 </beans>
1019               </group>
1020             </formComponents>
1021           </style>
1022         </beans>
1023       </group>
1024     </styles>
1025   </installerGui>
1026   <mediaSets>
1027     <linuxDeb name="Jalview .deb Package" id="153" mediaFileName="jalview-$$VERSION$$" dependencies="openjdk-8-jre" bzip="true" description="Jalview Desktop" maintainerEmail="help@jalview.org">
1028       <excludedComponents>
1029         <component id="1031" />
1030         <component id="1155" />
1031         <component id="1156" />
1032         <component id="1276" />
1033         <component id="2110" />
1034       </excludedComponents>
1035       <excludedLaunchers>
1036         <launcher id="737" />
1037         <launcher id="1402" />
1038       </excludedLaunchers>
1039       <exclude>
1040         <entry defaultFileset="true" />
1041         <entry filesetId="734" />
1042         <entry filesetId="880" />
1043         <entry filesetId="882" />
1044       </exclude>
1045     </linuxDeb>
1046     <linuxRPM name="Jalview RPM Package" id="570" mediaFileName="jalview-$$VERSION$$" dependencies="java-1.8.0-openjdk" arch="noarch">
1047       <excludedComponents>
1048         <component id="1031" />
1049         <component id="1155" />
1050         <component id="1156" />
1051         <component id="1276" />
1052         <component id="2110" />
1053       </excludedComponents>
1054       <excludedLaunchers>
1055         <launcher id="737" />
1056         <launcher id="1402" />
1057       </excludedLaunchers>
1058       <exclude>
1059         <entry defaultFileset="true" />
1060         <entry filesetId="734" />
1061         <entry filesetId="880" />
1062         <entry filesetId="882" />
1063       </exclude>
1064     </linuxRPM>
1065     <windows name="Offline Windows x64 Installer" id="743" mediaFileName="${compiler:sys.shortName}-OFFLINE_${compiler:sys.platform}_${compiler:sys.version}-j$$JAVA_INTEGER_VERSION$$" runPostProcessor="true" postProcessor="${compiler:JSIGN_SH} $EXECUTABLE" customInstallBaseDir="~/AppData/Local">
1066       <excludedComponents>
1067         <component id="1155" />
1068         <component id="1156" />
1069         <component id="1276" />
1070         <component id="1881" />
1071         <component id="2110" />
1072       </excludedComponents>
1073       <excludedLaunchers>
1074         <launcher id="1402" />
1075       </excludedLaunchers>
1076       <exclude>
1077         <entry defaultFileset="true" />
1078         <entry filesetId="880" />
1079         <entry filesetId="882" />
1080         <entry filesetId="1873" />
1081       </exclude>
1082       <jreBundle jreBundleSource="preCreated" includedJre="$$WINDOWS_JAVA_VM_TGZ$$" manualJreEntry="true" />
1083     </windows>
1084     <windows name="Network Windows x64 Installer" id="1862" mediaFileName="${compiler:sys.shortName}-NETWORK_${compiler:sys.platform}_${compiler:sys.version}-j$$JAVA_INTEGER_VERSION$$" runPostProcessor="true" postProcessor="${compiler:JSIGN_SH} $EXECUTABLE" customInstallBaseDir="~/AppData/Local">
1085       <excludedComponents>
1086         <component id="1031" />
1087         <component id="1155" />
1088         <component id="1156" />
1089         <component id="1881" />
1090         <component id="2110" />
1091       </excludedComponents>
1092       <exclude>
1093         <entry filesetId="734" />
1094         <entry filesetId="880" />
1095         <entry filesetId="1873" />
1096       </exclude>
1097       <jreBundle jreBundleSource="preCreated" includedJre="$$WINDOWS_JAVA_VM_TGZ$$" manualJreEntry="true" />
1098     </windows>
1099     <macosArchive name="Offline macOS Disk Image" id="878" mediaFileName="${compiler:sys.shortName}-OFFLINE_${compiler:sys.platform}-app_${compiler:sys.version}-j$$JAVA_INTEGER_VERSION$$" volumeName="${compiler:sys.shortName} Installer" launcherId="737">
1100       <excludedComponents>
1101         <component id="1156" />
1102         <component id="1276" />
1103         <component id="1881" />
1104       </excludedComponents>
1105       <exclude>
1106         <entry defaultFileset="true" />
1107         <entry filesetId="882" />
1108         <entry filesetId="1873" />
1109       </exclude>
1110       <topLevelFiles>
1111         <symlink name="&quot; &quot;" target="/Applications" />
1112         <file name=".background/jalview_dmg_background.png" file="./jalview_dmg_background.png" />
1113         <file name=".DS_Store" file="./DS_Store" />
1114         <symlink name="Jalview.app/Contents/Resources/app/${compiler:JRE_DIR}/Contents/MacOS/libjli.dylib" target="../Home/lib/jli/libjli.dylib" />
1115         <file name="Jalview.app/Contents/Resources/Jalview-File.icns" file="./Jalview-File.icns" />
1116         <file name="Jalview.app/Contents/Resources/Jalview-Launch.icns" file="Jalview-Launch.icns" />
1117         <symlink name="Uninstall Old Jalview (optional).app" target="Jalview.app/Contents/Resources/app/Uninstall Old Jalview.app" />
1118       </topLevelFiles>
1119     </macosArchive>
1120     <macosArchive name="Network macOS Disk Image" id="1274" mediaFileName="${compiler:sys.shortName}-NETWORK_${compiler:sys.platform}-app_${compiler:sys.version}-j$$JAVA_INTEGER_VERSION$$" volumeName="${compiler:sys.shortName} Installer" launcherId="1402">
1121       <excludedComponents>
1122         <component id="1031" />
1123         <component id="1156" />
1124         <component id="1881" />
1125       </excludedComponents>
1126       <exclude>
1127         <entry filesetId="734" />
1128         <entry filesetId="882" />
1129         <entry filesetId="1873" />
1130       </exclude>
1131       <topLevelFiles>
1132         <symlink name="&quot; &quot;" target="/Applications" />
1133         <file name=".background/jalview_dmg_background.png" file="./jalview_dmg_background.png" />
1134         <file name=".DS_Store" file="./DS_Store" />
1135         <symlink name="Jalview.app/Contents/Resources/app/${compiler:JRE_DIR}/Contents/MacOS/libjli.dylib" target="../Home/lib/jli/libjli.dylib" />
1136         <file name="Jalview.app/Contents/Resources/Jalview-Launch.icns" file="Jalview-Launch.icns" />
1137         <file name="Jalview.app/Contents/Resources/Jalview-File.icns" file="Jalview-File.icns" />
1138         <symlink name="Uninstall Old Jalview (optional).app" target="Jalview.app/Contents/Resources/app/Uninstall Old Jalview.app" />
1139       </topLevelFiles>
1140     </macosArchive>
1141     <unixInstaller name="Offline Unix Shell Installer" id="1595" mediaFileName="${compiler:sys.shortName}-OFFLINE_${compiler:sys.platform}_installer_${compiler:sys.version}-j$$JAVA_INTEGER_VERSION$$" customInstallBaseDir="~/opt/">
1142       <excludedComponents>
1143         <component id="1155" />
1144         <component id="1156" />
1145         <component id="1276" />
1146         <component id="1881" />
1147         <component id="2110" />
1148       </excludedComponents>
1149       <excludedLaunchers>
1150         <launcher id="1402" />
1151       </excludedLaunchers>
1152       <exclude>
1153         <entry defaultFileset="true" />
1154         <entry filesetId="880" />
1155         <entry filesetId="882" />
1156         <entry filesetId="1873" />
1157       </exclude>
1158     </unixInstaller>
1159     <unixInstaller name="Network Unix Shell Installer" id="1867" mediaFileName="${compiler:sys.shortName}-NETWORK_${compiler:sys.platform}_installer_${compiler:sys.version}-j$$JAVA_INTEGER_VERSION$$" customInstallBaseDir="~/opt/">
1160       <excludedComponents>
1161         <component id="1031" />
1162         <component id="1155" />
1163         <component id="1156" />
1164         <component id="1881" />
1165         <component id="2110" />
1166       </excludedComponents>
1167       <exclude>
1168         <entry filesetId="734" />
1169         <entry filesetId="880" />
1170         <entry filesetId="882" />
1171         <entry filesetId="1873" />
1172       </exclude>
1173     </unixInstaller>
1174     <unixArchive name="Offline Unix .tar.gz Archive" id="1596" mediaFileName="${compiler:sys.shortName}-OFFLINE_${compiler:sys.platform}_archive_${compiler:sys.version}-j$$JAVA_INTEGER_VERSION$$">
1175       <excludedComponents>
1176         <component id="1155" />
1177         <component id="1156" />
1178         <component id="1276" />
1179         <component id="1881" />
1180         <component id="2110" />
1181       </excludedComponents>
1182       <excludedLaunchers>
1183         <launcher id="1402" />
1184       </excludedLaunchers>
1185       <exclude>
1186         <entry defaultFileset="true" />
1187         <entry filesetId="880" />
1188         <entry filesetId="882" />
1189         <entry filesetId="1873" />
1190       </exclude>
1191     </unixArchive>
1192     <unixArchive name="Network Unix .tar.gz Archive" id="1871" mediaFileName="${compiler:sys.shortName}-NETWORK_${compiler:sys.platform}_archive_${compiler:sys.version}-j$$JAVA_INTEGER_VERSION$$">
1193       <excludedComponents>
1194         <component id="1031" />
1195         <component id="1155" />
1196         <component id="1156" />
1197         <component id="1881" />
1198         <component id="2110" />
1199       </excludedComponents>
1200       <exclude>
1201         <entry filesetId="734" />
1202         <entry filesetId="880" />
1203         <entry filesetId="882" />
1204         <entry filesetId="1873" />
1205       </exclude>
1206     </unixArchive>
1207   </mediaSets>
1208   <buildIds>
1209     <mediaSet refId="153" />
1210     <mediaSet refId="570" />
1211     <mediaSet refId="743" />
1212     <mediaSet refId="878" />
1213     <mediaSet refId="1274" />
1214     <mediaSet refId="1595" />
1215     <mediaSet refId="1596" />
1216     <mediaSet refId="1862" />
1217     <mediaSet refId="1867" />
1218     <mediaSet refId="1871" />
1219   </buildIds>
1220 </install4j>