annotate packaging/trustbridge.nsi @ 832:170b13ea05ee

(Issue10) Force encoding to be latin-1 during installer creation.
author Andre Heinecke <andre.heinecke@intevation.de>
date Thu, 24 Jul 2014 16:30:10 +0200
parents 747a48996c1f
children bd9d07c301fd
rev   line source
588
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
1 ; Copyright (C) 2014 by Bundesamt f�r Sicherheit in der Informationstechnik
406
5ee694fa3da7 Add license header for NSIS scripts
Andre Heinecke <aheinecke@intevation.de>
parents: 381
diff changeset
2 ; Software engineering by Intevation GmbH
5ee694fa3da7 Add license header for NSIS scripts
Andre Heinecke <aheinecke@intevation.de>
parents: 381
diff changeset
3 ;
5ee694fa3da7 Add license header for NSIS scripts
Andre Heinecke <aheinecke@intevation.de>
parents: 381
diff changeset
4 ; This file is Free Software under the GNU GPL (v>=2)
5ee694fa3da7 Add license header for NSIS scripts
Andre Heinecke <aheinecke@intevation.de>
parents: 381
diff changeset
5 ; and comes with ABSOLUTELY NO WARRANTY!
5ee694fa3da7 Add license header for NSIS scripts
Andre Heinecke <aheinecke@intevation.de>
parents: 381
diff changeset
6 ; See LICENSE.txt for details.
5ee694fa3da7 Add license header for NSIS scripts
Andre Heinecke <aheinecke@intevation.de>
parents: 381
diff changeset
7
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
8 ; This script creates the installer for renameme it needs the
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
9 ; following definitions to be set when calling makensis:
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
10 ;
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
11 ; productname: Name of the Software as it will show up under installed
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
12 ; Software
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
13 ; company: The publisher of this software. (Windows needs this)
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
14 ; version_number: The version of the software
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
15 ; setupname: The name for the result created by this
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
16 ; productname_short: Used for the default folder name and such
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
17 ; files_dir: the path to the files
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
18
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
19 ;--------------------------------
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
20 ; Includes
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
21 !define MULTIUSER_EXECUTIONLEVEL Highest
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
22 !define MULTIUSER_MUI
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
23 !define MULTIUSER_INSTALLMODE_COMMANDLINE
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
24 !define MULTIUSER_INSTALLMODE_DEFAULT_REGISTRY_KEY "Software\${productname_short}"
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
25 !define MULTIUSER_INSTALLMODE_DEFAULT_REGISTRY_VALUENAME ""
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
26 !define MULTIUSER_INSTALLMODE_INSTDIR_REGISTRY_KEY "Software\${productname_short}"
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
27 !define MULTIUSER_INSTALLMODE_INSTDIR_REGISTRY_VALUENAME ""
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
28 !define MULTIUSER_INSTALLMODE_INSTDIR "${productname_short}"
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
29
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
30 !include "MultiUser.nsh"
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
31 !include "MUI2.nsh"
588
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
32 !include "FileFunc.nsh"
828
95e14add5c50 (issue11) Check minium supported windows version
Andre Heinecke <andre.heinecke@intevation.de>
parents: 798
diff changeset
33 !include "WinVer.nsh"
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
34
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
35 ;--------------------------------
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
36 ;Version Information (for installer file properties)
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
37
500
4f972b1f4996 Fix packaging information generation
Andre Heinecke <aheinecke@intevation.de>
parents: 494
diff changeset
38 ;VIProductVersion "${version_number}" ;needs integer format: x.x.x.x
4f972b1f4996 Fix packaging information generation
Andre Heinecke <aheinecke@intevation.de>
parents: 494
diff changeset
39 VIProductVersion 1.0.0.0
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
40 VIAddVersionKey "ProductName" "${productname_short}"
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
41 VIAddVersionKey "Comments" "${productname_short} ist Freie Software"
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
42 VIAddVersionKey "CompanyName" "${company}"
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
43 VIAddVersionKey "LegalTrademarks" ""
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
44 VIAddVersionKey "LegalCopyright" "${copyright}"
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
45 VIAddVersionKey "FileDescription" "${description}"
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
46 VIAddVersionKey "FileVersion" "${version_number}"
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
47
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
48 Var StartMenuFolder
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
49 ;--------------------------------
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
50 ; General
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
51
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
52 ; Define Name, File and Installdir of Installer
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
53 Name "${productname}"
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
54 OutFile "${setupname}"
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
55 InstallDir "$PROGRAMFILES\${productname_short}"
381
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
56 BrandingText "${company} - ${productname}"
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
57
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
58 ;--------------------------------
381
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
59 ; Interface Settings
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
60
381
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
61 ; MUI Images / Icons
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
62 !define MUI_HEADERIMAGE
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
63 !define MUI_HEADERIMAGE_BITMAP "resources\header-install.bmp"
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
64 !define MUI_HEADERIMAGE_UNBITMAP "resources\header-uninstall.bmp"
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
65 !define MUI_WELCOMEFINISHPAGE_BITMAP "resources\wizard-install.bmp"
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
66 !define MUI_UNWELCOMEFINISHPAGE_BITMAP "resources\wizard-uninstall.bmp"
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
67 !define MUI_ICON "resources\install.ico"
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
68 !define MUI_UNICON "resources\uninstall.ico"
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
69
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
70 ; MUI welcome page text
798
8fad91c654e2 Installer, Welcomepage, another variant.
Bernhard Reiter <bernhard@intevation.de>
parents: 797
diff changeset
71 !define MUI_WELCOMEPAGE_TITLE "Willkommen zur Installation"
8fad91c654e2 Installer, Welcomepage, another variant.
Bernhard Reiter <bernhard@intevation.de>
parents: 797
diff changeset
72 ;!define MUI_WELCOMEPAGE_TITLE_3LINES
8fad91c654e2 Installer, Welcomepage, another variant.
Bernhard Reiter <bernhard@intevation.de>
parents: 797
diff changeset
73 !define MUI_WELCOMEPAGE_TEXT "${productname} ist eine Anwendung \
8fad91c654e2 Installer, Welcomepage, another variant.
Bernhard Reiter <bernhard@intevation.de>
parents: 797
diff changeset
74 um Wurzelzertifikate auf ihrem System zu installieren und aktuell zu halten."
381
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
75
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
76 !define MUI_FINISHPAGE_NOAUTOCLOSE
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
77 !define MUI_UNFINISHPAGE_NOAUTOCLOSE
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
78
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
79 !define MUI_STARTMENUPAGE_REGISTRY_ROOT "SHCTX"
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
80 !define MUI_STARTMENUPAGE_REGISTRY_KEY "Software\${productname_short}"
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
81 !define MUI_STARTMENUPAGE_REGISTRY_VALUENAME "Start Menu Folder"
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
82
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
83
381
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
84 ;--------------------------------
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
85 ; Pages
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
86
381
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
87 !define MUI_FINISHPAGE_TITLE "Die Installation war erfolgreich"
506
bfcfbae151ab Some packaging changes. Add dummy runAsUser (not working) Update Application icon
Andre Heinecke <aheinecke@intevation.de>
parents: 500
diff changeset
88 !define MUI_FINISHPAGE_TEXT "${productname} wurde auf Ihrem \
381
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
89 Computer installliert. $\r$\n$\r$\n\
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
90 Klicken Sie auf 'Fertig stellen', um den Installations-Assistenten\
588
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
91 zu schlie�en."
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
92 ;!define MUI_FINISHPAGE_RUN $INSTDIR\trustbridge.exe
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
93 ;!define MUI_FINISHPAGE_RUN_TEXT "Anwendung starten"
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
94 ;!define MUI_FINISHPAGE_RUN_FUNCTION RunAsUser
794
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
95 !define MUI_FINISHPAGE_LINK "Mehr unter ${info_url}"
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
96 !define MUI_FINISHPAGE_LINK_LOCATION "${info_url}"
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
97
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
98 !insertmacro MUI_PAGE_WELCOME
381
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
99 !insertmacro MUI_PAGE_STARTMENU Application $StartMenuFolder
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
100 !insertmacro MUI_PAGE_DIRECTORY
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
101 !insertmacro MUI_PAGE_INSTFILES
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
102 !insertmacro MUI_PAGE_FINISH
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
103
831
747a48996c1f (Issue13) Precompile uninstaller
Andre Heinecke <andre.heinecke@intevation.de>
parents: 828
diff changeset
104 !ifdef WRITE_UNINSTALLER
747a48996c1f (Issue13) Precompile uninstaller
Andre Heinecke <andre.heinecke@intevation.de>
parents: 828
diff changeset
105 !insertmacro MUI_UNPAGE_CONFIRM
747a48996c1f (Issue13) Precompile uninstaller
Andre Heinecke <andre.heinecke@intevation.de>
parents: 828
diff changeset
106 !insertmacro MUI_UNPAGE_INSTFILES
747a48996c1f (Issue13) Precompile uninstaller
Andre Heinecke <andre.heinecke@intevation.de>
parents: 828
diff changeset
107 !endif
381
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
108
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
109 !insertmacro MUI_LANGUAGE "German"
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
110
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
111
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
112 ;--------------------------------
381
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
113 ; Install Functions
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
114
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
115 Function ".onInit"
831
747a48996c1f (Issue13) Precompile uninstaller
Andre Heinecke <andre.heinecke@intevation.de>
parents: 828
diff changeset
116 !ifdef WRITE_UNINSTALLER
747a48996c1f (Issue13) Precompile uninstaller
Andre Heinecke <andre.heinecke@intevation.de>
parents: 828
diff changeset
117 SetOutPath "c:\tmp-uninstaller"
747a48996c1f (Issue13) Precompile uninstaller
Andre Heinecke <andre.heinecke@intevation.de>
parents: 828
diff changeset
118 WriteUninstaller "c:\tmp-uninstaller\Uninstall.exe"
747a48996c1f (Issue13) Precompile uninstaller
Andre Heinecke <andre.heinecke@intevation.de>
parents: 828
diff changeset
119 Quit
747a48996c1f (Issue13) Precompile uninstaller
Andre Heinecke <andre.heinecke@intevation.de>
parents: 828
diff changeset
120 !endif
747a48996c1f (Issue13) Precompile uninstaller
Andre Heinecke <andre.heinecke@intevation.de>
parents: 828
diff changeset
121
828
95e14add5c50 (issue11) Check minium supported windows version
Andre Heinecke <andre.heinecke@intevation.de>
parents: 798
diff changeset
122 ${IfNot} ${AtLeastWinVista}
95e14add5c50 (issue11) Check minium supported windows version
Andre Heinecke <andre.heinecke@intevation.de>
parents: 798
diff changeset
123 MessageBox MB_OK "Windows XP und �ltere Windows Versionen werden von dieser Anwendung nicht unterst�tzt."
95e14add5c50 (issue11) Check minium supported windows version
Andre Heinecke <andre.heinecke@intevation.de>
parents: 798
diff changeset
124 Quit
95e14add5c50 (issue11) Check minium supported windows version
Andre Heinecke <andre.heinecke@intevation.de>
parents: 798
diff changeset
125 ${Endif}
95e14add5c50 (issue11) Check minium supported windows version
Andre Heinecke <andre.heinecke@intevation.de>
parents: 798
diff changeset
126
588
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
127 Var /GLOBAL is_update
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
128 Var /GLOBAL changed_dir
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
129 ${GetParameters} $R0
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
130 ClearErrors
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
131 ${GetOptions} $R0 /UPDATE= $is_update
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
132
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
133 ; Check if the install directory was modified on the command line
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
134 StrCmp "$INSTDIR" "$PROGRAMFILES\${productname_short}" unmodified 0
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
135 ; It is modified. Save that value.
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
136 StrCpy $changed_dir "$INSTDIR"
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
137
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
138 ; MULITUSER_INIT overwrites directory setting from command line
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
139 !insertmacro MULTIUSER_INIT
588
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
140 StrCpy $INSTDIR "$changed_dir"
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
141 goto initDone
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
142 unmodified:
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
143 !insertmacro MULTIUSER_INIT
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
144 initDone:
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
145 FunctionEnd
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
146
506
bfcfbae151ab Some packaging changes. Add dummy runAsUser (not working) Update Application icon
Andre Heinecke <aheinecke@intevation.de>
parents: 500
diff changeset
147 ; If we run elevated we do not want to run
bfcfbae151ab Some packaging changes. Add dummy runAsUser (not working) Update Application icon
Andre Heinecke <aheinecke@intevation.de>
parents: 500
diff changeset
148 ; the UI elevated as this could be a security
bfcfbae151ab Some packaging changes. Add dummy runAsUser (not working) Update Application icon
Andre Heinecke <aheinecke@intevation.de>
parents: 500
diff changeset
149 ; problem.
bfcfbae151ab Some packaging changes. Add dummy runAsUser (not working) Update Application icon
Andre Heinecke <aheinecke@intevation.de>
parents: 500
diff changeset
150 Function RunAsUser
bfcfbae151ab Some packaging changes. Add dummy runAsUser (not working) Update Application icon
Andre Heinecke <aheinecke@intevation.de>
parents: 500
diff changeset
151 ExecShell "" "$INSTDIR\trustbridge.exe"
bfcfbae151ab Some packaging changes. Add dummy runAsUser (not working) Update Application icon
Andre Heinecke <aheinecke@intevation.de>
parents: 500
diff changeset
152 FunctionEnd
bfcfbae151ab Some packaging changes. Add dummy runAsUser (not working) Update Application icon
Andre Heinecke <aheinecke@intevation.de>
parents: 500
diff changeset
153
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
154 ;--------------------------------
381
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
155 ; UnInstall Functions
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
156
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
157 Function "un.onInit"
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
158 !insertmacro MULTIUSER_UNINIT
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
159 FunctionEnd
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
160
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
161 Section ""
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
162 ; The actual installation
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
163 SetOutPath "$INSTDIR"
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
164 !include "filelist.nsh"
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
165
588
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
166 ;Create uninstaller
831
747a48996c1f (Issue13) Precompile uninstaller
Andre Heinecke <andre.heinecke@intevation.de>
parents: 828
diff changeset
167 !ifndef WRITE_UNINSTALLER
747a48996c1f (Issue13) Precompile uninstaller
Andre Heinecke <andre.heinecke@intevation.de>
parents: 828
diff changeset
168 File "${files_dir}${path_sep}Uninstall.exe"
747a48996c1f (Issue13) Precompile uninstaller
Andre Heinecke <andre.heinecke@intevation.de>
parents: 828
diff changeset
169 !endif
588
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
170
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
171 ; Code below is not run on updates
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
172 StrCmp $is_update '1' done
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
173
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
174 WriteRegStr SHCTX "Software\${productname_short}" "" $INSTDIR
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
175
632
9a18f096129d Add registry entries for logging.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 588
diff changeset
176 WriteRegStr SHCTX "Software\${productname_short}" "" $INSTDIR
9a18f096129d Add registry entries for logging.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 588
diff changeset
177
9a18f096129d Add registry entries for logging.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 588
diff changeset
178 ; Register logging
9a18f096129d Add registry entries for logging.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 588
diff changeset
179 WriteRegStr SHCTX "System\CurrentControlSet\services\eventlog\Application\${productname_short}" "CategoryMessageFile" "$INSTDIR\trustbridge.exe"
9a18f096129d Add registry entries for logging.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 588
diff changeset
180 WriteRegStr SHCTX "System\CurrentControlSet\services\eventlog\Application\${productname_short}" "EventMessageFile" "$INSTDIR\trustbridge.exe"
9a18f096129d Add registry entries for logging.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 588
diff changeset
181 WriteRegStr SHCTX "System\CurrentControlSet\services\eventlog\Application\${productname_short}" "ParameterMessageFile" "$INSTDIR\trustbridge.exe"
9a18f096129d Add registry entries for logging.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 588
diff changeset
182 WriteRegDword SHCTX "System\CurrentControlSet\services\eventlog\Application\${productname_short}" "TypesSupported" 5
9a18f096129d Add registry entries for logging.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 588
diff changeset
183 WriteRegDword SHCTX "System\CurrentControlSet\services\eventlog\Application\${productname_short}" "CategoryCount" 3
494
613fbcb5df0c Add autostart entry and finish renaming
Andre Heinecke <aheinecke@intevation.de>
parents: 410
diff changeset
184
794
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
185 ; Register Uninstaller
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
186
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
187 WriteRegStr SHCTX "Software\Microsoft\Windows\CurrentVersion\Uninstall\${productname_short}" \
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
188 "DisplayName" "${productname}"
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
189 WriteRegStr SHCTX "Software\Microsoft\Windows\CurrentVersion\Uninstall\${productname_short}" \
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
190 "DisplayIcon" "$\"$INSTDIR\trustbridge.exe$\""
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
191 WriteRegStr SHCTX "Software\Microsoft\Windows\CurrentVersion\Uninstall\${productname_short}" \
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
192 "DisplayVersion" "${version_number}"
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
193 WriteRegStr SHCTX "Software\Microsoft\Windows\CurrentVersion\Uninstall\${productname_short}" \
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
194 "Publisher" "${company}"
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
195 WriteRegStr SHCTX "Software\Microsoft\Windows\CurrentVersion\Uninstall\${productname_short}" \
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
196 "URLInfoAbout" "${info_url}"
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
197 WriteRegDword SHCTX "Software\Microsoft\Windows\CurrentVersion\Uninstall\${productname_short}" \
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
198 "EstimatedSize" "${size}"
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
199
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
200
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
201 WriteRegStr SHCTX "Software\Microsoft\Windows\CurrentVersion\Uninstall\${productname_short}" \
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
202 "UninstallString" "$\"$INSTDIR\uninstall.exe$\""
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
203 WriteRegStr SHCTX "Software\Microsoft\Windows\CurrentVersion\Uninstall\${productname_short}" \
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
204 "QuietUninstallString" "$\"$INSTDIR\uninstall.exe$\" /S"
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
205
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
206 !insertmacro MUI_STARTMENU_WRITE_BEGIN Application
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
207
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
208 ;Create shortcuts
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
209 CreateDirectory "$SMPROGRAMS\$StartMenuFolder"
494
613fbcb5df0c Add autostart entry and finish renaming
Andre Heinecke <aheinecke@intevation.de>
parents: 410
diff changeset
210 CreateShortCut "$SMPROGRAMS\$StartMenuFolder\${productname}.lnk" "$INSTDIR\trustbridge.exe"
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
211
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
212 !insertmacro MUI_STARTMENU_WRITE_END
588
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
213 done:
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
214
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
215 SectionEnd
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
216
831
747a48996c1f (Issue13) Precompile uninstaller
Andre Heinecke <andre.heinecke@intevation.de>
parents: 828
diff changeset
217 !ifdef WRITE_UNINSTALLER
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
218 Section "Uninstall"
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
219 RMDir /r "$INSTDIR" ; TODO include uninstall files
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
220 ; !include "filelist-un.nsh"
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
221 ; Delete "$INSTDIR\Uninstall.exe"
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
222 ; RMDir "$INSTDIR"
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
223
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
224 !insertmacro MUI_STARTMENU_GETFOLDER Application $StartMenuFolder
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
225
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
226 Delete "$SMPROGRAMS\$StartMenuFolder\${productname}.lnk"
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
227 RMDir "$SMPROGRAMS\$StartMenuFolder"
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
228
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
229 DeleteRegKey /ifempty SHCTX "Software\${productname_short}"
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
230
794
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
231 ; Unregister logging
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
232 DeleteRegKey SHCTX "System\CurrentControlSet\services\eventlog\Application\${productname_short}"
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
233
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
234 ; Remove uninstaller
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
235 DeleteRegKey SHCTX "Software\Microsoft\Windows\CurrentVersion\Uninstall\${productname_short}"
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
236 SectionEnd
831
747a48996c1f (Issue13) Precompile uninstaller
Andre Heinecke <andre.heinecke@intevation.de>
parents: 828
diff changeset
237 !endif

http://wald.intevation.org/projects/trustbridge/