mirror of
https://github.com/dashpay/dash.git
synced 2024-12-25 12:02:48 +01:00
Added NSIS installer generation script
This commit is contained in:
parent
f01a4ca4e2
commit
f13dff6977
138
setup.nsi
Normal file
138
setup.nsi
Normal file
@ -0,0 +1,138 @@
|
|||||||
|
# Auto-generated by EclipseNSIS Script Wizard
|
||||||
|
# 3.10.2009 19:00:28
|
||||||
|
|
||||||
|
Name Bitcoin
|
||||||
|
|
||||||
|
# General Symbol Definitions
|
||||||
|
!define REGKEY "SOFTWARE\$(^Name)"
|
||||||
|
!define VERSION 0.1.6
|
||||||
|
!define COMPANY "Bitcoin project"
|
||||||
|
!define URL http://bitcoin.sourceforge.net/
|
||||||
|
|
||||||
|
# MUI Symbol Definitions
|
||||||
|
!define MUI_ICON "rc\bitcoin.ico"
|
||||||
|
!define MUI_FINISHPAGE_NOAUTOCLOSE
|
||||||
|
!define MUI_STARTMENUPAGE_REGISTRY_ROOT HKLM
|
||||||
|
!define MUI_STARTMENUPAGE_REGISTRY_KEY ${REGKEY}
|
||||||
|
!define MUI_STARTMENUPAGE_REGISTRY_VALUENAME StartMenuGroup
|
||||||
|
!define MUI_STARTMENUPAGE_DEFAULTFOLDER Bitcoin
|
||||||
|
!define MUI_FINISHPAGE_RUN $INSTDIR\bitcoin.exe
|
||||||
|
!define MUI_UNICON "${NSISDIR}\Contrib\Graphics\Icons\modern-uninstall.ico"
|
||||||
|
!define MUI_UNFINISHPAGE_NOAUTOCLOSE
|
||||||
|
|
||||||
|
# Included files
|
||||||
|
!include Sections.nsh
|
||||||
|
!include MUI2.nsh
|
||||||
|
|
||||||
|
# Variables
|
||||||
|
Var StartMenuGroup
|
||||||
|
|
||||||
|
# Installer pages
|
||||||
|
!insertmacro MUI_PAGE_WELCOME
|
||||||
|
!insertmacro MUI_PAGE_DIRECTORY
|
||||||
|
!insertmacro MUI_PAGE_STARTMENU Application $StartMenuGroup
|
||||||
|
!insertmacro MUI_PAGE_INSTFILES
|
||||||
|
!insertmacro MUI_PAGE_FINISH
|
||||||
|
!insertmacro MUI_UNPAGE_CONFIRM
|
||||||
|
!insertmacro MUI_UNPAGE_INSTFILES
|
||||||
|
|
||||||
|
# Installer languages
|
||||||
|
!insertmacro MUI_LANGUAGE English
|
||||||
|
|
||||||
|
# Installer attributes
|
||||||
|
OutFile Bitcoin_0.1.6_setup.exe
|
||||||
|
InstallDir $PROGRAMFILES\Bitcoin
|
||||||
|
CRCCheck on
|
||||||
|
XPStyle on
|
||||||
|
ShowInstDetails show
|
||||||
|
VIProductVersion 0.1.6.0
|
||||||
|
VIAddVersionKey ProductName Bitcoin
|
||||||
|
VIAddVersionKey ProductVersion "${VERSION}"
|
||||||
|
VIAddVersionKey CompanyName "${COMPANY}"
|
||||||
|
VIAddVersionKey CompanyWebsite "${URL}"
|
||||||
|
VIAddVersionKey FileVersion "${VERSION}"
|
||||||
|
VIAddVersionKey FileDescription ""
|
||||||
|
VIAddVersionKey LegalCopyright ""
|
||||||
|
InstallDirRegKey HKLM "${REGKEY}" Path
|
||||||
|
ShowUninstDetails show
|
||||||
|
|
||||||
|
# Installer sections
|
||||||
|
Section -Main SEC0000
|
||||||
|
SetOutPath $INSTDIR
|
||||||
|
SetOverwrite on
|
||||||
|
File bitcoin.exe
|
||||||
|
File libeay32.dll
|
||||||
|
File mingwm10.dll
|
||||||
|
WriteRegStr HKLM "${REGKEY}\Components" Main 1
|
||||||
|
SectionEnd
|
||||||
|
|
||||||
|
Section -post SEC0001
|
||||||
|
WriteRegStr HKLM "${REGKEY}" Path $INSTDIR
|
||||||
|
SetOutPath $INSTDIR
|
||||||
|
WriteUninstaller $INSTDIR\uninstall.exe
|
||||||
|
!insertmacro MUI_STARTMENU_WRITE_BEGIN Application
|
||||||
|
SetOutPath $SMPROGRAMS\$StartMenuGroup
|
||||||
|
CreateShortcut "$SMPROGRAMS\$StartMenuGroup\Bitcoin.lnk" $INSTDIR\bitcoin.exe
|
||||||
|
CreateShortcut "$SMPROGRAMS\$StartMenuGroup\Uninstall Bitcoin.lnk" $INSTDIR\uninstall.exe
|
||||||
|
!insertmacro MUI_STARTMENU_WRITE_END
|
||||||
|
WriteRegStr HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)" DisplayName "$(^Name)"
|
||||||
|
WriteRegStr HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)" DisplayVersion "${VERSION}"
|
||||||
|
WriteRegStr HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)" Publisher "${COMPANY}"
|
||||||
|
WriteRegStr HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)" URLInfoAbout "${URL}"
|
||||||
|
WriteRegStr HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)" DisplayIcon $INSTDIR\uninstall.exe
|
||||||
|
WriteRegStr HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)" UninstallString $INSTDIR\uninstall.exe
|
||||||
|
WriteRegDWORD HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)" NoModify 1
|
||||||
|
WriteRegDWORD HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)" NoRepair 1
|
||||||
|
SectionEnd
|
||||||
|
|
||||||
|
# Macro for selecting uninstaller sections
|
||||||
|
!macro SELECT_UNSECTION SECTION_NAME UNSECTION_ID
|
||||||
|
Push $R0
|
||||||
|
ReadRegStr $R0 HKLM "${REGKEY}\Components" "${SECTION_NAME}"
|
||||||
|
StrCmp $R0 1 0 next${UNSECTION_ID}
|
||||||
|
!insertmacro SelectSection "${UNSECTION_ID}"
|
||||||
|
GoTo done${UNSECTION_ID}
|
||||||
|
next${UNSECTION_ID}:
|
||||||
|
!insertmacro UnselectSection "${UNSECTION_ID}"
|
||||||
|
done${UNSECTION_ID}:
|
||||||
|
Pop $R0
|
||||||
|
!macroend
|
||||||
|
|
||||||
|
# Uninstaller sections
|
||||||
|
Section /o -un.Main UNSEC0000
|
||||||
|
Delete /REBOOTOK $INSTDIR\mingwm10.dll
|
||||||
|
Delete /REBOOTOK $INSTDIR\libeay32.dll
|
||||||
|
Delete /REBOOTOK $INSTDIR\bitcoin.exe
|
||||||
|
DeleteRegValue HKLM "${REGKEY}\Components" Main
|
||||||
|
SectionEnd
|
||||||
|
|
||||||
|
Section -un.post UNSEC0001
|
||||||
|
DeleteRegKey HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)"
|
||||||
|
Delete /REBOOTOK "$SMPROGRAMS\$StartMenuGroup\Uninstall Bitcoin.lnk"
|
||||||
|
Delete /REBOOTOK "$SMPROGRAMS\$StartMenuGroup\Bitcoin.lnk"
|
||||||
|
Delete /REBOOTOK $INSTDIR\uninstall.exe
|
||||||
|
DeleteRegValue HKLM "${REGKEY}" StartMenuGroup
|
||||||
|
DeleteRegValue HKLM "${REGKEY}" Path
|
||||||
|
DeleteRegKey /IfEmpty HKLM "${REGKEY}\Components"
|
||||||
|
DeleteRegKey /IfEmpty HKLM "${REGKEY}"
|
||||||
|
RmDir /REBOOTOK $SMPROGRAMS\$StartMenuGroup
|
||||||
|
RmDir /REBOOTOK $INSTDIR
|
||||||
|
Push $R0
|
||||||
|
StrCpy $R0 $StartMenuGroup 1
|
||||||
|
StrCmp $R0 ">" no_smgroup
|
||||||
|
no_smgroup:
|
||||||
|
Pop $R0
|
||||||
|
SectionEnd
|
||||||
|
|
||||||
|
# Installer functions
|
||||||
|
Function .onInit
|
||||||
|
InitPluginsDir
|
||||||
|
FunctionEnd
|
||||||
|
|
||||||
|
# Uninstaller functions
|
||||||
|
Function un.onInit
|
||||||
|
ReadRegStr $INSTDIR HKLM "${REGKEY}" Path
|
||||||
|
!insertmacro MUI_STARTMENU_GETFOLDER Application $StartMenuGroup
|
||||||
|
!insertmacro SELECT_UNSECTION Main ${UNSEC0000}
|
||||||
|
FunctionEnd
|
||||||
|
|
Loading…
Reference in New Issue
Block a user