remove CVS ID markers
[olsrd.git] / gui / win32 / Inst / installer.nsi
1 ;
2 ;  The olsr.org Optimized Link-State Routing daemon (olsrd)
3 ;  Copyright (c) 2004, Thomas Lopatic (thomas@lopatic.de)
4 ;  All rights reserved.
5 ;
6 ;  Redistribution and use in source and binary forms, with or without 
7 ;  modification, are permitted provided that the following conditions 
8 ;  are met:
9 ;
10 ;  * Redistributions of source code must retain the above copyright 
11 ;    notice, this list of conditions and the following disclaimer.
12 ;  * Redistributions in binary form must reproduce the above copyright 
13 ;    notice, this list of conditions and the following disclaimer in 
14 ;    the documentation and/or other materials provided with the 
15 ;    distribution.
16 ;  * Neither the name of olsr.org, olsrd nor the names of its 
17 ;    contributors may be used to endorse or promote products derived 
18 ;    from this software without specific prior written permission.
19 ;
20 ;  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
21 ;  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
22 ;  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
23 ;  FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
24 ;  COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
25 ;  INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
26 ;  BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
27 ;  LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
28 ;  CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
29 ;  LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 
30 ;  ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
31 ;  POSSIBILITY OF SUCH DAMAGE.
32 ;
33 ;  Visit http://www.olsr.org for more information.
34 ;
35 ;  If you find this software useful feel free to make a donation
36 ;  to the project. For more information see the website or contact
37 ;  the copyright holders.
38 ;
39 ;
40
41 Name olsr.org
42 OutFile ..\..\..\olsr-setup.exe
43 BrandingText "www.olsr.org"
44 InstallDir $PROGRAMFILES\olsr.org
45 LicenseData ..\..\..\license.txt
46 XPStyle on
47
48 Page license
49 Page components
50 Page directory
51 Page instfiles
52
53 UninstPage uninstConfirm
54 UninstPage instfiles
55
56 Function .onInit
57         MessageBox MB_YESNO "This will install olsr.org 0.5.0 on your computer. Continue?" IDYES NoAbort
58         Abort
59 NoAbort:
60 FunctionEnd
61
62 InstType "ETX Configuration (recommended)"
63 InstType "RFC Configuration"
64
65 Section "Program Files"
66
67         SectionIn 1 2 RO
68
69         SetOutPath $INSTDIR
70
71         File /oname=Switch.exe ..\release\Main.exe
72         File ..\release\Shim.exe
73         File ..\..\..\olsrd.exe
74         File ..\..\..\olsr_switch.exe
75         File ..\..\..\src\cfgparser\olsrd_cfgparser.dll
76         File /oname=README.txt ..\..\..\README
77         File /oname=README-LQ.html ..\..\..\README-Link-Quality.html
78         File /oname=README-Fish-Eye.txt ..\..\..\README-Link-Quality-Fish-Eye.txt
79         File ..\..\..\README-Olsr-Switch.html
80         File linux-manual.txt
81         File /oname=olsrd.conf.rfc ..\..\..\files\olsrd.conf.win32.rfc
82         File /oname=olsrd.conf.lq ..\..\..\files\olsrd.conf.win32.lq
83         File ..\..\..\lib\dot_draw\olsrd_dot_draw.dll
84         File ..\..\..\lib\httpinfo\olsrd_httpinfo.dll
85
86         WriteRegStr HKLM Software\Microsoft\Windows\CurrentVersion\Uninstall\olsr.org DisplayName olsr.org
87         WriteRegStr HKLM Software\Microsoft\Windows\CurrentVersion\Uninstall\olsr.org UninstallString $INSTDIR\uninstall.exe
88
89         WriteRegDWORD HKLM Software\Microsoft\Windows\CurrentVersion\Uninstall\olsr.org NoModify 1
90         WriteRegDWORD HKLM Software\Microsoft\Windows\CurrentVersion\Uninstall\olsr.org NoRepair 1
91
92         WriteUninstaller $INSTDIR\uninstall.exe
93
94 SectionEnd
95
96 Section "ETX Configuration"
97
98         SectionIn 1 RO
99
100         File ..\..\..\gui\win32\Main\RFC-Default.olsr
101         File ..\..\..\gui\win32\Main\LQ-Default.olsr
102         File /oname=Default.olsr ..\..\..\gui\win32\Main\LQ-Default.olsr
103
104 SectionEnd
105
106 Section "RFC Configuration"
107
108         SectionIn 2 RO
109
110         File ..\..\..\gui\win32\Main\RFC-Default.olsr
111         File ..\..\..\gui\win32\Main\LQ-Default.olsr
112         File /oname=Default.olsr ..\..\..\gui\win32\Main\RFC-Default.olsr
113
114 SectionEnd
115
116 Section "Start Menu Shortcuts"
117
118         SectionIn 1 2
119
120         CreateDirectory $SMPROGRAMS\olsr.org
121
122         CreateShortCut "$SMPROGRAMS\olsr.org\OLSR Switch.lnk" $INSTDIR\Switch.exe "" $INSTDIR\Switch.exe 0
123         CreateShortCut $SMPROGRAMS\olsr.org\README.lnk $INSTDIR\README.txt
124         CreateShortCut $SMPROGRAMS\olsr.org\README-LQ.lnk $INSTDIR\README-LQ.html
125         CreateShortCut $SMPROGRAMS\olsr.org\Uninstall.lnk $INSTDIR\uninstall.exe "" $INSTDIR\uninstall.exe 0
126
127 SectionEnd
128
129 Section "Desktop Shortcut"
130
131         SectionIn 1 2
132
133         CreateShortCut "$DESKTOP\OLSR Switch.lnk" $INSTDIR\Switch.exe "" $INSTDIR\Switch.exe 0
134
135 SectionEnd
136
137 Section "File Association (*.olsr)"
138
139         SectionIn 1 2
140
141         WriteRegStr HKCR .olsr "" OlsrOrgConfigFile
142
143         WriteRegStr HKCR OlsrOrgConfigFile "" "olsr.org Configuration File"
144
145         WriteRegStr HKCR OlsrOrgConfigFile\shell "" open
146         WriteRegStr HKCR OlsrOrgConfigFile\DefaultIcon "" $INSTDIR\Switch.exe,0
147         WriteRegStr HKCR OlsrOrgConfigFile\shell\open\command "" '$INSTDIR\Switch.exe "%1"'
148
149 SectionEnd
150
151 Section "Uninstall"
152
153         DeleteRegKey HKLM Software\Microsoft\Windows\CurrentVersion\Uninstall\olsr.org
154
155         DeleteRegKey HKCR .olsr
156         DeleteRegKey HKCR OlsrOrgConfigFile
157
158         Delete $INSTDIR\Switch.exe
159         Delete $INSTDIR\Shim.exe
160         Delete $INSTDIR\olsrd.exe
161         Delete $INSTDIR\olsr_switch.exe
162         Delete $INSTDIR\olsrd_cfgparser.dll
163         Delete $INSTDIR\README.txt
164         Delete $INSTDIR\README-LQ.html
165         Delete $INSTDIR\README-Fish-Eye.txt
166         Delete $INSTDIR\README-Olsr-Switch.html
167         Delete $INSTDIR\linux-manual.txt
168         Delete $INSTDIR\Default.olsr
169         Delete $INSTDIR\RFC-Default.olsr
170         Delete $INSTDIR\LQ-Default.olsr
171         Delete $INSTDIR\olsrd.conf.rfc
172         Delete $INSTDIR\olsrd.conf.lq
173         Delete $INSTDIR\olsrd_dot_draw.dll
174         Delete $INSTDIR\olsrd_nameservice.dll
175         Delete $INSTDIR\olsrd_httpinfo.dll
176         Delete $INSTDIR\uninstall.exe
177
178         RMDir $INSTDIR
179
180         Delete "$SMPROGRAMS\olsr.org\OLSR Switch.lnk"
181         Delete $SMPROGRAMS\olsr.org\README.lnk
182         Delete $SMPROGRAMS\olsr.org\README-LQ.lnk
183         Delete $SMPROGRAMS\olsr.org\Uninstall.lnk
184
185         RMDir $SMPROGRAMS\olsr.org
186
187         Delete "$DESKTOP\OLSR Switch.lnk"
188
189 SectionEnd