Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/EionRobb/skype4pidgin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEion Robb <eion@robbmob.com>2008-03-05 07:30:12 +0300
committerEion Robb <eion@robbmob.com>2008-03-05 07:30:12 +0300
commit9a83ce518ed2563e7f9150bde2140a306c189438 (patch)
tree3ee9c9ce82b0849cd3c1d90f113c4592aa74467c /skype4pidgin.nsi
parentbb2031a60450d36719fa63414d4b8503f77db6b3 (diff)
Modifications to NSI file so that it (should) install
Diffstat (limited to 'skype4pidgin.nsi')
-rwxr-xr-xskype4pidgin.nsi172
1 files changed, 68 insertions, 104 deletions
diff --git a/skype4pidgin.nsi b/skype4pidgin.nsi
index 7a93ef6..b583f70 100755
--- a/skype4pidgin.nsi
+++ b/skype4pidgin.nsi
@@ -1,32 +1,11 @@
-; Script based on generated HM NIS Edit Script Wizard.
-; Forgive me, i am new at this. -- {paul,ian}@cypherpunks.ca
-;
-; known issue. installer induced uninstaller abortion causes overwrite
-; by installer without uninstall.
-; v3.1.0 - New source version. Install and uninstall i18n files.
-; v3.0.0 - Version for pidgin-2.0.0
-; v3.0.0 - Bump version number.
-; v2.0.2 - Bump version number.
-; v2.0.1 - Bump version number.
-; v2.0.0-2 - linking to libotr-2.0.1
-; v2.0.0 - Bump version number. Fixed upgrading gaim2-otr (it didn't overwrite the dll)
-; bug reported by Aldert Hazenberg <aldert@xelerance.com>
-; - Added many safeguards and fixed conditions of failures when gaim is running
-; during install, or failed to (un)install previously.
-; - Removed popup signifying gaim is found
-; v1.99.0-1 - Bump version number, install Protocol.txt file
-; v1.0.3-2 - Fix for detecting gaim if not installed by Administrator
-; bug report by Joanna Rutkowska <joanna@mailsnare.net>
-; - Fix for uninstalling the dll when not installed as Administrator
-; v1.0.3 - Initial version
-
+; Script based on Off-the-Record Messaging NSI file
; todo: SetBrandingImage
; HM NIS Edit Wizard helper defines
-!define PRODUCT_NAME "pidgin-otr"
-!define PRODUCT_VERSION "3.1.0-1"
-!define PRODUCT_PUBLISHER "Cypherpunks CA"
-!define PRODUCT_WEB_SITE "http://otr.cypherpunks.ca/"
+!define PRODUCT_NAME "skype4pidgin"
+!define PRODUCT_VERSION "5-May-2008"
+!define PRODUCT_PUBLISHER "Eion Robb"
+!define PRODUCT_WEB_SITE "http://skype4pidgin.googlecode.com/"
!define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}"
!define PRODUCT_UNINST_ROOT_KEY "HKLM"
@@ -41,7 +20,7 @@
; Welcome page
!insertmacro MUI_PAGE_WELCOME
; License page
-!insertmacro MUI_PAGE_LICENSE "c:\otr\COPYING.txt"
+!insertmacro MUI_PAGE_LICENSE
; Directory page
!insertmacro MUI_PAGE_DIRECTORY
; Instfiles page
@@ -60,9 +39,9 @@
Name "${PRODUCT_NAME} ${PRODUCT_VERSION}"
OutFile "${PRODUCT_NAME}-${PRODUCT_VERSION}.exe"
-InstallDir "$PROGRAMFILES\pidgin-otr"
-InstallDirRegKey HKEY_LOCAL_MACHINE SOFTWARE\pidgin-otr "Install_Dir"
-;WriteRegStr HKLM "SOFTWARE\pidgin-otr" "pidgindir" ""
+InstallDir "$PROGRAMFILES\skype4pidgin"
+InstallDirRegKey HKEY_LOCAL_MACHINE SOFTWARE\skype4pidgin "Install_Dir"
+;WriteRegStr HKLM "SOFTWARE\skype4pidgin" "pidgindir" ""
Var "PidginDir"
@@ -76,44 +55,46 @@ Section "MainSection" SEC01
Call UnInstOld
;Check for pidgin installation
Call GetPidginInstPath
- WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "SOFTWARE\pidgin-otr" "pidgindir" "$PidginDir"
-
- SetOutPath "$PidginDir\locale"
- SetOverwrite on
- ; What the next line means is to recursively search c:\otr\locale
- ; and install all files under there named pidgin-otr.mo
- File /r "c:\otr\locale\pidgin-otr.mo"
+ WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "SOFTWARE\skype4pidgin" "pidgindir" "$PidginDir"
+ SetOutPath "$PidginDir\pixmaps\pidgin\protocols\16"
+ SetOverwrite on
+ File "16\skype.png"
+
+ SetOutPath "$PidginDir\pixmaps\pidgin\protocols\22"
+ SetOverwrite on
+ File "22\skype.png"
+
+ SetOutPath "$PidginDir\pixmaps\pidgin\protocols\48"
+ SetOverwrite on
+ File "48\skype.png"
+
+ CreateDirectory "$PidginDir\pixmaps\pidgin\emotes\skype"
+ SetOutPath "$PidginDir\pixmaps\pidgin\emotes\skype"
+ SetOverwrite on
+ File "theme"
+
SetOutPath "$INSTDIR"
SetOverwrite on
- File "c:\otr\pidgin-otr.dll"
+ File "libskype.dll"
; move to pidgin plugin directory, check if not busy (pidgin is running)
call CopyDLL
; hard part is done, do the rest now.
- SetOverwrite on
- File "c:\otr\README.Toolkit.txt"
- File "c:\otr\README.txt"
- File "c:\otr\Protocol-v2.html"
- File "c:\otr\COPYING.txt"
- File "c:\otr\COPYING.LIB.txt"
- File "c:\otr\otr_mackey.exe"
- File "c:\otr\otr_modify.exe"
- File "c:\otr\otr_parse.exe"
- File "c:\otr\otr_readforge.exe"
- File "c:\otr\otr_remac.exe"
- File "c:\otr\otr_sesskeys.exe"
- File "c:\otr\pidgin-otr.nsi"
+ SetOverwrite on
+ File "skype4pidgin.nsi"
+ File "README.txt"
+ File "CHANGELOG.txt"
SectionEnd
Section -AdditionalIcons
- CreateDirectory "$SMPROGRAMS\pidgin-otr"
- CreateShortCut "$SMPROGRAMS\pidgin-otr\Uninstall.lnk" "$INSTDIR\pidgin-otr-uninst.exe"
+ CreateDirectory "$SMPROGRAMS\skype4pidgin"
+ CreateShortCut "$SMPROGRAMS\skype4pidgin\Uninstall.lnk" "$INSTDIR\skype4pidgin-uninst.exe"
SectionEnd
Section -Post
- WriteUninstaller "$INSTDIR\pidgin-otr-uninst.exe"
+ WriteUninstaller "$INSTDIR\skype4pidgin-uninst.exe"
WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayName" "$(^Name)"
- WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "UninstallString" "$INSTDIR\pidgin-otr-uninst.exe"
+ WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "UninstallString" "$INSTDIR\skype4pidgin-uninst.exe"
WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}"
WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "URLInfoAbout" "${PRODUCT_WEB_SITE}"
WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "Publisher" "${PRODUCT_PUBLISHER}"
@@ -131,54 +112,37 @@ Function un.onInit
FunctionEnd
Section Uninstall
- Delete "$INSTDIR\pidgin-otr-uninst.exe"
- Delete "$INSTDIR\README.Toolkit.txt"
+ Delete "$INSTDIR\skype4pidgin-uninst.exe"
Delete "$INSTDIR\README.txt"
- Delete "$INSTDIR\Protocol-v2.txt"
- Delete "$INSTDIR\COPYING.txt"
- Delete "$INSTDIR\COPYING.LIB.txt"
- Delete "$INSTDIR\otr_mackey.exe"
- Delete "$INSTDIR\otr_modify.exe"
- Delete "$INSTDIR\otr_parse.exe"
- Delete "$INSTDIR\otr_readforge.exe"
- Delete "$INSTDIR\otr_remac.exe"
- Delete "$INSTDIR\otr_sesskeys.exe"
- Delete "$INSTDIR\pidgin-otr.nsi"
- Delete "$SMPROGRAMS\pidgin-otr\Uninstall.lnk"
- RMDir "$SMPROGRAMS\pidgin-otr"
+ Delete "$INSTDIR\CHANGELOG.txt"
+ Delete "$INSTDIR\skype4pidgin.nsi"
+ Delete "$SMPROGRAMS\skype4pidgin\Uninstall.lnk"
+ RMDir "$SMPROGRAMS\skype4pidgin"
RMDir "$INSTDIR"
- ReadRegStr $PidginDir HKLM Software\pidgin-otr "pidgindir"
- IfFileExists "$PidginDir\plugins\pidgin-otr.dll" dodelete
- ReadRegStr $PidginDir HKCU Software\pidgin-otr "pidgindir"
- IfFileExists "$PidginDir\plugins\pidgin-otr.dll" dodelete
+ ReadRegStr $PidginDir HKLM Software\skype4pidgin "pidgindir"
+ IfFileExists "$PidginDir\plugins\libskype.dll" dodelete
+ ReadRegStr $PidginDir HKCU Software\skype4pidgin "pidgindir"
+ IfFileExists "$PidginDir\plugins\libskype.dll" dodelete
- ReadRegStr $PidginDir HKLM Software\pidgin-otr "pidgindir"
- IfFileExists "$PidginDir\plugins\pidgin-otr.dll" dodelete
- ReadRegStr $PidginDir HKCU Software\Pidgin-otr "pidgindir"
- IfFileExists "$PidginDir\plugins\pidgin-otr.dll" dodelete
+ ReadRegStr $PidginDir HKLM Software\skype4pidgin "pidgindir"
+ IfFileExists "$PidginDir\plugins\libskype.dll" dodelete
+ ReadRegStr $PidginDir HKCU Software\skype4pidgin "pidgindir"
+ IfFileExists "$PidginDir\plugins\libskype.dll" dodelete
MessageBox MB_OK|MB_ICONINFORMATION "Could not find pidgin plugin directory, pidgin-otr.dll not uninstalled!" IDOK ok
dodelete:
- Delete "$PidginDir\plugins\pidgin-otr.dll"
-
- ; Find all the language dirs and delete pidgin-otr.mo in all of them
- Push $0
- Push $1
- FindFirst $0 $1 $PidginDir\locale\*
- loop:
- StrCmp $1 "" loopdone
- Delete $PidginDir\locale\$1\LC_MESSAGES\pidgin-otr.mo
- FindNext $0 $1
- Goto loop
- loopdone:
- Pop $1
- Pop $0
+ Delete "$PidginDir\plugins\libskype.dll"
+ Delete "$PidginDir\pixmaps\pidgin\protocols\16\skype.png"
+ Delete "$PidginDir\pixmaps\pidgin\protocols\22\skype.png"
+ Delete "$PidginDir\pixmaps\pidgin\protocols\48\skype.png"
+ Delete "$PidginDir\pixmaps\pidgin\emotes\skype\theme"
+ RMDir "$PidginDir\pixmaps\pidgin\emotes\skype"
- IfFileExists "$PidginDir\plugins\pidgin-otr.dll" 0 +2
- MessageBox MB_OK|MB_ICONINFORMATION "pidgin-otr.dll is busy. Probably Pidgin is still running. Please delete $PidginDir\plugins\pidgin-otr.dll manually."
+ IfFileExists "$PidginDir\plugins\libskype.dll" 0 +2
+ MessageBox MB_OK|MB_ICONINFORMATION "libskype.dll is busy. Probably Pidgin is still running. Please delete $PidginDir\plugins\libskype.dll manually."
DeleteRegKey ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}"
- DeleteRegKey ${PRODUCT_UNINST_ROOT_KEY} "SOFTWARE\pidgin-otr\pidgindir"
+ DeleteRegKey ${PRODUCT_UNINST_ROOT_KEY} "SOFTWARE\skype4pidgin\pidgindir"
ok:
SetAutoClose true
SectionEnd
@@ -194,7 +158,7 @@ Function GetPidginInstPath
cont:
StrCpy $PidginDir $0
;MessageBox MB_OK|MB_ICONINFORMATION "Pidgin plugin directory found at $PidginDir\plugins ."
- WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "SOFTWARE\pidgin-otr" "pidgindir" "$PidginDir"
+ WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "SOFTWARE\skype4pidgin" "pidgindir" "$PidginDir"
FunctionEnd
Function UnInstOld
@@ -202,7 +166,7 @@ Function UnInstOld
ReadRegStr $0 ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "UninstallString"
IfFileExists "$0" deinst cont
deinst:
- MessageBox MB_OK|MB_ICONEXCLAMATION "pidgin-otr was already found on your system and will first be uninstalled"
+ MessageBox MB_OK|MB_ICONEXCLAMATION "skype4pidgin was already found on your system and will first be uninstalled"
; the uninstaller copies itself to temp and execs itself there, so it can delete
; everything including its own original file location. To prevent the installer and
; uninstaller racing you can't simply ExecWait.
@@ -216,7 +180,7 @@ Function UnInstOld
;BringToFront
cont:
- ;MessageBox MB_OK|MB_ICONINFORMATION "No old pidgin-otr found, continuing."
+ ;MessageBox MB_OK|MB_ICONINFORMATION "No old skype4pidgin found, continuing."
FunctionEnd
@@ -224,19 +188,19 @@ Function CopyDLL
SetOverwrite try
ClearErrors
; 3 hours wasted so you guys don't need a reboot!
-; Rename /REBOOTOK "$INSTDIR\pidgin-otr.dll" "$PidginDir\plugins\pidgin-otr.dll"
-IfFileExists "$PidginDir\plugins\pidgin-otr.dll" 0 copy ; remnant or uninstall prev version failed
-Delete "$PidginDir\plugins\pidgin-otr.dll"
+; Rename /REBOOTOK "$INSTDIR\libskype.dll" "$PidginDir\plugins\libskype.dll"
+IfFileExists "$PidginDir\plugins\libskype.dll" 0 copy ; remnant or uninstall prev version failed
+Delete "$PidginDir\plugins\libskype.dll"
copy:
ClearErrors
-Rename "$INSTDIR\pidgin-otr.dll" "$PidginDir\plugins\pidgin-otr.dll"
+Rename "$INSTDIR\libskype.dll" "$PidginDir\plugins\libskype.dll"
IfErrors dllbusy
Return
dllbusy:
- MessageBox MB_RETRYCANCEL "pidgin-otr.dll is busy. Please close Pidgin (including tray icon) and try again" IDCANCEL cancel
- Delete "$PidginDir\plugins\pidgin-otr.dll"
+ MessageBox MB_RETRYCANCEL "libskype.dll is busy. Please close Pidgin (including tray icon) and try again" IDCANCEL cancel
+ Delete "$PidginDir\plugins\libskype.dll"
Goto copy
Return
cancel:
- Abort "Installation of pidgin-otr aborted"
+ Abort "Installation of skype4pidgin aborted"
FunctionEnd