annotate packaging/trustbridge.nsi @ 1070:f110a3f6e387

(issue114) Fine tune ACL propagation using mkdir_p the ACL of the parent directories would propagate to all subdirectories and objects in the directory. Now we only use ACL propagation in the last directory to make sure that files we might create in that directory inherit the correct (resitricted) ACL
author Andre Heinecke <andre.heinecke@intevation.de>
date Wed, 10 Sep 2014 16:41:36 +0200
parents 1b77124aea4d
children 1c1964c27b39
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
859
df6f3b1cc41c (issue53) Uninstall list-installed if requested.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 835
diff changeset
49 Var douninstcertificates
835
bd9d07c301fd Add framework to uninstall certificates
Andre Heinecke <andre.heinecke@intevation.de>
parents: 831
diff changeset
50 Var uninstCertificates
340
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 ; General
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
53
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
54 ; Define Name, File and Installdir of Installer
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
55 Name "${productname}"
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
56 OutFile "${setupname}"
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
57 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
58 BrandingText "${company} - ${productname}"
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
59
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 ; Interface Settings
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
62
381
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
63 ; MUI Images / Icons
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
64 !define MUI_HEADERIMAGE
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
65 !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
66 !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
67 !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
68 !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
69 !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
70 !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
71
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
72 ; MUI welcome page text
862
eee419ad81b8 (Packaging) Added version number and development version note to nsis welcome page.
Emanuel Schuetze <emanuel@intevation.de>
parents: 859
diff changeset
73 !define MUI_WELCOMEPAGE_TITLE "Willkommen zur Installation von TrustBridge ${version_number}"
798
8fad91c654e2 Installer, Welcomepage, another variant.
Bernhard Reiter <bernhard@intevation.de>
parents: 797
diff changeset
74 ;!define MUI_WELCOMEPAGE_TITLE_3LINES
8fad91c654e2 Installer, Welcomepage, another variant.
Bernhard Reiter <bernhard@intevation.de>
parents: 797
diff changeset
75 !define MUI_WELCOMEPAGE_TEXT "${productname} ist eine Anwendung \
862
eee419ad81b8 (Packaging) Added version number and development version note to nsis welcome page.
Emanuel Schuetze <emanuel@intevation.de>
parents: 859
diff changeset
76 um Wurzelzertifikate auf ihrem System zu installieren und aktuell zu halten. \
eee419ad81b8 (Packaging) Added version number and development version note to nsis welcome page.
Emanuel Schuetze <emanuel@intevation.de>
parents: 859
diff changeset
77 $\r$\n$\r$\n$\r$\n$\r$\n \
eee419ad81b8 (Packaging) Added version number and development version note to nsis welcome page.
Emanuel Schuetze <emanuel@intevation.de>
parents: 859
diff changeset
78 Achtung: Dies ist eine Testversion!"
381
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
79
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
80 !define MUI_FINISHPAGE_NOAUTOCLOSE
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
81 !define MUI_UNFINISHPAGE_NOAUTOCLOSE
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
82
915
715d41aac9c8 (Issue85) Really move start menu entry to user context
Andre Heinecke <andre.heinecke@intevation.de>
parents: 901
diff changeset
83 !define MUI_STARTMENUPAGE_REGISTRY_ROOT "SHCTX"
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
84 !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
85 !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
86
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
87
381
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
88 ;--------------------------------
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
89 ; Pages
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
90
381
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
91 !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
92 !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
93 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
94 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
95 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
96 ;!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
97 ;!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
98 ;!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
99 !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
100 !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
101
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
102 !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
103 !insertmacro MUI_PAGE_STARTMENU Application $StartMenuFolder
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
104 !insertmacro MUI_PAGE_DIRECTORY
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
105 !insertmacro MUI_PAGE_INSTFILES
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
106 !insertmacro MUI_PAGE_FINISH
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
107
831
747a48996c1f (Issue13) Precompile uninstaller
Andre Heinecke <andre.heinecke@intevation.de>
parents: 828
diff changeset
108 !ifdef WRITE_UNINSTALLER
859
df6f3b1cc41c (issue53) Uninstall list-installed if requested.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 835
diff changeset
109 !define MUI_PAGE_CUSTOMFUNCTION_SHOW un.ModifyUnWelcome
df6f3b1cc41c (issue53) Uninstall list-installed if requested.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 835
diff changeset
110 !define MUI_PAGE_CUSTOMFUNCTION_LEAVE un.LeaveUnWelcome
835
bd9d07c301fd Add framework to uninstall certificates
Andre Heinecke <andre.heinecke@intevation.de>
parents: 831
diff changeset
111
859
df6f3b1cc41c (issue53) Uninstall list-installed if requested.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 835
diff changeset
112 !insertmacro MUI_UNPAGE_WELCOME
831
747a48996c1f (Issue13) Precompile uninstaller
Andre Heinecke <andre.heinecke@intevation.de>
parents: 828
diff changeset
113 !insertmacro MUI_UNPAGE_CONFIRM
747a48996c1f (Issue13) Precompile uninstaller
Andre Heinecke <andre.heinecke@intevation.de>
parents: 828
diff changeset
114 !insertmacro MUI_UNPAGE_INSTFILES
835
bd9d07c301fd Add framework to uninstall certificates
Andre Heinecke <andre.heinecke@intevation.de>
parents: 831
diff changeset
115
859
df6f3b1cc41c (issue53) Uninstall list-installed if requested.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 835
diff changeset
116 Function un.ModifyUnWelcome
835
bd9d07c301fd Add framework to uninstall certificates
Andre Heinecke <andre.heinecke@intevation.de>
parents: 831
diff changeset
117 ${NSD_CreateCheckbox} 120u -18u 50% 12u "Verwaltete Zertifikate entfernen."
bd9d07c301fd Add framework to uninstall certificates
Andre Heinecke <andre.heinecke@intevation.de>
parents: 831
diff changeset
118 Pop $uninstCertificates
bd9d07c301fd Add framework to uninstall certificates
Andre Heinecke <andre.heinecke@intevation.de>
parents: 831
diff changeset
119 SetCtlColors $uninstCertificates "" ${MUI_BGCOLOR}
859
df6f3b1cc41c (issue53) Uninstall list-installed if requested.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 835
diff changeset
120 ${NSD_Check} $uninstCertificates ; Check it by default
835
bd9d07c301fd Add framework to uninstall certificates
Andre Heinecke <andre.heinecke@intevation.de>
parents: 831
diff changeset
121 FunctionEnd
bd9d07c301fd Add framework to uninstall certificates
Andre Heinecke <andre.heinecke@intevation.de>
parents: 831
diff changeset
122
859
df6f3b1cc41c (issue53) Uninstall list-installed if requested.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 835
diff changeset
123 Function un.LeaveUnWelcome
835
bd9d07c301fd Add framework to uninstall certificates
Andre Heinecke <andre.heinecke@intevation.de>
parents: 831
diff changeset
124 ${NSD_GetState} $uninstCertificates $0
859
df6f3b1cc41c (issue53) Uninstall list-installed if requested.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 835
diff changeset
125 StrCpy $douninstcertificates "FALSE"
835
bd9d07c301fd Add framework to uninstall certificates
Andre Heinecke <andre.heinecke@intevation.de>
parents: 831
diff changeset
126 ${If} $0 <> 0
859
df6f3b1cc41c (issue53) Uninstall list-installed if requested.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 835
diff changeset
127 StrCpy $douninstcertificates "TRUE"
835
bd9d07c301fd Add framework to uninstall certificates
Andre Heinecke <andre.heinecke@intevation.de>
parents: 831
diff changeset
128 ${EndIf}
bd9d07c301fd Add framework to uninstall certificates
Andre Heinecke <andre.heinecke@intevation.de>
parents: 831
diff changeset
129 FunctionEnd
831
747a48996c1f (Issue13) Precompile uninstaller
Andre Heinecke <andre.heinecke@intevation.de>
parents: 828
diff changeset
130 !endif
381
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
131
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
132 !insertmacro MUI_LANGUAGE "German"
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
133
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
134
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
135 ;--------------------------------
381
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
136 ; Install Functions
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
137
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
138 Function ".onInit"
831
747a48996c1f (Issue13) Precompile uninstaller
Andre Heinecke <andre.heinecke@intevation.de>
parents: 828
diff changeset
139 !ifdef WRITE_UNINSTALLER
747a48996c1f (Issue13) Precompile uninstaller
Andre Heinecke <andre.heinecke@intevation.de>
parents: 828
diff changeset
140 SetOutPath "c:\tmp-uninstaller"
747a48996c1f (Issue13) Precompile uninstaller
Andre Heinecke <andre.heinecke@intevation.de>
parents: 828
diff changeset
141 WriteUninstaller "c:\tmp-uninstaller\Uninstall.exe"
747a48996c1f (Issue13) Precompile uninstaller
Andre Heinecke <andre.heinecke@intevation.de>
parents: 828
diff changeset
142 Quit
747a48996c1f (Issue13) Precompile uninstaller
Andre Heinecke <andre.heinecke@intevation.de>
parents: 828
diff changeset
143 !endif
747a48996c1f (Issue13) Precompile uninstaller
Andre Heinecke <andre.heinecke@intevation.de>
parents: 828
diff changeset
144
828
95e14add5c50 (issue11) Check minium supported windows version
Andre Heinecke <andre.heinecke@intevation.de>
parents: 798
diff changeset
145 ${IfNot} ${AtLeastWinVista}
917
6978381671eb (issue62) Show warning when installation as normal user is attempted
Andre Heinecke <andre.heinecke@intevation.de>
parents: 915
diff changeset
146 MessageBox MB_ICONSTOP "Windows XP und �ltere Windows Versionen werden von dieser Anwendung nicht unterst�tzt."
828
95e14add5c50 (issue11) Check minium supported windows version
Andre Heinecke <andre.heinecke@intevation.de>
parents: 798
diff changeset
147 Quit
95e14add5c50 (issue11) Check minium supported windows version
Andre Heinecke <andre.heinecke@intevation.de>
parents: 798
diff changeset
148 ${Endif}
95e14add5c50 (issue11) Check minium supported windows version
Andre Heinecke <andre.heinecke@intevation.de>
parents: 798
diff changeset
149
917
6978381671eb (issue62) Show warning when installation as normal user is attempted
Andre Heinecke <andre.heinecke@intevation.de>
parents: 915
diff changeset
150 UserInfo::GetAccountType
6978381671eb (issue62) Show warning when installation as normal user is attempted
Andre Heinecke <andre.heinecke@intevation.de>
parents: 915
diff changeset
151 pop $0
6978381671eb (issue62) Show warning when installation as normal user is attempted
Andre Heinecke <andre.heinecke@intevation.de>
parents: 915
diff changeset
152 ${If} $0 != "admin"
6978381671eb (issue62) Show warning when installation as normal user is attempted
Andre Heinecke <andre.heinecke@intevation.de>
parents: 915
diff changeset
153 MessageBox MB_ICONINFORMATION|MB_YESNO "\
6978381671eb (issue62) Show warning when installation as normal user is attempted
Andre Heinecke <andre.heinecke@intevation.de>
parents: 915
diff changeset
154 Sie sind im Begriff ${productname} ohne Administratorrechte zu installieren. $\r$\n\
6978381671eb (issue62) Show warning when installation as normal user is attempted
Andre Heinecke <andre.heinecke@intevation.de>
parents: 915
diff changeset
155 $\r$\n\
6978381671eb (issue62) Show warning when installation as normal user is attempted
Andre Heinecke <andre.heinecke@intevation.de>
parents: 915
diff changeset
156 Ohne Administratorrechte werden Sie von Windows zur Best�tigung jeder Zertifikats�nderung einzeln aufgefordert. $\r$\n$\r$\n\
925
1b77124aea4d (issue62) Updated no-admin warning message.
Emanuel Schuetze <emanuel@intevation.de>
parents: 917
diff changeset
157 Wenn Sie die M�glichkeit besitzen Administratorrechte auf diesem System zu erlangen, starten Sie diesen Installer \
1b77124aea4d (issue62) Updated no-admin warning message.
Emanuel Schuetze <emanuel@intevation.de>
parents: 917
diff changeset
158 erneut mit der Funktion 'Als Administrator ausf�hren'. $\r$\n$\r$\n\
917
6978381671eb (issue62) Show warning when installation as normal user is attempted
Andre Heinecke <andre.heinecke@intevation.de>
parents: 915
diff changeset
159 M�chten Sie die Installation ohne Administratorrechte fortsetzen?" /SD IDYES IDYES goOn IDNO stopNow
6978381671eb (issue62) Show warning when installation as normal user is attempted
Andre Heinecke <andre.heinecke@intevation.de>
parents: 915
diff changeset
160 stopNow:
6978381671eb (issue62) Show warning when installation as normal user is attempted
Andre Heinecke <andre.heinecke@intevation.de>
parents: 915
diff changeset
161 Quit
6978381671eb (issue62) Show warning when installation as normal user is attempted
Andre Heinecke <andre.heinecke@intevation.de>
parents: 915
diff changeset
162 goOn:
6978381671eb (issue62) Show warning when installation as normal user is attempted
Andre Heinecke <andre.heinecke@intevation.de>
parents: 915
diff changeset
163 ${EndIf}
6978381671eb (issue62) Show warning when installation as normal user is attempted
Andre Heinecke <andre.heinecke@intevation.de>
parents: 915
diff changeset
164
588
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
165 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
166 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
167 ${GetParameters} $R0
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
168 ClearErrors
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
169 ${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
170
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
171 ; 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
172 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
173 ; 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
174 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
175
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
176 ; 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
177 !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
178 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
179 goto initDone
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
180 unmodified:
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
181 !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
182 initDone:
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
183 FunctionEnd
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
184
506
bfcfbae151ab Some packaging changes. Add dummy runAsUser (not working) Update Application icon
Andre Heinecke <aheinecke@intevation.de>
parents: 500
diff changeset
185 ; 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
186 ; 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
187 ; problem.
bfcfbae151ab Some packaging changes. Add dummy runAsUser (not working) Update Application icon
Andre Heinecke <aheinecke@intevation.de>
parents: 500
diff changeset
188 Function RunAsUser
bfcfbae151ab Some packaging changes. Add dummy runAsUser (not working) Update Application icon
Andre Heinecke <aheinecke@intevation.de>
parents: 500
diff changeset
189 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
190 FunctionEnd
bfcfbae151ab Some packaging changes. Add dummy runAsUser (not working) Update Application icon
Andre Heinecke <aheinecke@intevation.de>
parents: 500
diff changeset
191
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
192 ;--------------------------------
381
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
193 ; UnInstall Functions
73bfc9cc22e7 Improved NSIS installer MUI script. Added sample images and icons.
Emanuel Schuetze <emanuel@intevation.de>
parents: 340
diff changeset
194
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
195 Function "un.onInit"
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
196 !insertmacro MULTIUSER_UNINIT
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
197 FunctionEnd
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
198
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
199 Section ""
895
8ac2d9b0668d Add sleep in installer on update
Andre Heinecke <andre.heinecke@intevation.de>
parents: 870
diff changeset
200 StrCmp $is_update '1' wait_a_bit continue
8ac2d9b0668d Add sleep in installer on update
Andre Heinecke <andre.heinecke@intevation.de>
parents: 870
diff changeset
201 wait_a_bit:
8ac2d9b0668d Add sleep in installer on update
Andre Heinecke <andre.heinecke@intevation.de>
parents: 870
diff changeset
202 ; The trustbridge.exe might need some time to close
8ac2d9b0668d Add sleep in installer on update
Andre Heinecke <andre.heinecke@intevation.de>
parents: 870
diff changeset
203 ; lets give it a chance to avoid failing to overwrite it
8ac2d9b0668d Add sleep in installer on update
Andre Heinecke <andre.heinecke@intevation.de>
parents: 870
diff changeset
204 Sleep 1000
8ac2d9b0668d Add sleep in installer on update
Andre Heinecke <andre.heinecke@intevation.de>
parents: 870
diff changeset
205 continue:
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
206 ; The actual installation
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
207 SetOutPath "$INSTDIR"
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
208 !include "filelist.nsh"
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
209
588
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
210 ;Create uninstaller
831
747a48996c1f (Issue13) Precompile uninstaller
Andre Heinecke <andre.heinecke@intevation.de>
parents: 828
diff changeset
211 !ifndef WRITE_UNINSTALLER
747a48996c1f (Issue13) Precompile uninstaller
Andre Heinecke <andre.heinecke@intevation.de>
parents: 828
diff changeset
212 File "${files_dir}${path_sep}Uninstall.exe"
747a48996c1f (Issue13) Precompile uninstaller
Andre Heinecke <andre.heinecke@intevation.de>
parents: 828
diff changeset
213 !endif
588
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
214
a4e75d90d3f6 Use latin1 in NSIS (fixes encoding errors) Fix command line installation dir.
Andre Heinecke <aheinecke@intevation.de>
parents: 506
diff changeset
215 ; 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
216 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
217
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
218 WriteRegStr SHCTX "Software\${productname_short}" "" $INSTDIR
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
219
870
e93ae5233217 Readd autostart
Andre Heinecke <andre.heinecke@intevation.de>
parents: 862
diff changeset
220 ; Set up autostart
901
a10eae8ca290 (issue85) Always install autostart and startmenu only for the installing user.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 895
diff changeset
221 WriteRegStr HKCU "Software\Microsoft\Windows\CurrentVersion\Run" "TrustBridge" "$INSTDIR\trustbridge.exe --tray"
632
9a18f096129d Add registry entries for logging.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 588
diff changeset
222
9a18f096129d Add registry entries for logging.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 588
diff changeset
223 ; Register logging
9a18f096129d Add registry entries for logging.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 588
diff changeset
224 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
225 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
226 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
227 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
228 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
229
794
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
230 ; Register Uninstaller
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
231
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
232 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
233 "DisplayName" "${productname}"
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
234 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
235 "DisplayIcon" "$\"$INSTDIR\trustbridge.exe$\""
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
236 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
237 "DisplayVersion" "${version_number}"
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
238 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
239 "Publisher" "${company}"
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
240 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
241 "URLInfoAbout" "${info_url}"
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
242 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
243 "EstimatedSize" "${size}"
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
244
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
245
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
246 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
247 "UninstallString" "$\"$INSTDIR\uninstall.exe$\""
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
248 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
249 "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
250
915
715d41aac9c8 (Issue85) Really move start menu entry to user context
Andre Heinecke <andre.heinecke@intevation.de>
parents: 901
diff changeset
251 ; Below this is HKCU only!
715d41aac9c8 (Issue85) Really move start menu entry to user context
Andre Heinecke <andre.heinecke@intevation.de>
parents: 901
diff changeset
252 SetShellVarContext current
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
253 !insertmacro MUI_STARTMENU_WRITE_BEGIN Application
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
254
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
255 ;Create shortcuts
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
256 CreateDirectory "$SMPROGRAMS\$StartMenuFolder"
494
613fbcb5df0c Add autostart entry and finish renaming
Andre Heinecke <aheinecke@intevation.de>
parents: 410
diff changeset
257 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
258
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
259 !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
260 done:
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
261
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
262 SectionEnd
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
263
831
747a48996c1f (Issue13) Precompile uninstaller
Andre Heinecke <andre.heinecke@intevation.de>
parents: 828
diff changeset
264 !ifdef WRITE_UNINSTALLER
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
265 Section "Uninstall"
859
df6f3b1cc41c (issue53) Uninstall list-installed if requested.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 835
diff changeset
266 StrCmp "$douninstcertificates" "TRUE" 0 skip_certs
df6f3b1cc41c (issue53) Uninstall list-installed if requested.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 835
diff changeset
267 ExpandEnvStrings $0 %LOCALAPPDATA%
df6f3b1cc41c (issue53) Uninstall list-installed if requested.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 835
diff changeset
268 nsExec::ExecToLog '"$INSTDIR\cinst.exe" "list=$0\BSI\TrustBridge\list-installed.txt" "choices=uninstall"'
df6f3b1cc41c (issue53) Uninstall list-installed if requested.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 835
diff changeset
269 skip_certs:
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
270 RMDir /r "$INSTDIR" ; TODO include uninstall files
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
271 ; !include "filelist-un.nsh"
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
272 ; Delete "$INSTDIR\Uninstall.exe"
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
273 ; RMDir "$INSTDIR"
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
274
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
275 !insertmacro MUI_STARTMENU_GETFOLDER Application $StartMenuFolder
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
276
915
715d41aac9c8 (Issue85) Really move start menu entry to user context
Andre Heinecke <andre.heinecke@intevation.de>
parents: 901
diff changeset
277 DeleteRegValue SHCTX "Software\${productname_short}" "Start Menu Folder"
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
278
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
279 DeleteRegKey /ifempty SHCTX "Software\${productname_short}"
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
280
870
e93ae5233217 Readd autostart
Andre Heinecke <andre.heinecke@intevation.de>
parents: 862
diff changeset
281 ; Unregister autostart
e93ae5233217 Readd autostart
Andre Heinecke <andre.heinecke@intevation.de>
parents: 862
diff changeset
282 DeleteRegValue SHCTX "Software\Microsoft\Windows\CurrentVersion\Run" "TrustBridge"
e93ae5233217 Readd autostart
Andre Heinecke <andre.heinecke@intevation.de>
parents: 862
diff changeset
283
794
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
284 ; Unregister logging
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
285 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
286
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
287 ; Remove uninstaller
fdc15f0cfdd8 (issue61) NSIS Write uninstall information and make URL configurable.
Andre Heinecke <andre.heinecke@intevation.de>
parents: 793
diff changeset
288 DeleteRegKey SHCTX "Software\Microsoft\Windows\CurrentVersion\Uninstall\${productname_short}"
915
715d41aac9c8 (Issue85) Really move start menu entry to user context
Andre Heinecke <andre.heinecke@intevation.de>
parents: 901
diff changeset
289
715d41aac9c8 (Issue85) Really move start menu entry to user context
Andre Heinecke <andre.heinecke@intevation.de>
parents: 901
diff changeset
290 ; Below this is HKCU only!
715d41aac9c8 (Issue85) Really move start menu entry to user context
Andre Heinecke <andre.heinecke@intevation.de>
parents: 901
diff changeset
291 SetShellVarContext current
715d41aac9c8 (Issue85) Really move start menu entry to user context
Andre Heinecke <andre.heinecke@intevation.de>
parents: 901
diff changeset
292
715d41aac9c8 (Issue85) Really move start menu entry to user context
Andre Heinecke <andre.heinecke@intevation.de>
parents: 901
diff changeset
293 Delete "$SMPROGRAMS\$StartMenuFolder\${productname}.lnk"
715d41aac9c8 (Issue85) Really move start menu entry to user context
Andre Heinecke <andre.heinecke@intevation.de>
parents: 901
diff changeset
294 RMDir "$SMPROGRAMS\$StartMenuFolder"
715d41aac9c8 (Issue85) Really move start menu entry to user context
Andre Heinecke <andre.heinecke@intevation.de>
parents: 901
diff changeset
295
340
9001eaa55549 Add first draft of packaging to build upon
Andre Heinecke <aheinecke@intevation.de>
parents:
diff changeset
296 SectionEnd
831
747a48996c1f (Issue13) Precompile uninstaller
Andre Heinecke <andre.heinecke@intevation.de>
parents: 828
diff changeset
297 !endif

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