mirror of https://github.com/GOSTSec/gostcoin
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
163 lines
6.0 KiB
163 lines
6.0 KiB
8 years ago
|
Name Anoncoin
|
||
|
|
||
|
RequestExecutionLevel highest
|
||
|
SetCompressor /SOLID lzma
|
||
|
|
||
|
# General Symbol Definitions
|
||
|
!define REGKEY "SOFTWARE\$(^Name)"
|
||
|
!define VERSION 0.8.5.1
|
||
|
!define COMPANY "Anoncoin project"
|
||
|
!define URL https://anoncoin/
|
||
|
|
||
|
# MUI Symbol Definitions
|
||
|
!define MUI_ICON "../share/pixmaps/bitcoin.ico"
|
||
|
!define MUI_WELCOMEFINISHPAGE_BITMAP "../share/pixmaps/nsis-wizard.bmp"
|
||
|
!define MUI_HEADERIMAGE
|
||
|
!define MUI_HEADERIMAGE_RIGHT
|
||
|
!define MUI_HEADERIMAGE_BITMAP "../share/pixmaps/nsis-header.bmp"
|
||
|
!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 Anoncoin
|
||
|
!define MUI_FINISHPAGE_RUN $INSTDIR\anoncoin-qt.exe
|
||
|
!define MUI_UNICON "${NSISDIR}\Contrib\Graphics\Icons\modern-uninstall.ico"
|
||
|
!define MUI_UNWELCOMEFINISHPAGE_BITMAP "../share/pixmaps/nsis-wizard.bmp"
|
||
|
!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 anoncoin-0.8.5.1-win32-setup.exe
|
||
|
InstallDir $PROGRAMFILES\Anoncoin
|
||
|
CRCCheck on
|
||
|
XPStyle on
|
||
|
BrandingText " "
|
||
|
ShowInstDetails show
|
||
|
VIProductVersion 0.8.5.1
|
||
|
VIAddVersionKey ProductName Anoncoin
|
||
|
VIAddVersionKey ProductVersion "${VERSION}"
|
||
|
VIAddVersionKey CompanyName "${COMPANY}"
|
||
|
VIAddVersionKey CompanyWebsite "${URL}"
|
||
|
VIAddVersionKey FileVersion "${VERSION}"
|
||
|
VIAddVersionKey FileDescription ""
|
||
|
VIAddVersionKey LegalCopyright ""
|
||
|
InstallDirRegKey HKCU "${REGKEY}" Path
|
||
|
ShowUninstDetails show
|
||
|
|
||
|
# Installer sections
|
||
|
Section -Main SEC0000
|
||
|
SetOutPath $INSTDIR
|
||
|
SetOverwrite on
|
||
|
File ../release/anoncoin-qt.exe
|
||
|
File /oname=COPYING.txt ../COPYING
|
||
|
File /oname=readme.txt ../doc/README_windows.txt
|
||
|
SetOutPath $INSTDIR\daemon
|
||
|
File ../src/anoncoind.exe
|
||
|
SetOutPath $INSTDIR\src
|
||
|
File /r /x *.exe /x *.o ../src\*.*
|
||
|
SetOutPath $INSTDIR
|
||
|
WriteRegStr HKCU "${REGKEY}\Components" Main 1
|
||
|
|
||
|
# Remove old wxwidgets-based-bitcoin executable and locales:
|
||
|
Delete /REBOOTOK $INSTDIR\anoncoin.exe
|
||
|
RMDir /r /REBOOTOK $INSTDIR\locale
|
||
|
SectionEnd
|
||
|
|
||
|
Section -post SEC0001
|
||
|
WriteRegStr HKCU "${REGKEY}" Path $INSTDIR
|
||
|
SetOutPath $INSTDIR
|
||
|
WriteUninstaller $INSTDIR\uninstall.exe
|
||
|
!insertmacro MUI_STARTMENU_WRITE_BEGIN Application
|
||
|
CreateDirectory $SMPROGRAMS\$StartMenuGroup
|
||
|
CreateShortcut "$SMPROGRAMS\$StartMenuGroup\Anoncoin.lnk" $INSTDIR\anoncoin-qt.exe
|
||
|
CreateShortcut "$SMPROGRAMS\$StartMenuGroup\Uninstall Anoncoin.lnk" $INSTDIR\uninstall.exe
|
||
|
!insertmacro MUI_STARTMENU_WRITE_END
|
||
|
WriteRegStr HKCU "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)" DisplayName "$(^Name)"
|
||
|
WriteRegStr HKCU "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)" DisplayVersion "${VERSION}"
|
||
|
WriteRegStr HKCU "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)" Publisher "${COMPANY}"
|
||
|
WriteRegStr HKCU "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)" URLInfoAbout "${URL}"
|
||
|
WriteRegStr HKCU "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)" DisplayIcon $INSTDIR\uninstall.exe
|
||
|
WriteRegStr HKCU "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)" UninstallString $INSTDIR\uninstall.exe
|
||
|
WriteRegDWORD HKCU "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)" NoModify 1
|
||
|
WriteRegDWORD HKCU "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)" NoRepair 1
|
||
|
WriteRegStr HKCR "anoncoin" "URL Protocol" ""
|
||
|
WriteRegStr HKCR "anoncoin" "" "URL:Anoncoin"
|
||
|
WriteRegStr HKCR "anoncoin\DefaultIcon" "" $INSTDIR\anoncoin-qt.exe
|
||
|
WriteRegStr HKCR "anoncoin\shell\open\command" "" '"$INSTDIR\anoncoin-qt.exe" "%1"'
|
||
|
SectionEnd
|
||
|
|
||
|
# Macro for selecting uninstaller sections
|
||
|
!macro SELECT_UNSECTION SECTION_NAME UNSECTION_ID
|
||
|
Push $R0
|
||
|
ReadRegStr $R0 HKCU "${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\anoncoin-qt.exe
|
||
|
Delete /REBOOTOK $INSTDIR\COPYING.txt
|
||
|
Delete /REBOOTOK $INSTDIR\readme.txt
|
||
|
RMDir /r /REBOOTOK $INSTDIR\daemon
|
||
|
RMDir /r /REBOOTOK $INSTDIR\src
|
||
|
DeleteRegValue HKCU "${REGKEY}\Components" Main
|
||
|
SectionEnd
|
||
|
|
||
|
Section -un.post UNSEC0001
|
||
|
DeleteRegKey HKCU "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)"
|
||
|
Delete /REBOOTOK "$SMPROGRAMS\$StartMenuGroup\Uninstall Anoncoin.lnk"
|
||
|
Delete /REBOOTOK "$SMPROGRAMS\$StartMenuGroup\Anoncoin.lnk"
|
||
|
Delete /REBOOTOK "$SMSTARTUP\Anoncoin.lnk"
|
||
|
Delete /REBOOTOK $INSTDIR\uninstall.exe
|
||
|
Delete /REBOOTOK $INSTDIR\debug.log
|
||
|
Delete /REBOOTOK $INSTDIR\db.log
|
||
|
DeleteRegValue HKCU "${REGKEY}" StartMenuGroup
|
||
|
DeleteRegValue HKCU "${REGKEY}" Path
|
||
|
DeleteRegKey /IfEmpty HKCU "${REGKEY}\Components"
|
||
|
DeleteRegKey /IfEmpty HKCU "${REGKEY}"
|
||
|
DeleteRegKey HKCR "anoncoin"
|
||
|
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 HKCU "${REGKEY}" Path
|
||
|
!insertmacro MUI_STARTMENU_GETFOLDER Application $StartMenuGroup
|
||
|
!insertmacro SELECT_UNSECTION Main ${UNSEC0000}
|
||
|
FunctionEnd
|