annotate packaging/trustbridge.nsi @ 1081:edbf5e5e88f4

(issue118) Extend verify_binary to carry an open file * binverify.c: Change result to a structure containing an open fptr Use in Memory data for windows verification. * mainwindow.cpp, selftest.c: Handle the returend structure * binverifytest.cpp: Test for the exclusive read and update signature. * listutil.c: Add optional fptr parameter to read_file
author Andre Heinecke <andre.heinecke@intevation.de>
date Thu, 11 Sep 2014 12:05:24 +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/