-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathmark5.xml
60 lines (50 loc) · 2.48 KB
/
mark5.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
<!-- Mark5 needs to be installed as one of the first things
so people can get to email quickly after an upgrade
instead of having to wait for lots of non-critical
software to install -->
<package
id='&id;'
name='MARK Communication System 5'
revision='&version;-21&revision;'
reboot='false'
priority='50'> <!-- see above -->
<depends package-id='dotnet46' os='windows 7' />
<variable name='PKG_VERSION' value='&version;' />
<variable name='PKG_SOURCE' value="%SOFTWARE%\Mark5\%PKG_VERSION%\%PROCESSOR_ARCHITECTURE%\Mark5Install.msi" />
<variable name='PKG_DESTINATION' value="%PROGRAMFILES%\Mark5" />
<variable name='PKG_TARGET' value="%ProgramData%\Mark5_%PKG_VERSION%_Mark5Install.msi" />
<check type="uninstall" condition="exists" path="Mark5 &version;" />
<install include='copy' />
<install include='kill' />
<!-- we cannot call zap remove as wpkg complains with remove entries if they don't actually remove -->
<install include='zap' /> <!-- install will hang if we install the same version again -->
<install cmd='%COMSPEC% /c IF NOT EXIST "%PKG_DESTINATION%" MKDIR "%PKG_DESTINATION%" >nul' timeout='30' />
<install cmd='msiexec /quiet /norestart /i "%PKG_TARGET%" /lv* "%TEMP%\wpkg-&id;.log"'
timeout='1200'>
<exit code='3010' reboot='false' />
</install>
<install cmd='xcopy /Y /I "%SOFTWARE%\Mark5\ConnectionInfo.xml" "%PKG_DESTINATION%" > nul' timeout='30'>
<exit code='4' />
</install>
<!--
We never upgrade/downgrade as it is a new package every time.
<upgrade include='install' />
<downgrade include='install' />
-->
<!--
Because we use different profiles for different versions, mark5 will be
uninstalled every time there is an update. Instead of simply don't allow
uninstalling and don't do anything for remove (no kill) as wpkg will
otherwise complain that it is still installed.
<remove include='kill' />
-->
<commands>
<!-- notice the * at the end - it is to force xcopy to treat it as a file -->
<command type='copy' cmd='%comspec% /c if not exist %PKG_TARGET% xcopy /q /d /y %PKG_SOURCE% %PKG_TARGET%* >NUL'></command>
<command type='kill' cmd='%comspec% /c for %f in (mark5 mark5setup) do taskkill /f /im %f.exe >NUL'><exit code='any' /></command>
<command type='zap' cmd='msiexec %MSI% /x "%PKG_TARGET%"' timeout='300'>
<exit code='1605' />
<exit code='3010' reboot='false' />
</command>
</commands>
</package>