index 0b735596997088a7c3a1ae663e998c5b98c3c768..651ba3cb2ac33da07e00e4dff66f5f694b24a311 100644 (file)
; DEFINES
; #######################################
!define PRODUCT_NAME "Inkscape"
-!define PRODUCT_VERSION "0.46+devel"
+!define PRODUCT_VERSION "0.47+devel"
+!define PRODUCT_REVISION 3
+!define PRODUCT_VERSION_4 "0.47.0.3"
!define PRODUCT_DIR_REGKEY "Software\Microsoft\Windows\CurrentVersion\App Paths\inkscape.exe"
!define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}"
-;!define DUMMYINSTALL ; define this to make it build quickly, not including any of the files or proper sections, for quick testing of pre-install features of the installer
+;!define DUMMYINSTALL ; Define this to make it build quickly, not including any of the files or code in the sections, for quick testing of features of the installer and development thereof.
; #######################################
; MUI SETTINGS
; #######################################
; MUI 1.67 compatible ------
SetCompressor /SOLID lzma
-RequestExecutionLevel highest
+SetCompressorDictSize 32
+RequestExecutionLevel admin
!include "MUI.nsh"
!include "LogicLib.nsh"
!include "sections.nsh"
; default language first
; Language files
-!include "english.nsh"
-!include "breton.nsh"
-!include "catalan.nsh"
-!include "czech.nsh"
-!include "finnish.nsh"
-!include "french.nsh"
-!include "galician.nsh"
-!include "german.nsh"
-!include "italian.nsh"
-!include "japanese.nsh"
-!include "polish.nsh"
-!include "russian.nsh"
-!include "slovak.nsh"
-!include "slovenian.nsh"
-!include "spanish.nsh"
-!include "tradchinese.nsh"
+!insertmacro MUI_RESERVEFILE_LANGDLL
+!include English.nsh
+!include Breton.nsh
+!include Catalan.nsh
+!include Czech.nsh
+!include Finnish.nsh
+!include French.nsh
+!include Galician.nsh
+!include German.nsh
+!include Italian.nsh
+!include Japanese.nsh
+!include Polish.nsh
+!include Russian.nsh
+!include Slovak.nsh
+!include Slovenian.nsh
+!include Spanish.nsh
+!include SimpChinese.nsh
+!include TradChinese.nsh
ReserveFile "inkscape.nsi.uninstall"
ReserveFile "${NSISDIR}\Plugins\UserInfo.dll"
Name "${PRODUCT_NAME}"
Caption "$(lng_Caption)"
BrandingText "$(lng_Caption)"
-OutFile "Inkscape-${PRODUCT_VERSION}-1.win32.exe"
+!ifndef PRODUCT_REVISION
+OutFile "Inkscape-${PRODUCT_VERSION}.exe"
+!else
+OutFile "Inkscape-${PRODUCT_VERSION}-${PRODUCT_REVISION}.exe"
+!endif
InstallDir "$PROGRAMFILES\Inkscape"
InstallDirRegKey HKLM "${PRODUCT_DIR_REGKEY}" ""
+VIProductVersion "${PRODUCT_VERSION_4}"
+VIAddVersionKey ProductName "${PRODUCT_NAME}"
+VIAddVersionKey Comments "Licensed under the GNU GPL"
+VIAddVersionKey CompanyName "inkscape.org"
+VIAddVersionKey LegalCopyright "© 2009 Inkscape"
+VIAddVersionKey FileDescription "${PRODUCT_NAME}"
+VIAddVersionKey FileVersion "${PRODUCT_VERSION_4}"
+VIAddVersionKey ProductVersion "${PRODUCT_VERSION_4}"
+VIAddVersionKey InternalName "${PRODUCT_NAME}"
+
Var askMultiUser
Var filename
Var MultiUser
; I N S T A L L E R S E C T I O N S
; #######################################
-!ifndef DUMMYINSTALL
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;
!macro delprefs
StrCpy $0 0
- DetailPrint "Delete personal preferences ..."
- DetailPrint "try to find all users ..."
+ DetailPrint "Deleting personal preferences..."
+ DetailPrint "Finding all users..."
${Do}
; FIXME
; this will loop through all the logged users and "virtual" windows users
IntOp $0 $0 + 1
ReadRegStr $2 HKU "$1\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" AppData
${IfThen} $2 == "" ${|} ${Continue} ${|}
- DetailPrint "$2\Inkscape will be removed"
+ DetailPrint "Removing $2\Inkscape"
Delete "$2\Inkscape\preferences.xml"
Delete "$2\Inkscape\extension-errors.log"
RMDir "$2\Inkscape"
;--------------------------------
; Installer Sections
Section -removeInkscape
- ; check for an old installation and clean its DLLs etc.
- FindFirst $0 $1 $INSTDIR\*.*
- ${Do}
- ${IfThen} $1 == "" ${|} ${ExitDo} ${|}
- ${If} $1 == "."
- ${OrIf} $1 == ".."
- FindNext $0 $1
- ${Continue}
- ${EndIf}
- ${If} ${Cmd} ${|} MessageBox MB_RETRYCANCEL|MB_ICONEXCLAMATION "$(lng_ClearDirectoryBefore)" /SD IDCANCEL IDCANCEL ${|}
- FindFirst $0 $1 $INSTDIR\*.*
- ${Continue}
- ${Else}
- ${EndIf}
- ${Loop}
+!ifndef DUMMYINSTALL
;remove the old Inkscape shortcuts from the startmenu
;just in case they are still there
SetShellVarContext current
Delete "$SMPROGRAMS\Inkscape\Inkscape.lnk"
RMDir "$SMPROGRAMS\Inkscape"
Delete "$SMPROGRAMS\Inkscape.lnk"
+!endif
SectionEnd
Section $(lng_Core) SecCore
SectionIn 1 2 3 RO
- DetailPrint "Installing Inkscape Core Files ..."
+!ifndef DUMMYINSTALL
+ DetailPrint "Installing Inkscape core files..."
SetOutPath $INSTDIR
!insertmacro UNINSTALL.LOG_OPEN_INSTALL
SetOverwrite on
!insertmacro UNINSTALL.LOG_OPEN_INSTALL
File /nonfatal /a /r "..\..\inkscape\python\*.*"
!insertmacro UNINSTALL.LOG_CLOSE_INSTALL
+!endif
SectionEnd
Section $(lng_GTKFiles) SecGTK
SectionIn 1 2 3 RO
- DetailPrint "Installing GTK Files ..."
+!ifndef DUMMYINSTALL
+ DetailPrint "Installing GTK files..."
SetOutPath $INSTDIR
!insertmacro UNINSTALL.LOG_OPEN_INSTALL
SetOverwrite on
File /a /r /x "locale" "..\..\inkscape\lib"
File /a /r "..\..\inkscape\etc"
!insertmacro UNINSTALL.LOG_CLOSE_INSTALL
+!endif
SectionEnd
Section -SetCurrentUserOnly
+!ifndef DUMMYINSTALL
StrCpy $MultiUser 0
SetShellVarContext current
+!endif
SectionEnd
Section $(lng_Alluser) SecAlluser
- ; disable this option in Win95/Win98/WinME
SectionIn 1 2 3
+!ifndef DUMMYINSTALL
+ ; disable this option in Win95/Win98/WinME
StrCpy $MultiUser 1
- DetailPrint "admin mode, registry root will be HKLM"
+ DetailPrint "Installing in administrator mode (registry root will be HKLM)"
SetShellVarContext all
+!endif
SectionEnd
SectionGroup $(lng_Shortcuts) SecShortcuts
-Section /o $(lng_Desktop) SecDesktop
- ClearErrors
+Section $(lng_Desktop) SecDesktop
+!ifndef DUMMYINSTALL
CreateShortCut "$DESKTOP\Inkscape.lnk" "$INSTDIR\inkscape.exe"
- ${IfThen} ${Errors} ${|} DetailPrint "Uups! Problems creating desktop shortcuts" ${|}
+!endif
SectionEnd
-Section /o $(lng_Quicklaunch) SecQuicklaunch
- ClearErrors
+Section $(lng_Quicklaunch) SecQuicklaunch
+!ifndef DUMMYINSTALL
${IfThen} $QUICKLAUNCH != $TEMP ${|} CreateShortCut "$QUICKLAUNCH\Inkscape.lnk" "$INSTDIR\inkscape.exe" ${|}
- ${IfThen} ${Errors} ${|} DetailPrint "Uups! Problems creating quicklaunch shortcuts" ${|}
+!endif
SectionEnd
Section $(lng_SVGWriter) SecSVGWriter
SectionIn 1 2 3
- ; create file associations, test before if needed
- DetailPrint "creating file associations"
- ClearErrors
+!ifndef DUMMYINSTALL
+ DetailPrint "Associating SVG files with Inkscape"
ReadRegStr $0 HKCR ".svg" ""
${If} $0 == ""
- WriteRegStr HKCR ".svg" "" "svgfile"
+ StrCpy $0 svgfile
+ WriteRegStr HKCR ".svg" "" $0
WriteRegStr HKCR "svgfile" "" "Scalable Vector Graphics file"
${EndIf}
+ WriteRegStr HKCR "$0\shell\edit\command" "" `"$INSTDIR\Inkscape.exe" "%1"`
+
ReadRegStr $0 HKCR ".svgz" ""
${If} $0 == ""
- WriteRegStr HKCR ".svgz" "" "svgfile"
+ StrCpy $0 svgfile
+ WriteRegStr HKCR ".svgz" "" $0
WriteRegStr HKCR "svgfile" "" "Scalable Vector Graphics file"
${EndIf}
- ${IfThen} ${Errors} ${|} DetailPrint "Uups! Problems creating file assoziations for svg writer" ${|}
-
- DetailPrint "creating default editor"
- ClearErrors
- ReadRegStr $0 HKCR ".svg" ""
- WriteRegStr HKCR "$0\shell\edit\command" "" '"$INSTDIR\Inkscape.exe" "%1"'
- ReadRegStr $0 HKCR ".svgz" ""
- WriteRegStr HKCR "$0\shell\edit\command" "" '"$INSTDIR\Inkscape.exe" "%1"'
- ${IfThen} ${Errors} ${|} DetailPrint "Uups! Problems creating default editor" ${|}
+ WriteRegStr HKCR "$0\shell\edit\command" "" `"$INSTDIR\Inkscape.exe" "%1"`
+!endif
SectionEnd
Section $(lng_ContextMenu) SecContextMenu
SectionIn 1 2 3
- ; create file associations, test before if needed
- DetailPrint "creating file associations"
- ClearErrors
+!ifndef DUMMYINSTALL
+ DetailPrint "Adding Inkscape to SVG file context menu"
ReadRegStr $0 HKCR ".svg" ""
${If} $0 == ""
- WriteRegStr HKCR ".svg" "" "svgfile"
+ StrCpy $0 svgfile
+ WriteRegStr HKCR ".svg" "" $0
WriteRegStr HKCR "svgfile" "" "Scalable Vector Graphics file"
${EndIf}
+ WriteRegStr HKCR "$0\shell\${PRODUCT_NAME}\command" "" `"$INSTDIR\Inkscape.exe" "%1"`
ReadRegStr $0 HKCR ".svgz" ""
${If} $0 == ""
- WriteRegStr HKCR ".svgz" "" "svgfile"
+ StrCpy $0 svgfile
+ WriteRegStr HKCR ".svgz" "" $0
WriteRegStr HKCR "svgfile" "" "Scalable Vector Graphics file"
${EndIf}
-
- ${IfThen} ${Errors} ${|} DetailPrint "Uups! Problems creating file assoziations for context menu" ${|}
-
- DetailPrint "creating context menue"
- ClearErrors
- ReadRegStr $0 HKCR ".svg" ""
- WriteRegStr HKCR "$0\shell\${PRODUCT_NAME}\command" "" '"$INSTDIR\Inkscape.exe" "%1"'
- ReadRegStr $0 HKCR ".svgz" ""
- WriteRegStr HKCR "$0\shell\${PRODUCT_NAME}\command" "" '"$INSTDIR\Inkscape.exe" "%1"'
- ${IfThen} ${Errors} ${|} DetailPrint "Uups! Problems creating context menue integration" ${|}
+ WriteRegStr HKCR "$0\shell\${PRODUCT_NAME}\command" "" `"$INSTDIR\Inkscape.exe" "%1"`
+!endif
SectionEnd
SectionGroupEnd
Section /o $(lng_DeletePrefs) SecPrefs
+!ifndef DUMMYINSTALL
!insertmacro delprefs
+!endif
SectionEnd
SectionGroup $(lng_Addfiles) SecAddfiles
Section $(lng_Examples) SecExamples
SectionIn 1 2
+!ifndef DUMMYINSTALL
SetOutPath $INSTDIR\share
!insertmacro UNINSTALL.LOG_OPEN_INSTALL
File /nonfatal /a /r /x "*.??*.???*" "..\..\inkscape\share\examples"
!insertmacro UNINSTALL.LOG_CLOSE_INSTALL
+!endif
SectionEnd
Section $(lng_Tutorials) SecTutorials
SectionIn 1 2
+!ifndef DUMMYINSTALL
SetOutPath $INSTDIR\share
!insertmacro UNINSTALL.LOG_OPEN_INSTALL
File /nonfatal /a /r /x "*.??*.???*" "..\..\inkscape\share\tutorials"
!insertmacro UNINSTALL.LOG_CLOSE_INSTALL
+!endif
SectionEnd
SectionGroupEnd
SectionGroup $(lng_Languages) SecLanguages
!macro Language SecName lng
- Section $(lng_${lng}) Sec${SecName}
- SectionIn 1 2 3
+ Section /o $(lng_${lng}) Sec${SecName}
+ ;SectionIn 1 2 3
+!ifndef DUMMYINSTALL
SetOutPath $INSTDIR
!insertmacro UNINSTALL.LOG_OPEN_INSTALL
File /nonfatal /a "..\..\inkscape\*.${lng}.txt" ; FIXME: remove this? No such files.
File /nonfatal /a "..\..\inkscape\share\tutorials\*.${lng}.*"
!insertmacro UNINSTALL.LOG_CLOSE_INSTALL
${EndIf}
+ !endif
SectionEnd
!macroend
Section -FinalizeInstallation
- DetailPrint "finalize installation"
- ${If} $MultiUser = 1
- DetailPrint "admin mode, registry root will be HKLM"
- SetShellVarContext all
- ${Else}
- DetailPrint "single user mode, registry root will be HKCU"
- SetShellVarContext current
- ${EndIf}
+!ifndef DUMMYINSTALL
+ DetailPrint "Finalizing installation"
+ ${IfThen} $MultiUser = 1 ${|} SetShellVarContext all ${|}
+ ${IfThen} $MultiUser != 1 ${|} SetShellVarContext current ${|}
- ; check for writing registry
- ClearErrors
WriteRegStr SHCTX "${PRODUCT_DIR_REGKEY}" "" "$INSTDIR\inkscape.exe"
- ;${If} ${Errors}
- ; DetailPrint "fatal: failed to write to ${PRODUCT_DIR_REGKEY}"
- ; DetailPrint "aborting installation"
- ; Abort
- ;${EndIf}
WriteRegStr SHCTX "${PRODUCT_DIR_REGKEY}" "MultiUser" $MultiUser
WriteRegStr SHCTX "${PRODUCT_DIR_REGKEY}" "askMultiUser" $askMultiUser
WriteRegStr SHCTX "${PRODUCT_DIR_REGKEY}" "User" $User
- ${IfThen} ${Errors} ${|} DetailPrint "Fatal: failed to write to registry installation info" ${|}
; start menu entries
- ClearErrors
- CreateShortCut "$SMPROGRAMS\Inkscape.lnk" "$INSTDIR\inkscape.exe"
- ${IfThen} ${Errors} ${|} DetailPrint "Fatal: failed to write to start menu info" ${|}
+ CreateShortcut "$SMPROGRAMS\Inkscape.lnk" "$INSTDIR\inkscape.exe"
; uninstall settings
- ClearErrors
; WriteUninstaller "$INSTDIR\uninst.exe"
WriteRegExpandStr SHCTX "${PRODUCT_UNINST_KEY}" "UninstallString" "${UNINST_EXE}"
- WriteRegExpandStr SHCTX "${PRODUCT_UNINST_KEY}" "InstallDir" "$INSTDIR"
- WriteRegExpandStr SHCTX "${PRODUCT_UNINST_KEY}" "InstallLocation" "$INSTDIR"
+ WriteRegExpandStr SHCTX "${PRODUCT_UNINST_KEY}" "InstallDir" $INSTDIR
+ WriteRegExpandStr SHCTX "${PRODUCT_UNINST_KEY}" "InstallLocation" $INSTDIR
WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "DisplayName" "${PRODUCT_NAME} ${PRODUCT_VERSION}"
WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "DisplayIcon" "$INSTDIR\Inkscape.exe,0"
WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}"
- WriteRegDWORD SHCTX "${PRODUCT_UNINST_KEY}" "NoModify" "1"
- WriteRegDWORD SHCTX "${PRODUCT_UNINST_KEY}" "NoRepair" "1"
- ${IfThen} ${Errors} ${|} DetailPrint "fatal: failed to write to registry un-installation info" ${|}
+ WriteRegDWORD SHCTX "${PRODUCT_UNINST_KEY}" "NoModify" 1
+ WriteRegDWORD SHCTX "${PRODUCT_UNINST_KEY}" "NoRepair" 1
;create/update log always within .onInstSuccess function
!insertmacro UNINSTALL.LOG_UPDATE_INSTALL
- DetailPrint "Creating MD5 checksums..."
+ DetailPrint "Creating MD5 checksums"
ClearErrors
FileOpen $0 $INSTDIR\Uninstall.dat r
FileOpen $9 $INSTDIR\Uninstall.log w
FileClose $9
; Not needed any more
Delete $INSTDIR\Uninstall.dat
+!endif
SectionEnd
; Last the Descriptions
!macroend
Function .onInit
+ !insertmacro MUI_LANGDLL_DISPLAY
+
+ !macro LanguageAutoSelect SecName LocaleID
+ ${If} $LANGUAGE = ${LocaleID}
+ SectionGetFlags ${Sec${SecName}} $0
+ IntOp $0 $0 | ${SF_SELECTED}
+ SectionSetFlags ${Sec${SecName}} $0
+ ${EndIf}
+ !macroend
+
+ ;!insertmacro LanguageAutoSelect English 1033
+ !insertmacro LanguageAutoSelect Breton 1150
+ !insertmacro LanguageAutoSelect Catalan 1027
+ !insertmacro LanguageAutoSelect Czech 1029
+ !insertmacro LanguageAutoSelect Finnish 1035
+ !insertmacro LanguageAutoSelect French 1036
+ !insertmacro LanguageAutoSelect Gallegan 1110 ; Galician, but section is called Gallegan
+ !insertmacro LanguageAutoSelect German 1031
+ !insertmacro LanguageAutoSelect Italian 1040
+ !insertmacro LanguageAutoSelect Japanese 1041
+ !insertmacro LanguageAutoSelect Polish 1045
+ !insertmacro LanguageAutoSelect Russian 1049
+ !insertmacro LanguageAutoSelect Slovak 1051
+ !insertmacro LanguageAutoSelect Slovenian 1060
+ !insertmacro LanguageAutoSelect Spanish 1034
+ !insertmacro LanguageAutoSelect ChineseTaiwan 1028 ; TradChinese, but section is called ChineseTaiwan
+
${GetParameters} $CMDARGS
;prepare log always within .onInit function
!insertmacro UNINSTALL.LOG_PREPARE_INSTALL
ClearErrors
UserInfo::GetName
${If} ${Errors}
- # This one means you don't need to care about admin or
- # not admin because Windows 9x doesn't either
+ ; This one means you don't need to care about admin or
+ ; not admin because Windows 9x doesn't either
${IfCmd} MessageBox MB_OKCANCEL|MB_ICONEXCLAMATION "$(lng_NOT_SUPPORTED)$(lng_OK_CANCEL_DESC)" /SD IDOK IDCANCEL ${||} Quit ${|}
${Else}
Pop $User
${EndIf}
${If} $R0 != ""
${AndIf} ${Cmd} ${|} MessageBox MB_YESNO|MB_ICONEXCLAMATION $(lng_WANT_UNINSTALL_BEFORE) /SD IDNO IDYES ${|}
- ;Run the uninstaller
- DetailPrint "Execute $R0 in $INSTDIR"
- ClearErrors
- ExecWait '$R0 _?=$INSTDIR' ;Do not copy the uninstaller to a temp file
+ ExecWait $R0 ;Was '$R0 _?=$INSTDIR' but we do NOT want it leaving the uninstaller behind.
${EndIf}
; proccess command line parameter
!insertmacro MUI_HEADER_TEXT "$(lng_UInstOpt)" "$(lng_UInstOpt1)"
!insertmacro MUI_INSTALLOPTIONS_WRITE "inkscape.nsi.uninstall" "Field 1" "Text" "$APPDATA\Inkscape\"
!insertmacro MUI_INSTALLOPTIONS_WRITE "inkscape.nsi.uninstall" "Field 2" "Text" "$(lng_PurgePrefs)"
-
!insertmacro MUI_INSTALLOPTIONS_DISPLAY "inkscape.nsi.uninstall"
!insertmacro MUI_INSTALLOPTIONS_READ $MultiUser "inkscape.nsi.uninstall" "Field 2" "State"
- DetailPrint "keepfiles = $MultiUser"
- ;MessageBox MB_OK "adminmode = $MultiUser MultiUserOS = $askMultiUser"
-
FunctionEnd
Function un.onInit
FunctionEnd
Section Uninstall
+!ifndef DUMMYINSTALL
; remove personal settings
Delete "$APPDATA\Inkscape\extension-errors.log"
${If} $MultiUser = 0
- DetailPrint "purge personal settings in $APPDATA\Inkscape"
+ DetailPrint "Purging personal settings in $APPDATA\Inkscape"
;RMDir /r "$APPDATA\Inkscape"
!insertmacro delprefs
${EndIf}
StrCpy $3 "svg"
${For} $2 0 1
${IfThen} $2 = 1 ${|} StrCpy $3 $3z ${|}
- DetailPrint "removing file associations for $3 editor"
+ DetailPrint "Removing file associations for $3 editor"
ClearErrors
ReadRegStr $0 HKCR ".$3" ""
- DetailPrint ".$3 associated as $0"
${IfNot} ${Errors}
ReadRegStr $1 HKCR "$0\shell\edit\command" ""
- ${IfNotThen} ${Errors} ${|} DetailPrint "$3 editor is $1" ${|}
- ${If} $1 == '"$INSTDIR\Inkscape.exe" "%1"'
- DetailPrint "removing default .$3 editor"
+ ${If} $1 == `"$INSTDIR\Inkscape.exe" "%1"`
DeleteRegKey HKCR "$0\shell\edit\command"
${EndIf}
ClearErrors
ReadRegStr $1 HKCR "$0\shell\open\command" ""
- ${IfNotThen} ${Errors} ${|} DetailPrint "$3 viewer is $1" ${|}
- ${If} $1 == '"$INSTDIR\Inkscape.exe" "%1"'
- DetailPrint "removing default .$3 viewer"
+ ${If} $1 == `"$INSTDIR\Inkscape.exe" "%1"`
DeleteRegKey HKCR "$0\shell\open\command"
${EndIf}
- DetailPrint "removing default .$3 context menu"
DeleteRegKey HKCR "$0\shell\${PRODUCT_NAME}"
DeleteRegKey /ifempty HKCR "$0\shell\edit"
DeleteRegKey /ifempty HKCR "$0\shell\open"
DeleteRegKey /ifempty HKCR "$0\shell"
DeleteRegKey /ifempty HKCR "$0"
-
- ClearErrors
- ReadRegStr $1 HKCR $0 ""
- ${If} ${Errors} ; Formerly ${If} $1 == ""
- DetailPrint "removing filetype .$3 $0"
- DeleteRegKey HKCR ".$3"
- ${EndIf}
+ DeleteRegKey /ifempty HKCR ".$3"
${EndIf}
${Next}
SetShellVarContext all
- DetailPrint "removing product regkey"
DeleteRegKey SHCTX "${PRODUCT_DIR_REGKEY}"
- DetailPrint "removing uninstall info"
DeleteRegKey SHCTX "${PRODUCT_UNINST_KEY}"
- DetailPrint "removing shortcuts"
Delete "$DESKTOP\Inkscape.lnk"
Delete "$QUICKLAUNCH\Inkscape.lnk"
Delete "$SMPROGRAMS\Inkscape.lnk"
RMDir "$SMPROGRAMS\Inkscape"
SetShellVarContext current
- DetailPrint "removing product regkey"
DeleteRegKey SHCTX "${PRODUCT_DIR_REGKEY}"
- DetailPrint "removing uninstall info"
DeleteRegKey SHCTX "${PRODUCT_UNINST_KEY}"
- DetailPrint "removing shortcuts"
Delete "$DESKTOP\Inkscape.lnk"
Delete "$QUICKLAUNCH\Inkscape.lnk"
Delete "$SMPROGRAMS\Inkscape.lnk"
Delete "$SMPROGRAMS\Inkscape\Inkscape.lnk"
RMDir "$SMPROGRAMS\Inkscape"
- DetailPrint "removing uninstall info"
-
InitPluginsDir
SetPluginUnload manual
StrLen $2 $1
${IfThen} $2 <= 35 ${|} ${Continue} ${|}
StrCpy $3 $1 32
- StrCpy $filename $1 $2-36 34 #remove trailing CR/LF
+ StrCpy $filename $1 $2-36 34 ;remove trailing CR/LF
StrCpy $filename $filename -2
; $3 = MD5 when installed, then deletion choice
; $filename = file
${EndIf}
${EndIf}
- ${If} $3 = 1 ; yes
+ ${If} $3 = 1 ; yes
${OrIf} $3 = 2 ; always
; Remove File
ClearErrors
${IfThen} ${Errors} ${|} ${ExitDo} ${|}
${Loop}
${EndIf}
- ${EndIf} ; complaining there's no opening if
+ ${EndIf}
${Loop}
${EndIf}
FileClose $0
RMDir "$INSTDIR\plugins"
RMDir $INSTDIR
SetAutoClose false
-SectionEnd
-!else
-Section "This is a dummy section, which doesn't do anything" null
-SectionEnd
!endif
+SectionEnd