* Move to GPL v3
[citadel.git] / citadel / citadel.nsi
1 ; $Id$
2 ; NOTE: this .NSI script is designed for NSIS v2.0b0+
3 ; Get NSIS at http://www.nullsoft.com/
4
5 !include "${NSISDIR}\Contrib\Modern UI\System.nsh"
6 !define MUI_PRODUCT "Citadel"
7 !define MUI_VERSION "7.11"
8 !define MUI_WELCOMEPAGE
9 !define MUI_LICENSEPAGE
10 !define MUI_COMPONENTSPAGE
11 !define MUI_COMPONENTSPAGE_SMALLDESC
12 !define MUI_DIRECTORYPAGE
13 !define MUI_FINISHPAGE
14 !define MUI_UNINSTALLER
15 !define MUI_UNCONFIRMPAGE
16 !insertmacro MUI_LANGUAGE "English"
17 ;!define MUI_UI "${NSISDIR}\Contrib\UIs\modern3.exe"
18 ;!define MUI_ICON "${NSISDIR}\Contrib\Icons\modern-install.ico"
19 ;!define MUI_UNICON "${NSISDIR}\Contrib\Icons\modern-uninstall.ico"
20
21 OutFile "citadel-7.11.exe"
22 BGGradient off
23
24 LangString DESC_Citadel ${LANG_ENGLISH} "Citadel client and core libraries (required)"
25 LangString DESC_CitadelServer ${LANG_ENGLISH} "Citadel server"
26 LangString DESC_CitadelUtils ${LANG_ENGLISH} "Citadel utilities"
27
28 SetCompress auto
29 SetDatablockOptimize on
30 BrandingText "Citadel "
31 CRCCheck force
32 AutoCloseWindow true
33 ShowInstDetails hide
34 ShowUninstDetails hide
35 SetDateSave on
36
37 LicenseData "C:\cygwin\home\error\copying.txt"
38
39 InstallDir "$PROGRAMFILES\Citadel"
40 InstallDirRegKey HKEY_LOCAL_MACHINE "SOFTWARE\Citadel\Citadel\CurrentVersion" "InstallDir"
41 DirShow show
42
43 Section "Citadel Client and core libraries (required)" Citadel ; (default section)
44 SetShellVarContext all
45 SetOutPath "$INSTDIR"
46 File C:\cygwin\home\error\cvs\citadel\citadel.exe
47 File C:\cygwin\home\error\citadel.rc
48 File C:\cygwin\bin\libW11.dll
49 File C:\cygwin\bin\cygwin1.dll
50 File C:\cygwin\bin\cygcrypto-0.9.7.dll
51 File C:\cygwin\bin\cygncurses7.dll
52 File C:\cygwin\bin\cygssl-0.9.7.dll
53 File C:\cygwin\bin\rxvt.exe
54 Delete "$DESKTOP\Citadel.lnk"
55 WriteUninstaller "$INSTDIR\uninst.exe"
56 CreateShortCut "$DESKTOP\Citadel.lnk" \
57         "$INSTDIR\rxvt.exe" "-fg white -bg black -sl 1000 -sr -fn 8x16 -e ./citadel.exe" \
58         "telnet.exe" "0"
59 CreateDirectory "$SMPROGRAMS\Citadel"
60 CreateShortcut "$SMPROGRAMS\Citadel\Citadel.lnk" \
61         "$INSTDIR\rxvt.exe" "-fg white -bg black -sl 1000 -sr -fn 8x16 -e ./citadel.exe" \
62         "telnet.exe" "0"
63 WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Citadel" "DisplayName" "Citadel (remove only)"
64 WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Citadel" "UninstallString" '"$INSTDIR\uninst.exe"'
65 WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Citadel\Citadel\CurrentVersion" "InstallDir" "$INSTDIR"
66 SectionEnd ; end of default section
67
68 Section "Citadel Server" CitadelServer
69 SetOutPath "$INSTDIR"
70 File C:\cygwin\home\error\cvs\citadel\citserver.exe
71 File C:\cygwin\bin\cygz.dll
72 File C:\cygwin\home\error\cvs\citadel\base64.exe
73 File C:\cygwin\home\error\cvs\citadel\setup.exe
74 File C:\cygwin\home\error\cvs\citadel\sendcommand.exe
75 File C:\cygwin\home\error\cvs\citadel\docs\citadel.html
76 File /oname=README.TXT C:\cygwin\home\error\cvs\citadel\docs\windows-readme.txt
77 SetOverwrite off
78 File /r C:\cygwin\home\error\cvs\citadel\help
79 File /r C:\cygwin\home\error\cvs\citadel\messages
80 SetOverwrite on
81 CreateShortcut "$SMPROGRAMS\Citadel\Server Setup Utility.lnk" \
82         "$INSTDIR\rxvt.exe" "-fg white -bg black -sl 1000 -sr -fn 8x16 -e ./setup.exe" \
83         "shell32.dll" "65"
84 CreateShortcut "$SMPROGRAMS\Citadel\README.lnk" \
85         "$INSTDIR\README.TXT"
86 CreateShortcut "$SMPROGRAMS\Citadel\Citadel Documentation.lnk" \
87         "$INSTDIR\citadel.html"
88 WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices" "Citadel" "$INSTDIR\citserver.exe -x9 -tcitadel-debug.txt"
89 SectionEnd
90
91 Section "Citadel Utilities" CitadelUtils
92 SetOutPath $INSTDIR
93 File C:\cygwin\home\error\cvs\citadel\aidepost.exe
94 File C:\cygwin\home\error\cvs\citadel\citmail.exe
95 File C:\cygwin\home\error\cvs\citadel\migratenet.exe
96 File C:\cygwin\home\error\cvs\citadel\msgform.exe
97 File C:\cygwin\home\error\cvs\citadel\userlist.exe
98 File C:\cygwin\home\error\cvs\citadel\whobbs.exe
99 SectionEnd
100 !insertmacro MUI_SECTIONS_FINISHHEADER
101
102 !insertmacro MUI_FUNCTIONS_DESCRIPTION_BEGIN
103   !insertmacro MUI_DESCRIPTION_TEXT ${Citadel} $(DESC_Citadel)
104   !insertmacro MUI_DESCRIPTION_TEXT ${CitadelServer} $(DESC_CitadelServer)
105   !insertmacro MUI_DESCRIPTION_TEXT ${CitadelUtils} $(DESC_CitadelUtils)
106 !insertmacro MUI_FUNCTIONS_DESCRIPTION_END
107
108 ; begin uninstall settings/section
109
110 Section Uninstall
111 SetShellVarContext all
112 SetDetailsView hide
113 SetAutoClose false
114 Delete "$INSTDIR\uninst.exe"
115 Delete /rebootok "$INSTDIR\citadel.exe"
116 Delete /rebootok "$INSTDIR\libW11.dll"
117 Delete /rebootok "$INSTDIR\cygwin1.dll"
118 Delete /rebootok "$INSTDIR\cygcrypto-0.9.7.dll"
119 Delete /rebootok "$INSTDIR\cygncurses7.dll"
120 Delete /rebootok "$INSTDIR\cygssl-0.9.7.dll"
121 Delete /rebootok "$INSTDIR\rxvt.exe"
122 Delete /rebootok "$INSTDIR\citserver.exe"
123 Delete /rebootok "$INSTDIR\base64.exe"
124 Delete /rebootok "$INSTDIR\setup.exe"
125 Delete /rebootok "$INSTDIR\aidepost.exe"
126 Delete /rebootok "$INSTDIR\citmail.exe"
127 Delete /rebootok "$INSTDIR\migratenet.exe"
128 Delete /rebootok "$INSTDIR\msgform.exe"
129 Delete /rebootok "$INSTDIR\sendcommand.exe"
130 Delete /rebootok "$INSTDIR\userlist.exe"
131 Delete /rebootok "$INSTDIR\whobbs.exe"
132
133 RMDir /r "$INSTDIR\help"
134 RMDir /r "$INSTDIR\messages"
135 RMDir /r "$INSTDIR\bitbucket"
136 RMDir "$INSTDIR"
137
138 Delete "$SMPROGRAMS\Citadel\README.lnk"
139 Delete "$SMPROGRAMS\Citadel\Citadel Documentation.lnk"
140 Delete "$SMPROGRAMS\Citadel\Server Setup Utility.lnk"
141 Delete "$SMPROGRAMS\Citadel\Citadel.lnk"
142 RMDir "$SMPROGRAMS\Citadel"
143 Delete "$DESKTOP\Citadel.lnk"
144 DeleteRegValue HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices" "Citadel"
145 DeleteRegKey HKEY_LOCAL_MACHINE "SOFTWARE\Citadel\Citadel"
146 DeleteRegKey HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Citadel"
147 DeleteRegValue HKEY_LOCAL_MACHINE "SOFTWARE\Citadel\Citadel\CurrentVersion" "InstallDir"
148 DeleteRegKey /ifempty HKEY_LOCAL_MACHINE "SOFTWARE\Citadel\Citadel\CurrentVersion"
149 DeleteRegKey /ifempty HKEY_LOCAL_MACHINE "SOFTWARE\Citadel\Citadel"
150 DeleteRegKey /ifempty HKEY_LOCAL_MACHINE "SOFTWARE\Citadel"
151 !insertmacro MUI_UNFINISHHEADER
152 SectionEnd ; end of uninstall section
153
154 ; eof