pidgin/win32/nsis/pidgin-installer.nsi

Thu, 11 Jun 2020 03:44:30 -0500

author
Gary Kramlich <grim@reaperworld.com>
date
Thu, 11 Jun 2020 03:44:30 -0500
branch
release-2.x.y
changeset 40452
406a0d4d1b40
parent 38089
da90fe7312d3
child 40832
cbb6d1c52d6e
permissions
-rw-r--r--

Fix some issues with the Windows installer that included it thinking Pidgin was already running

15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
1 ; Installer script for win32 Pidgin
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
2 ; Original Author: Herman Bloggs <hermanator12002@yahoo.com>
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
3 ; Updated By: Daniel Atallah <daniel_atallah@yahoo.com>
3630
caa952062dc2 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
4
27647
acbefee0cd14 Fix win32 build for yahoo/yahoojp split.
Daniel Atallah <datallah@pidgin.im>
parents: 27360
diff changeset
5 ; NOTE: this .NSI script is intended for NSIS 2.27+
8388
243f2eeca134 [gaim-migrate @ 9116]
Herman Bloggs <herman@bluedigits.com>
parents: 8183
diff changeset
6 ;
4897
b957d7e1ab16 [gaim-migrate @ 5229]
Herman Bloggs <herman@bluedigits.com>
parents: 4857
diff changeset
7
b957d7e1ab16 [gaim-migrate @ 5229]
Herman Bloggs <herman@bluedigits.com>
parents: 4857
diff changeset
8 ;--------------------------------
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
9 ;Global Variables
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
10 Var name
9902
289987279ba2 [gaim-migrate @ 10794]
Mark Doliner <markdoliner@pidgin.im>
parents: 9890
diff changeset
11 Var STARTUP_RUN_KEY
30260
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
12 Var CURRENT_GTK_STATE
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
13 Var WARNED_GTK_STATE
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
14
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
15 ;--------------------------------
4897
b957d7e1ab16 [gaim-migrate @ 5229]
Herman Bloggs <herman@bluedigits.com>
parents: 4857
diff changeset
16 ;Configuration
3630
caa952062dc2 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
17
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
18 ;The name var is set in .onInit
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
19 Name $name
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
20
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
21 !ifdef OFFLINE_INSTALLER
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
22 OutFile "pidgin-${PIDGIN_VERSION}-offline.exe"
5383
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
23 !else
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
24 OutFile "pidgin-${PIDGIN_VERSION}.exe"
5931
6bd53176fdcf [gaim-migrate @ 6371]
Herman Bloggs <herman@bluedigits.com>
parents: 5396
diff changeset
25 !endif
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
26
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
27 SetCompressor /SOLID lzma
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
28 ShowInstDetails show
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
29 ShowUninstDetails show
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
30 SetDateSave on
29798
7e57f09e0b2e The rest of the plumbing needed to build the GTK+ Runtime zip included in the installer
Daniel Atallah <datallah@pidgin.im>
parents: 29794
diff changeset
31 RequestExecutionLevel highest
40452
406a0d4d1b40 Fix some issues with the Windows installer that included it thinking Pidgin was already running
Gary Kramlich <grim@reaperworld.com>
parents: 38089
diff changeset
32 Unicode true
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
33
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
34 ; $name and $INSTDIR are set in .onInit function..
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
35
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
36 !include "MUI.nsh"
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
37 !include "Sections.nsh"
17462
593f36ca27bc Patch from Amir Szekely to make the installer start up faster and use NSIS' built-in Windows version checking. Fixes #1289 (Thanks, Amir)
Daniel Atallah <datallah@pidgin.im>
parents: 17289
diff changeset
38 !include "LogicLib.nsh"
29639
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
39 !include "Memento.nsh"
14512
7584322a65a2 [gaim-migrate @ 17164]
Daniel Atallah <datallah@pidgin.im>
parents: 14439
diff changeset
40
14439
adecc0185ad7 [gaim-migrate @ 17083]
Daniel Atallah <datallah@pidgin.im>
parents: 14438
diff changeset
41 !include "FileFunc.nsh"
adecc0185ad7 [gaim-migrate @ 17083]
Daniel Atallah <datallah@pidgin.im>
parents: 14438
diff changeset
42 !insertmacro GetParameters
adecc0185ad7 [gaim-migrate @ 17083]
Daniel Atallah <datallah@pidgin.im>
parents: 14438
diff changeset
43 !insertmacro GetOptions
adecc0185ad7 [gaim-migrate @ 17083]
Daniel Atallah <datallah@pidgin.im>
parents: 14438
diff changeset
44 !insertmacro GetParent
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
45
14512
7584322a65a2 [gaim-migrate @ 17164]
Daniel Atallah <datallah@pidgin.im>
parents: 14439
diff changeset
46 !include "WordFunc.nsh"
7584322a65a2 [gaim-migrate @ 17164]
Daniel Atallah <datallah@pidgin.im>
parents: 14439
diff changeset
47 !insertmacro VersionCompare
15857
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
48 !insertmacro WordFind
22947
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
49 !insertmacro un.WordFind
14512
7584322a65a2 [gaim-migrate @ 17164]
Daniel Atallah <datallah@pidgin.im>
parents: 14439
diff changeset
50
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
51 !include "TextFunc.nsh"
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
52
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
53 ;--------------------------------
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
54 ;Defines
4897
b957d7e1ab16 [gaim-migrate @ 5229]
Herman Bloggs <herman@bluedigits.com>
parents: 4857
diff changeset
55
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
56 !define PIDGIN_NSIS_INCLUDE_PATH "."
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
57
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
58 ; Remove these and the stuff that uses them at some point
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
59 !define OLD_GAIM_REG_KEY "SOFTWARE\gaim"
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
60 !define OLD_GAIM_UNINSTALL_KEY "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Gaim"
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
61 !define OLD_GAIM_UNINST_EXE "gaim-uninst.exe"
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
62
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
63 !define PIDGIN_REG_KEY "SOFTWARE\pidgin"
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
64 !define PIDGIN_UNINSTALL_KEY "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Pidgin"
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
65
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
66 !define HKLM_APP_PATHS_KEY "SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\pidgin.exe"
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
67 !define STARTUP_RUN_KEY "SOFTWARE\Microsoft\Windows\CurrentVersion\Run"
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
68 !define PIDGIN_UNINST_EXE "pidgin-uninst.exe"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
69
29505
2d3820fca371 Fix minimum required GTK+ version in win32 installer.
Daniel Atallah <datallah@pidgin.im>
parents: 28136
diff changeset
70 !define GTK_MIN_VERSION "2.14.0"
4897
b957d7e1ab16 [gaim-migrate @ 5229]
Herman Bloggs <herman@bluedigits.com>
parents: 4857
diff changeset
71
33399
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
72 !define DOWNLOADER_URL "https://pidgin.im/win32/download_redir.php?version=${PIDGIN_VERSION}"
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
73
29639
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
74 !define MEMENTO_REGISTRY_ROOT HKLM
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
75 !define MEMENTO_REGISTRY_KEY "${PIDGIN_UNINSTALL_KEY}"
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
76
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
77 ;--------------------------------
14516
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14512
diff changeset
78 ;Version resource
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
79 VIProductVersion "${PIDGIN_PRODUCT_VERSION}"
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
80 VIAddVersionKey "ProductName" "Pidgin"
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
81 VIAddVersionKey "FileVersion" "${PIDGIN_VERSION}"
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
82 VIAddVersionKey "ProductVersion" "${PIDGIN_VERSION}"
14516
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14512
diff changeset
83 VIAddVersionKey "LegalCopyright" ""
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
84 !ifdef OFFLINE_INSTALLER
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
85 VIAddVersionKey "FileDescription" "Pidgin Installer (Offline)"
14516
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14512
diff changeset
86 !else
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
87 VIAddVersionKey "FileDescription" "Pidgin Installer"
14516
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14512
diff changeset
88 !endif
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14512
diff changeset
89
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14512
diff changeset
90 ;--------------------------------
17462
593f36ca27bc Patch from Amir Szekely to make the installer start up faster and use NSIS' built-in Windows version checking. Fixes #1289 (Thanks, Amir)
Daniel Atallah <datallah@pidgin.im>
parents: 17289
diff changeset
91 ;Reserve files used in .onInit
593f36ca27bc Patch from Amir Szekely to make the installer start up faster and use NSIS' built-in Windows version checking. Fixes #1289 (Thanks, Amir)
Daniel Atallah <datallah@pidgin.im>
parents: 17289
diff changeset
92 ;for faster start-up
593f36ca27bc Patch from Amir Szekely to make the installer start up faster and use NSIS' built-in Windows version checking. Fixes #1289 (Thanks, Amir)
Daniel Atallah <datallah@pidgin.im>
parents: 17289
diff changeset
93 ReserveFile "${NSISDIR}\Plugins\System.dll"
33386
e576f52a2627 Combine duplicated ReserveFile sections in the win32 installer
Daniel Atallah <datallah@pidgin.im>
parents: 33367
diff changeset
94 ReserveFile "${NSISDIR}\Plugins\UserInfo.dll"
17462
593f36ca27bc Patch from Amir Szekely to make the installer start up faster and use NSIS' built-in Windows version checking. Fixes #1289 (Thanks, Amir)
Daniel Atallah <datallah@pidgin.im>
parents: 17289
diff changeset
95 !insertmacro MUI_RESERVEFILE_INSTALLOPTIONS
593f36ca27bc Patch from Amir Szekely to make the installer start up faster and use NSIS' built-in Windows version checking. Fixes #1289 (Thanks, Amir)
Daniel Atallah <datallah@pidgin.im>
parents: 17289
diff changeset
96 !insertmacro MUI_RESERVEFILE_LANGDLL
593f36ca27bc Patch from Amir Szekely to make the installer start up faster and use NSIS' built-in Windows version checking. Fixes #1289 (Thanks, Amir)
Daniel Atallah <datallah@pidgin.im>
parents: 17289
diff changeset
97
593f36ca27bc Patch from Amir Szekely to make the installer start up faster and use NSIS' built-in Windows version checking. Fixes #1289 (Thanks, Amir)
Daniel Atallah <datallah@pidgin.im>
parents: 17289
diff changeset
98 ;--------------------------------
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
99 ;Modern UI Configuration
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
100
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
101 !define MUI_ICON ".\pixmaps\pidgin-install.ico"
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
102 !define MUI_UNICON ".\pixmaps\pidgin-install.ico"
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
103 !define MUI_WELCOMEFINISHPAGE_BITMAP ".\pixmaps\pidgin-intro.bmp"
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
104 !define MUI_HEADERIMAGE
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
105 !define MUI_HEADERIMAGE_BITMAP ".\pixmaps\pidgin-header.bmp"
4897
b957d7e1ab16 [gaim-migrate @ 5229]
Herman Bloggs <herman@bluedigits.com>
parents: 4857
diff changeset
106
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
107 ; Alter License section
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
108 !define MUI_LICENSEPAGE_BUTTON $(PIDGINLICENSEBUTTON)
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
109 !define MUI_LICENSEPAGE_TEXT_BOTTOM $(PIDGINLICENSEBOTTOMTEXT)
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
110
14516
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14512
diff changeset
111 !define MUI_LANGDLL_REGISTRY_ROOT "HKCU"
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
112 !define MUI_LANGDLL_REGISTRY_KEY ${PIDGIN_REG_KEY}
14516
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14512
diff changeset
113 !define MUI_LANGDLL_REGISTRY_VALUENAME "Installer Language"
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14512
diff changeset
114
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
115 !define MUI_COMPONENTSPAGE_SMALLDESC
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
116 !define MUI_ABORTWARNING
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
117
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
118 ;Finish Page config
16830
a3e3d4f63c11 Don't automatically proceed to the installer's "Finished" page - allow the log to be reviewed and make the user choose to move on. (Fixes #456).
Daniel Atallah <datallah@pidgin.im>
parents: 16829
diff changeset
119 !define MUI_FINISHPAGE_NOAUTOCLOSE
33367
36b1f6ba0564 Remove the ability to launch Pidgin from the last page of the installer.
Daniel Atallah <datallah@pidgin.im>
parents: 33366
diff changeset
120 ;!define MUI_FINISHPAGE_RUN "$INSTDIR\pidgin.exe"
36b1f6ba0564 Remove the ability to launch Pidgin from the last page of the installer.
Daniel Atallah <datallah@pidgin.im>
parents: 33366
diff changeset
121 ;!define MUI_FINISHPAGE_RUN_NOTCHECKED
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
122 !define MUI_FINISHPAGE_LINK $(PIDGINFINISHVISITWEBSITE)
36278
f02f7d1fb4d5 Fix some URLs in the installer to be https
Daniel Atallah <datallah@pidgin.im>
parents: 36277
diff changeset
123 !define MUI_FINISHPAGE_LINK_LOCATION "https://pidgin.im"
3630
caa952062dc2 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
124
4897
b957d7e1ab16 [gaim-migrate @ 5229]
Herman Bloggs <herman@bluedigits.com>
parents: 4857
diff changeset
125 ;--------------------------------
6255
ed38c707623b [gaim-migrate @ 6751]
Herman Bloggs <herman@bluedigits.com>
parents: 6233
diff changeset
126 ;Pages
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
127
7600
279abfe7721f [gaim-migrate @ 8222]
Herman Bloggs <herman@bluedigits.com>
parents: 7575
diff changeset
128 !define MUI_PAGE_CUSTOMFUNCTION_PRE preWelcomePage
6255
ed38c707623b [gaim-migrate @ 6751]
Herman Bloggs <herman@bluedigits.com>
parents: 6233
diff changeset
129 !insertmacro MUI_PAGE_WELCOME
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
130 !insertmacro MUI_PAGE_LICENSE "../../../COPYING"
6255
ed38c707623b [gaim-migrate @ 6751]
Herman Bloggs <herman@bluedigits.com>
parents: 6233
diff changeset
131 !insertmacro MUI_PAGE_COMPONENTS
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
132
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
133 ; Pidgin install dir page
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
134 !insertmacro MUI_PAGE_DIRECTORY
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
135
6255
ed38c707623b [gaim-migrate @ 6751]
Herman Bloggs <herman@bluedigits.com>
parents: 6233
diff changeset
136 !insertmacro MUI_PAGE_INSTFILES
ed38c707623b [gaim-migrate @ 6751]
Herman Bloggs <herman@bluedigits.com>
parents: 6233
diff changeset
137 !insertmacro MUI_PAGE_FINISH
ed38c707623b [gaim-migrate @ 6751]
Herman Bloggs <herman@bluedigits.com>
parents: 6233
diff changeset
138
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
139 !insertmacro MUI_UNPAGE_WELCOME
6255
ed38c707623b [gaim-migrate @ 6751]
Herman Bloggs <herman@bluedigits.com>
parents: 6233
diff changeset
140 !insertmacro MUI_UNPAGE_CONFIRM
ed38c707623b [gaim-migrate @ 6751]
Herman Bloggs <herman@bluedigits.com>
parents: 6233
diff changeset
141 !insertmacro MUI_UNPAGE_INSTFILES
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
142 !insertmacro MUI_UNPAGE_FINISH
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
143
4897
b957d7e1ab16 [gaim-migrate @ 5229]
Herman Bloggs <herman@bluedigits.com>
parents: 4857
diff changeset
144 ;--------------------------------
b957d7e1ab16 [gaim-migrate @ 5229]
Herman Bloggs <herman@bluedigits.com>
parents: 4857
diff changeset
145 ;Languages
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
146
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
147 !include "${PIDGIN_NSIS_INCLUDE_PATH}\langmacros.nsh"
7572
976d5883ef99 [gaim-migrate @ 8188]
Herman Bloggs <herman@bluedigits.com>
parents: 7558
diff changeset
148
4897
b957d7e1ab16 [gaim-migrate @ 5229]
Herman Bloggs <herman@bluedigits.com>
parents: 4857
diff changeset
149 ;--------------------------------
5383
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
150
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
151 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
152 ;; Start Install Sections ;;
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
153 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;
3630
caa952062dc2 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
154
5383
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
155 ;--------------------------------
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
156 ;Uninstall any old version of Pidgin (or Gaim)
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
157
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
158 Section -SecUninstallOldPidgin
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
159 ; Check install rights..
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
160 Call CheckUserInstallRights
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
161 Pop $R0
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
162
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
163 ;First try to uninstall Pidgin
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
164 StrCpy $R4 ${PIDGIN_REG_KEY}
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
165 StrCpy $R5 ${PIDGIN_UNINSTALL_KEY}
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
166 StrCpy $R6 ${PIDGIN_UNINST_EXE}
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
167 StrCpy $R7 "Pidgin"
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
168
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
169 start_comparison:
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
170 ;If pidgin is currently set to run on startup,
9902
289987279ba2 [gaim-migrate @ 10794]
Mark Doliner <markdoliner@pidgin.im>
parents: 9890
diff changeset
171 ; save the section of the Registry where the setting is before uninstalling,
289987279ba2 [gaim-migrate @ 10794]
Mark Doliner <markdoliner@pidgin.im>
parents: 9890
diff changeset
172 ; so we can put it back after installing the new version
289987279ba2 [gaim-migrate @ 10794]
Mark Doliner <markdoliner@pidgin.im>
parents: 9890
diff changeset
173 ClearErrors
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
174 ReadRegStr $STARTUP_RUN_KEY HKCU "${STARTUP_RUN_KEY}" $R7
9902
289987279ba2 [gaim-migrate @ 10794]
Mark Doliner <markdoliner@pidgin.im>
parents: 9890
diff changeset
175 IfErrors +3
289987279ba2 [gaim-migrate @ 10794]
Mark Doliner <markdoliner@pidgin.im>
parents: 9890
diff changeset
176 StrCpy $STARTUP_RUN_KEY "HKCU"
16829
d5827c7efbae Fix some installer issues (#416, #433)
Daniel Atallah <datallah@pidgin.im>
parents: 16817
diff changeset
177 Goto +5
14438
b552f0964484 [gaim-migrate @ 17082]
Daniel Atallah <datallah@pidgin.im>
parents: 14351
diff changeset
178 ClearErrors
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
179 ReadRegStr $STARTUP_RUN_KEY HKLM "${STARTUP_RUN_KEY}" $R7
9902
289987279ba2 [gaim-migrate @ 10794]
Mark Doliner <markdoliner@pidgin.im>
parents: 9890
diff changeset
180 IfErrors +2
289987279ba2 [gaim-migrate @ 10794]
Mark Doliner <markdoliner@pidgin.im>
parents: 9890
diff changeset
181 StrCpy $STARTUP_RUN_KEY "HKLM"
289987279ba2 [gaim-migrate @ 10794]
Mark Doliner <markdoliner@pidgin.im>
parents: 9890
diff changeset
182
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
183 StrCmp $R0 "HKLM" compare_hklm
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
184 StrCmp $R0 "HKCU" compare_hkcu done
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
185
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
186 compare_hkcu:
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
187 ReadRegStr $R1 HKCU $R4 ""
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
188 ReadRegStr $R2 HKCU $R4 "Version"
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
189 ReadRegStr $R3 HKCU "$R5" "UninstallString"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
190 Goto try_uninstall
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
191
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
192 compare_hklm:
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
193 ReadRegStr $R1 HKLM $R4 ""
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
194 ReadRegStr $R2 HKLM $R4 "Version"
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
195 ReadRegStr $R3 HKLM "$R5" "UninstallString"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
196
15856
322e0965615f Add support for registering URI handlers to the windows installer.
Daniel Atallah <datallah@pidgin.im>
parents: 15819
diff changeset
197 ; If a previous version exists, remove it
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
198 try_uninstall:
16829
d5827c7efbae Fix some installer issues (#416, #433)
Daniel Atallah <datallah@pidgin.im>
parents: 16817
diff changeset
199 StrCmp $R1 "" no_version_found
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
200 ; Version key started with 0.60a3. Prior versions can't be
16817
6ebf286c04b2 Fix #470 (change spellchecker language to not select every language)
Daniel Atallah <datallah@pidgin.im>
parents: 16780
diff changeset
201 ; automatically uninstalled.
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
202 StrCmp $R2 "" uninstall_problem
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
203 ; Check if we have uninstall string..
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
204 IfFileExists $R3 0 uninstall_problem
15856
322e0965615f Add support for registering URI handlers to the windows installer.
Daniel Atallah <datallah@pidgin.im>
parents: 15819
diff changeset
205 ; Have uninstall string, go ahead and uninstall.
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
206 SetOverwrite on
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
207 ; Need to copy uninstaller outside of the install dir
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
208 ClearErrors
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
209 CopyFiles /SILENT $R3 "$TEMP\$R6"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
210 SetOverwrite off
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
211 IfErrors uninstall_problem
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
212 ; Ready to uninstall..
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
213 ClearErrors
29818
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
214 ExecWait '"$TEMP\$R6" /S /UPGRADE=1 _?=$R1'
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
215 IfErrors exec_error
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
216 Delete "$TEMP\$R6"
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
217 Goto done
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
218
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
219 exec_error:
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
220 Delete "$TEMP\$R6"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
221 Goto uninstall_problem
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
222
16829
d5827c7efbae Fix some installer issues (#416, #433)
Daniel Atallah <datallah@pidgin.im>
parents: 16817
diff changeset
223 no_version_found:
d5827c7efbae Fix some installer issues (#416, #433)
Daniel Atallah <datallah@pidgin.im>
parents: 16817
diff changeset
224 ;We've already tried to fallback to an old gaim instance
d5827c7efbae Fix some installer issues (#416, #433)
Daniel Atallah <datallah@pidgin.im>
parents: 16817
diff changeset
225 StrCmp $R7 "Gaim" done
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
226 ; If we couldn't uninstall Pidgin, try to uninstall Gaim
16829
d5827c7efbae Fix some installer issues (#416, #433)
Daniel Atallah <datallah@pidgin.im>
parents: 16817
diff changeset
227 StrCpy $STARTUP_RUN_KEY "NONE"
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
228 StrCpy $R4 ${OLD_GAIM_REG_KEY}
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
229 StrCpy $R5 ${OLD_GAIM_UNINSTALL_KEY}
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
230 StrCpy $R6 ${OLD_GAIM_UNINST_EXE}
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
231 StrCpy $R7 "Gaim"
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
232 Goto start_comparison
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
233
16829
d5827c7efbae Fix some installer issues (#416, #433)
Daniel Atallah <datallah@pidgin.im>
parents: 16817
diff changeset
234 uninstall_problem:
14438
b552f0964484 [gaim-migrate @ 17082]
Daniel Atallah <datallah@pidgin.im>
parents: 14351
diff changeset
235 ; We can't uninstall. Either the user must manually uninstall or we ignore and reinstall over it.
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
236 MessageBox MB_OKCANCEL $(PIDGINPROMPTCONTINUEWITHOUTUNINSTALL) /SD IDOK IDOK done
14438
b552f0964484 [gaim-migrate @ 17082]
Daniel Atallah <datallah@pidgin.im>
parents: 14351
diff changeset
237 Quit
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
238 done:
5383
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
239 SectionEnd
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
240
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
241
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
242 ;--------------------------------
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
243 ;GTK+ Runtime Install Section
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
244
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
245 Section $(GTKSECTIONTITLE) SecGtk
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
246
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
247 InitPluginsDir
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
248 StrCpy $R1 "$PLUGINSDIR\gtk.zip"
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
249 !ifdef OFFLINE_INSTALLER
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
250
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
251 SetOutPath $PLUGINSDIR
29798
7e57f09e0b2e The rest of the plumbing needed to build the GTK+ Runtime zip included in the installer
Daniel Atallah <datallah@pidgin.im>
parents: 29794
diff changeset
252 File /oname=gtk.zip ".\gtk-runtime-${GTK_INSTALL_VERSION}.zip"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
253
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
254 !else
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
255
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
256 ; We need to download the GTK+ runtime
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
257 retry:
33415
51473787ff4f Bake the sha1sums for the debug symbols and gtk runtime into the installer instead of downloading them.
Daniel Atallah <datallah@pidgin.im>
parents: 33399
diff changeset
258 StrCpy $R2 "${DOWNLOADER_URL}&gtk_version=${GTK_INSTALL_VERSION}&dl_pkg=gtk"
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
259 DetailPrint "Downloading GTK+ Runtime ... ($R2)"
33751
a8672a4a3a13 installer: Fix CheckSHA1Sum restoring the stack - this was broken in 51473787ff4f.
Daniel Atallah <datallah@pidgin.im>
parents: 33669
diff changeset
260 NSISdl::download /TIMEOUT=10000 "$R2" "$R1"
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
261 Pop $R0
30695
7c10b1be13f2 -------------------------------------------------------------------------------
Daniel Atallah <datallah@pidgin.im>
parents: 30601
diff changeset
262 ;StrCmp $R0 "cancel" done
33399
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
263 StrCmp $R0 "success" 0 prompt_retry
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
264
33415
51473787ff4f Bake the sha1sums for the debug symbols and gtk runtime into the installer instead of downloading them.
Daniel Atallah <datallah@pidgin.im>
parents: 33399
diff changeset
265 Push "${GTK_SHA1SUM}"
33399
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
266 Push "$R1" ; Filename
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
267 Call CheckSHA1Sum
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
268 Pop $R0
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
269
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
270 StrCmp "$R0" "0" extract
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
271 prompt_retry:
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
272 MessageBox MB_RETRYCANCEL "$(PIDGINGTKDOWNLOADERROR)" /SD IDCANCEL IDRETRY retry IDCANCEL done
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
273
33399
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
274 extract:
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
275 !endif
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
276
29798
7e57f09e0b2e The rest of the plumbing needed to build the GTK+ Runtime zip included in the installer
Daniel Atallah <datallah@pidgin.im>
parents: 29794
diff changeset
277 ;Delete the old Gtk directory
7e57f09e0b2e The rest of the plumbing needed to build the GTK+ Runtime zip included in the installer
Daniel Atallah <datallah@pidgin.im>
parents: 29794
diff changeset
278 RMDir /r "$INSTDIR\Gtk"
7e57f09e0b2e The rest of the plumbing needed to build the GTK+ Runtime zip included in the installer
Daniel Atallah <datallah@pidgin.im>
parents: 29794
diff changeset
279
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
280 SetOutPath "$INSTDIR"
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
281 nsisunz::UnzipToLog $R1 "$INSTDIR"
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
282 Pop $R0
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
283 StrCmp $R0 "success" +2
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
284 DetailPrint "$R0" ;print error message to log
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
285
33415
51473787ff4f Bake the sha1sums for the debug symbols and gtk runtime into the installer instead of downloading them.
Daniel Atallah <datallah@pidgin.im>
parents: 33399
diff changeset
286 !ifndef OFFLINE_INSTALLER
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
287 done:
33415
51473787ff4f Bake the sha1sums for the debug symbols and gtk runtime into the installer instead of downloading them.
Daniel Atallah <datallah@pidgin.im>
parents: 33399
diff changeset
288 !endif
5383
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
289 SectionEnd ; end of GTK+ section
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
290
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
291 ;--------------------------------
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
292 ;Pidgin Install Section
5383
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
293
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
294 Section $(PIDGINSECTIONTITLE) SecPidgin
5383
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
295 SectionIn 1 RO
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
296
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
297 ; Check install rights..
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
298 Call CheckUserInstallRights
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
299 Pop $R0
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
300
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
301 StrCmp $R0 "NONE" pidgin_install_files
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
302 StrCmp $R0 "HKLM" pidgin_hklm pidgin_hkcu
5383
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
303
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
304 pidgin_hklm:
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
305 WriteRegStr HKLM "${HKLM_APP_PATHS_KEY}" "" "$INSTDIR\pidgin.exe"
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
306 WriteRegStr HKLM "${HKLM_APP_PATHS_KEY}" "Path" "$INSTDIR\Gtk\bin"
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
307 WriteRegStr HKLM ${PIDGIN_REG_KEY} "" "$INSTDIR"
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
308 WriteRegStr HKLM ${PIDGIN_REG_KEY} "Version" "${PIDGIN_VERSION}"
30696
e756909b7a35 Explicitly set the icon for Windows' Add/Remove Programs.
Daniel Atallah <datallah@pidgin.im>
parents: 30695
diff changeset
309 WriteRegStr HKLM "${PIDGIN_UNINSTALL_KEY}" "DisplayIcon" "$INSTDIR\pidgin.exe"
17722
0e6a85627c70 Clean up information displayed in the Add/Remove Programs section on Windows. Fixes #1646.
Daniel Atallah <datallah@pidgin.im>
parents: 17645
diff changeset
310 WriteRegStr HKLM "${PIDGIN_UNINSTALL_KEY}" "DisplayName" "Pidgin"
0e6a85627c70 Clean up information displayed in the Add/Remove Programs section on Windows. Fixes #1646.
Daniel Atallah <datallah@pidgin.im>
parents: 17645
diff changeset
311 WriteRegStr HKLM "${PIDGIN_UNINSTALL_KEY}" "DisplayVersion" "${PIDGIN_VERSION}"
36278
f02f7d1fb4d5 Fix some URLs in the installer to be https
Daniel Atallah <datallah@pidgin.im>
parents: 36277
diff changeset
312 WriteRegStr HKLM "${PIDGIN_UNINSTALL_KEY}" "HelpLink" "https://developer.pidgin.im/wiki/Using Pidgin"
17722
0e6a85627c70 Clean up information displayed in the Add/Remove Programs section on Windows. Fixes #1646.
Daniel Atallah <datallah@pidgin.im>
parents: 17645
diff changeset
313 WriteRegDWORD HKLM "${PIDGIN_UNINSTALL_KEY}" "NoModify" 1
0e6a85627c70 Clean up information displayed in the Add/Remove Programs section on Windows. Fixes #1646.
Daniel Atallah <datallah@pidgin.im>
parents: 17645
diff changeset
314 WriteRegDWORD HKLM "${PIDGIN_UNINSTALL_KEY}" "NoRepair" 1
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
315 WriteRegStr HKLM "${PIDGIN_UNINSTALL_KEY}" "UninstallString" "$INSTDIR\${PIDGIN_UNINST_EXE}"
5383
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
316 ; Sets scope of the desktop and Start Menu entries for all users.
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
317 SetShellVarContext "all"
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
318 Goto pidgin_install_files
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
319
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
320 pidgin_hkcu:
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
321 WriteRegStr HKCU ${PIDGIN_REG_KEY} "" "$INSTDIR"
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
322 WriteRegStr HKCU ${PIDGIN_REG_KEY} "Version" "${PIDGIN_VERSION}"
30696
e756909b7a35 Explicitly set the icon for Windows' Add/Remove Programs.
Daniel Atallah <datallah@pidgin.im>
parents: 30695
diff changeset
323 WriteRegStr HKCU "${PIDGIN_UNINSTALL_KEY}" "DisplayIcon" "$INSTDIR\pidgin.exe"
17722
0e6a85627c70 Clean up information displayed in the Add/Remove Programs section on Windows. Fixes #1646.
Daniel Atallah <datallah@pidgin.im>
parents: 17645
diff changeset
324 WriteRegStr HKCU "${PIDGIN_UNINSTALL_KEY}" "DisplayName" "Pidgin"
0e6a85627c70 Clean up information displayed in the Add/Remove Programs section on Windows. Fixes #1646.
Daniel Atallah <datallah@pidgin.im>
parents: 17645
diff changeset
325 WriteRegStr HKCU "${PIDGIN_UNINSTALL_KEY}" "DisplayVersion" "${PIDGIN_VERSION}"
36278
f02f7d1fb4d5 Fix some URLs in the installer to be https
Daniel Atallah <datallah@pidgin.im>
parents: 36277
diff changeset
326 WriteRegStr HKCU "${PIDGIN_UNINSTALL_KEY}" "HelpLink" "https://developer.pidgin.im/wiki/Using Pidgin"
17722
0e6a85627c70 Clean up information displayed in the Add/Remove Programs section on Windows. Fixes #1646.
Daniel Atallah <datallah@pidgin.im>
parents: 17645
diff changeset
327 WriteRegDWORD HKCU "${PIDGIN_UNINSTALL_KEY}" "NoModify" 1
0e6a85627c70 Clean up information displayed in the Add/Remove Programs section on Windows. Fixes #1646.
Daniel Atallah <datallah@pidgin.im>
parents: 17645
diff changeset
328 WriteRegDWORD HKCU "${PIDGIN_UNINSTALL_KEY}" "NoRepair" 1
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
329 WriteRegStr HKCU "${PIDGIN_UNINSTALL_KEY}" "UninstallString" "$INSTDIR\${PIDGIN_UNINST_EXE}"
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
330 Goto pidgin_install_files
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
331
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
332 pidgin_install_files:
5383
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
333 SetOutPath "$INSTDIR"
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
334 ; Pidgin files
5383
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
335 SetOverwrite on
16309
347c01a71e7c Fix win32 build for Jabber/XMPP split.
Daniel Atallah <datallah@pidgin.im>
parents: 16305
diff changeset
336
347c01a71e7c Fix win32 build for Jabber/XMPP split.
Daniel Atallah <datallah@pidgin.im>
parents: 16305
diff changeset
337 ;Delete old liboscar and libjabber since they tend to be problematic
347c01a71e7c Fix win32 build for Jabber/XMPP split.
Daniel Atallah <datallah@pidgin.im>
parents: 16305
diff changeset
338 Delete "$INSTDIR\plugins\liboscar.dll"
347c01a71e7c Fix win32 build for Jabber/XMPP split.
Daniel Atallah <datallah@pidgin.im>
parents: 16305
diff changeset
339 Delete "$INSTDIR\plugins\libjabber.dll"
36277
1648d789c7d2 Fix a typo causing the nss-prefs plugin to be named ".dll" on Windows
Daniel Atallah <datallah@pidgin.im>
parents: 36228
diff changeset
340 ;Delete misnamed nss-prefs plugin from 2.10.11
1648d789c7d2 Fix a typo causing the nss-prefs plugin to be named ".dll" on Windows
Daniel Atallah <datallah@pidgin.im>
parents: 36228
diff changeset
341 Delete "$INSTDIR\plugins\.dll"
16309
347c01a71e7c Fix win32 build for Jabber/XMPP split.
Daniel Atallah <datallah@pidgin.im>
parents: 16305
diff changeset
342
33395
722813575d5f Exclude the Gtk directory in the win32-install-dir from being included in the installer.
Daniel Atallah <datallah@pidgin.im>
parents: 33387
diff changeset
343 File /r /x locale /x Gtk ..\..\..\${PIDGIN_INSTALL_DIR}\*.*
6848
ca91f08b60df [gaim-migrate @ 7393]
Herman Bloggs <herman@bluedigits.com>
parents: 6816
diff changeset
344
5383
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
345 SetOutPath "$INSTDIR"
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
346
15856
322e0965615f Add support for registering URI handlers to the windows installer.
Daniel Atallah <datallah@pidgin.im>
parents: 15819
diff changeset
347 ; If we don't have install rights we're done
5383
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
348 StrCmp $R0 "NONE" done
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
349 SetOverwrite off
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
350
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
351 ; write out uninstaller
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
352 SetOverwrite on
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
353 WriteUninstaller "$INSTDIR\${PIDGIN_UNINST_EXE}"
5383
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
354 SetOverwrite off
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
355
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
356 ; If we previously had pidgin set up to run on startup, make it do so again
9902
289987279ba2 [gaim-migrate @ 10794]
Mark Doliner <markdoliner@pidgin.im>
parents: 9890
diff changeset
357 StrCmp $STARTUP_RUN_KEY "HKCU" +1 +2
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
358 WriteRegStr HKCU "${STARTUP_RUN_KEY}" "Pidgin" "$INSTDIR\pidgin.exe"
9902
289987279ba2 [gaim-migrate @ 10794]
Mark Doliner <markdoliner@pidgin.im>
parents: 9890
diff changeset
359 StrCmp $STARTUP_RUN_KEY "HKLM" +1 +2
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
360 WriteRegStr HKLM "${STARTUP_RUN_KEY}" "Pidgin" "$INSTDIR\pidgin.exe"
9902
289987279ba2 [gaim-migrate @ 10794]
Mark Doliner <markdoliner@pidgin.im>
parents: 9890
diff changeset
361
5383
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
362 done:
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
363 SectionEnd ; end of default Pidgin section
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
364
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
365 ;--------------------------------
10920
f68798385106 [gaim-migrate @ 12686]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
366 ;Shortcuts
f68798385106 [gaim-migrate @ 12686]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
367
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
368 SectionGroup /e $(PIDGINSHORTCUTSSECTIONTITLE) SecShortcuts
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
369 Section /o $(PIDGINDESKTOPSHORTCUTSECTIONTITLE) SecDesktopShortcut
10920
f68798385106 [gaim-migrate @ 12686]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
370 SetOverwrite on
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
371 CreateShortCut "$DESKTOP\Pidgin.lnk" "$INSTDIR\pidgin.exe"
10920
f68798385106 [gaim-migrate @ 12686]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
372 SetOverwrite off
f68798385106 [gaim-migrate @ 12686]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
373 SectionEnd
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
374 Section $(PIDGINSTARTMENUSHORTCUTSECTIONTITLE) SecStartMenuShortcut
10920
f68798385106 [gaim-migrate @ 12686]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
375 SetOverwrite on
17289
6412ffdd74dd Don't put the Pidgin startmenu entry in a subdirectory. This violates the MS guidelines and (more importantly) it is pointless and annoying. Fixes #1188
Daniel Atallah <datallah@pidgin.im>
parents: 16831
diff changeset
376 CreateShortCut "$SMPROGRAMS\Pidgin.lnk" "$INSTDIR\pidgin.exe"
10920
f68798385106 [gaim-migrate @ 12686]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
377 SetOverwrite off
f68798385106 [gaim-migrate @ 12686]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
378 SectionEnd
15045
d587829617f4 [gaim-migrate @ 17762]
Daniel Atallah <datallah@pidgin.im>
parents: 15031
diff changeset
379 SectionGroupEnd
10920
f68798385106 [gaim-migrate @ 12686]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
380
f68798385106 [gaim-migrate @ 12686]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
381 ;--------------------------------
15856
322e0965615f Add support for registering URI handlers to the windows installer.
Daniel Atallah <datallah@pidgin.im>
parents: 15819
diff changeset
382 ;URI Handling
22947
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
383
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
384 !macro URI_SECTION proto
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
385 Section /o "${proto}:" SecURI_${proto}
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
386 Push "${proto}"
15856
322e0965615f Add support for registering URI handlers to the windows installer.
Daniel Atallah <datallah@pidgin.im>
parents: 15819
diff changeset
387 Call RegisterURIHandler
322e0965615f Add support for registering URI handlers to the windows installer.
Daniel Atallah <datallah@pidgin.im>
parents: 15819
diff changeset
388 SectionEnd
22947
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
389 !macroend
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
390 SectionGroup /e $(URIHANDLERSSECTIONTITLE) SecURIHandlers
22947
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
391 !insertmacro URI_SECTION "aim"
28136
a3b6446eb2c4 Add support for XMPP URIs on Windows. Closes #2326.
Paul Aurich <darkrain42@pidgin.im>
parents: 28020
diff changeset
392 !insertmacro URI_SECTION "xmpp"
15856
322e0965615f Add support for registering URI handlers to the windows installer.
Daniel Atallah <datallah@pidgin.im>
parents: 15819
diff changeset
393 SectionGroupEnd
322e0965615f Add support for registering URI handlers to the windows installer.
Daniel Atallah <datallah@pidgin.im>
parents: 15819
diff changeset
394
322e0965615f Add support for registering URI handlers to the windows installer.
Daniel Atallah <datallah@pidgin.im>
parents: 15819
diff changeset
395 ;--------------------------------
29639
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
396 ;Translations
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
397
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
398 !macro LANG_SECTION lang
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
399 ${MementoUnselectedSection} "${lang}" SecLang_${lang}
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
400 SetOutPath "$INSTDIR\locale\${lang}\LC_MESSAGES"
29818
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
401 File "..\..\..\${PIDGIN_INSTALL_DIR}\locale\${lang}\LC_MESSAGES\*.mo"
29639
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
402 SetOutPath "$INSTDIR"
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
403 ${MementoSectionEnd}
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
404 !macroend
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
405 SectionGroup $(TRANSLATIONSSECTIONTITLE) SecTranslations
29639
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
406 # pidgin-translations is generated based on the contents of the locale directory
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
407 !include "pidgin-translations.nsh"
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
408 SectionGroupEnd
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
409 ${MementoSectionDone}
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
410
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
411 ;--------------------------------
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
412 ;Spell Checking
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
413
29818
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
414 !macro SPELLCHECK_SECTION lang lang_name lang_file
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
415 Section /o "${lang_name}" SecSpell_${lang}
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
416 Push ${lang_file}
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
417 Push ${lang}
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
418 Call InstallDict
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
419 SectionEnd
29818
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
420 !macroend
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
421 SectionGroup $(PIDGINSPELLCHECKSECTIONTITLE) SecSpellCheck
40452
406a0d4d1b40 Fix some issues with the Windows installer that included it thinking Pidgin was already running
Gary Kramlich <grim@reaperworld.com>
parents: 38089
diff changeset
422 !include /CHARSET=ACP "pidgin-spellcheck.nsh"
15045
d587829617f4 [gaim-migrate @ 17762]
Daniel Atallah <datallah@pidgin.im>
parents: 15031
diff changeset
423 SectionGroupEnd
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
424
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
425 Section /o $(DEBUGSYMBOLSSECTIONTITLE) SecDebugSymbols
29766
540e86343b7e Various installer bug fixes
Daniel Atallah <datallah@pidgin.im>
parents: 29763
diff changeset
426
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
427 InitPluginsDir
29766
540e86343b7e Various installer bug fixes
Daniel Atallah <datallah@pidgin.im>
parents: 29763
diff changeset
428 StrCpy $R1 "$PLUGINSDIR\dbgsym.zip"
29640
e97688dcc88a Include the debug symbols in the offline installer
Daniel Atallah <datallah@pidgin.im>
parents: 29639
diff changeset
429 !ifdef OFFLINE_INSTALLER
e97688dcc88a Include the debug symbols in the offline installer
Daniel Atallah <datallah@pidgin.im>
parents: 29639
diff changeset
430
e97688dcc88a Include the debug symbols in the offline installer
Daniel Atallah <datallah@pidgin.im>
parents: 29639
diff changeset
431 SetOutPath $PLUGINSDIR
29766
540e86343b7e Various installer bug fixes
Daniel Atallah <datallah@pidgin.im>
parents: 29763
diff changeset
432 File /oname=dbgsym.zip "..\..\..\pidgin-${PIDGIN_VERSION}-dbgsym.zip"
29640
e97688dcc88a Include the debug symbols in the offline installer
Daniel Atallah <datallah@pidgin.im>
parents: 29639
diff changeset
433
e97688dcc88a Include the debug symbols in the offline installer
Daniel Atallah <datallah@pidgin.im>
parents: 29639
diff changeset
434 !else
e97688dcc88a Include the debug symbols in the offline installer
Daniel Atallah <datallah@pidgin.im>
parents: 29639
diff changeset
435
29766
540e86343b7e Various installer bug fixes
Daniel Atallah <datallah@pidgin.im>
parents: 29763
diff changeset
436 ; We need to download the debug symbols
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
437 retry:
33415
51473787ff4f Bake the sha1sums for the debug symbols and gtk runtime into the installer instead of downloading them.
Daniel Atallah <datallah@pidgin.im>
parents: 33399
diff changeset
438 StrCpy $R2 "${DOWNLOADER_URL}&dl_pkg=dbgsym"
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
439 DetailPrint "Downloading Debug Symbols... ($R2)"
33751
a8672a4a3a13 installer: Fix CheckSHA1Sum restoring the stack - this was broken in 51473787ff4f.
Daniel Atallah <datallah@pidgin.im>
parents: 33669
diff changeset
440 NSISdl::download /TIMEOUT=10000 "$R2" "$R1"
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
441 Pop $R0
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
442 StrCmp $R0 "cancel" done
33399
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
443 StrCmp $R0 "success" 0 prompt_retry
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
444
33415
51473787ff4f Bake the sha1sums for the debug symbols and gtk runtime into the installer instead of downloading them.
Daniel Atallah <datallah@pidgin.im>
parents: 33399
diff changeset
445 Push "${DEBUG_SYMBOLS_SHA1SUM}"
33399
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
446 Push "$R1" ; Filename
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
447 Call CheckSHA1Sum
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
448 Pop $R0
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
449
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
450 StrCmp "$R0" "0" extract
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
451 prompt_retry:
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
452 MessageBox MB_RETRYCANCEL "$(PIDGINDEBUGSYMBOLSERROR)" /SD IDCANCEL IDRETRY retry IDCANCEL done
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
453
33399
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
454 extract:
29640
e97688dcc88a Include the debug symbols in the offline installer
Daniel Atallah <datallah@pidgin.im>
parents: 29639
diff changeset
455 !endif
e97688dcc88a Include the debug symbols in the offline installer
Daniel Atallah <datallah@pidgin.im>
parents: 29639
diff changeset
456
29766
540e86343b7e Various installer bug fixes
Daniel Atallah <datallah@pidgin.im>
parents: 29763
diff changeset
457 SetOutPath "$INSTDIR"
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
458 nsisunz::UnzipToLog $R1 "$INSTDIR"
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
459 Pop $R0
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
460 StrCmp $R0 "success" +2
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
461 DetailPrint "$R0" ;print error message to log
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
462
33415
51473787ff4f Bake the sha1sums for the debug symbols and gtk runtime into the installer instead of downloading them.
Daniel Atallah <datallah@pidgin.im>
parents: 33399
diff changeset
463 !ifndef OFFLINE_INSTALLER
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
464 done:
33415
51473787ff4f Bake the sha1sums for the debug symbols and gtk runtime into the installer instead of downloading them.
Daniel Atallah <datallah@pidgin.im>
parents: 33399
diff changeset
465 !endif
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
466 SectionEnd
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
467
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
468 ;--------------------------------
4897
b957d7e1ab16 [gaim-migrate @ 5229]
Herman Bloggs <herman@bluedigits.com>
parents: 4857
diff changeset
469 ;Uninstaller Section
3630
caa952062dc2 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
470
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
471
3630
caa952062dc2 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
472 Section Uninstall
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
473 Call un.CheckUserInstallRights
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
474 Pop $R0
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
475 StrCmp $R0 "NONE" no_rights
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
476 StrCmp $R0 "HKCU" try_hkcu try_hklm
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
477
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
478 try_hkcu:
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
479 ReadRegStr $R0 HKCU ${PIDGIN_REG_KEY} ""
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
480 StrCmp $R0 $INSTDIR 0 cant_uninstall
15856
322e0965615f Add support for registering URI handlers to the windows installer.
Daniel Atallah <datallah@pidgin.im>
parents: 15819
diff changeset
481 ; HKCU install path matches our INSTDIR so uninstall
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
482 DeleteRegKey HKCU ${PIDGIN_REG_KEY}
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
483 DeleteRegKey HKCU "${PIDGIN_UNINSTALL_KEY}"
5383
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
484 Goto cont_uninstall
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
485
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
486 try_hklm:
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
487 ReadRegStr $R0 HKLM ${PIDGIN_REG_KEY} ""
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
488 StrCmp $R0 $INSTDIR 0 try_hkcu
15856
322e0965615f Add support for registering URI handlers to the windows installer.
Daniel Atallah <datallah@pidgin.im>
parents: 15819
diff changeset
489 ; HKLM install path matches our INSTDIR so uninstall
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
490 DeleteRegKey HKLM ${PIDGIN_REG_KEY}
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
491 DeleteRegKey HKLM "${PIDGIN_UNINSTALL_KEY}"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
492 DeleteRegKey HKLM "${HKLM_APP_PATHS_KEY}"
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
493 ; Sets start menu and desktop scope to all users..
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
494 SetShellVarContext "all"
4126
99bff42f4a47 [gaim-migrate @ 4343]
Herman Bloggs <herman@bluedigits.com>
parents: 3989
diff changeset
495
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
496 cont_uninstall:
6090
348fcb77d3cf [gaim-migrate @ 6549]
Herman Bloggs <herman@bluedigits.com>
parents: 5931
diff changeset
497 ; The WinPrefs plugin may have left this behind..
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
498 DeleteRegValue HKCU "${STARTUP_RUN_KEY}" "Pidgin"
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
499 DeleteRegValue HKLM "${STARTUP_RUN_KEY}" "Pidgin"
22947
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
500 ; Remove Language preference info
30259
01eb5d70e51a Automatically select the translation corresponding to the installer language.
Daniel Atallah <datallah@pidgin.im>
parents: 29818
diff changeset
501 DeleteRegValue HKCU "${PIDGIN_REG_KEY}" "${MUI_LANGDLL_REGISTRY_VALUENAME}"
22947
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
502
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
503 ; Remove any URI handlers
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
504 ; I can't think of an easy way to maintain a list in a single place
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
505 Push "aim"
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
506 Call un.UnregisterURIHandler
28136
a3b6446eb2c4 Add support for XMPP URIs on Windows. Closes #2326.
Paul Aurich <darkrain42@pidgin.im>
parents: 28020
diff changeset
507 Push "xmpp"
a3b6446eb2c4 Add support for XMPP URIs on Windows. Closes #2326.
Paul Aurich <darkrain42@pidgin.im>
parents: 28020
diff changeset
508 Call un.UnregisterURIHandler
6090
348fcb77d3cf [gaim-migrate @ 6549]
Herman Bloggs <herman@bluedigits.com>
parents: 5931
diff changeset
509
37782
d37d62d692e4 ca-certs: Add mozilla cert bundle and remove old/redundant certs
dx <dx@dxzone.com.ar>
parents: 36304
diff changeset
510 ; Some of these aren't shipped anymore. Delete them anyway.
31346
effc9a37749b Add the AddTrust External CA Root. Closes #11554.
Paul Aurich <darkrain42@pidgin.im>
parents: 31127
diff changeset
511 Delete "$INSTDIR\ca-certs\AddTrust_External_Root.pem"
25672
5c28e0c93492 Add a second chain of SSL certificates now necessary for OSCAR SSL
Paul Aurich <darkrain42@pidgin.im>
parents: 25550
diff changeset
512 Delete "$INSTDIR\ca-certs\America_Online_Root_Certification_Authority_1.pem"
5c28e0c93492 Add a second chain of SSL certificates now necessary for OSCAR SSL
Paul Aurich <darkrain42@pidgin.im>
parents: 25550
diff changeset
513 Delete "$INSTDIR\ca-certs\AOL_Member_CA.pem"
33752
fb9baad00cbd installer: remove Baltimore_CyberTrust_Root.pem, ValiCert_Class_2_VA.pem when uninstalling
Daniel Atallah <datallah@pidgin.im>
parents: 33751
diff changeset
514 Delete "$INSTDIR\ca-certs\Baltimore_CyberTrust_Root.pem"
23900
9424d2f88d96 Uninstall the CAcert certs in the win32 uninstaller.
Daniel Atallah <datallah@pidgin.im>
parents: 23899
diff changeset
515 Delete "$INSTDIR\ca-certs\CAcert_Class3.pem"
9424d2f88d96 Uninstall the CAcert certs in the win32 uninstaller.
Daniel Atallah <datallah@pidgin.im>
parents: 23899
diff changeset
516 Delete "$INSTDIR\ca-certs\CAcert_Root.pem"
30835
9c18ddfd4901 ca-certs: Add new Thawte and Deutsche Telekom Roots. Fixes #12667, #12668.
Paul Aurich <darkrain42@pidgin.im>
parents: 30834
diff changeset
517 Delete "$INSTDIR\ca-certs\Deutsche_Telekom_Root_CA_2.pem"
31658
3a85578bb27e Add the DigiCert High Assurance CA-3 intermediate CA.
Paul Aurich <darkrain42@pidgin.im>
parents: 31346
diff changeset
518 Delete "$INSTDIR\ca-certs\DigiCertHighAssuranceCA-3.pem"
34475
a8eb7a21226b Install DigiCert High Assurance EV Root CA
Daniel Atallah <datallah@pidgin.im>
parents: 33752
diff changeset
519 Delete "$INSTDIR\ca-certs\DigiCertHighAssuranceEVRootCA.pem"
28624
b287044cda0e Add the Entrust.net Secure Server CA (taken from Debian's set). Closes #10247.
Paul Aurich <darkrain42@pidgin.im>
parents: 28562
diff changeset
520 Delete "$INSTDIR\ca-certs\Entrust.net_Secure_Server_CA.pem"
19668
2071903c58e4 Fix the win32 build for the cert SoC branch merge.
Daniel Atallah <datallah@pidgin.im>
parents: 19627
diff changeset
521 Delete "$INSTDIR\ca-certs\Equifax_Secure_CA.pem"
27833
21dd169273d2 Add the twitter.com CA cert. Fixes 9264.
Paul Aurich <darkrain42@pidgin.im>
parents: 27826
diff changeset
522 Delete "$INSTDIR\ca-certs\Equifax_Secure_Global_eBusiness_CA-1.pem"
30834
a43dd369afed ca-certs: Add the Go Daddy Class 2 self-signed root. Fixes #12594
Paul Aurich <darkrain42@pidgin.im>
parents: 30735
diff changeset
523 Delete "$INSTDIR\ca-certs\Go_Daddy_Class_2_CA.pem"
19705
aaa5bcae3261 Add mingw makefile to the dist. Update uninstaller for new certs.
Daniel Atallah <datallah@pidgin.im>
parents: 19684
diff changeset
524 Delete "$INSTDIR\ca-certs\GTE_CyberTrust_Global_Root.pem"
25274
f1bd7294c950 Delete MSN cert when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 24249
diff changeset
525 Delete "$INSTDIR\ca-certs\Microsoft_Internet_Authority.pem"
31127
28e34623a3f5 Add new intermediate certificates that Microsoft have started using to
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 31102
diff changeset
526 Delete "$INSTDIR\ca-certs\Microsoft_Internet_Authority_2010.pem"
21393
36adbec26643 Delete Microsoft_Secure_Server_Authority.pem when uninstalling on win32
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20167
diff changeset
527 Delete "$INSTDIR\ca-certs\Microsoft_Secure_Server_Authority.pem"
31127
28e34623a3f5 Add new intermediate certificates that Microsoft have started using to
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 31102
diff changeset
528 Delete "$INSTDIR\ca-certs\Microsoft_Secure_Server_Authority_2010.pem"
27188
888112948549 Add the StartCom root that the XMPP ICA will start using this year.
Paul Aurich <darkrain42@pidgin.im>
parents: 25728
diff changeset
529 Delete "$INSTDIR\ca-certs\StartCom_Certification_Authority.pem"
22048
be245d92600e Add the StartCom Free SSL Certificate Authority certificate (as used by
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 21971
diff changeset
530 Delete "$INSTDIR\ca-certs\StartCom_Free_SSL_CA.pem"
28020
Paul Aurich <darkrain42@pidgin.im>
parents: 28019
diff changeset
531 Delete "$INSTDIR\ca-certs\Thawte_Premium_Server_CA.pem"
30835
9c18ddfd4901 ca-certs: Add new Thawte and Deutsche Telekom Roots. Fixes #12667, #12668.
Paul Aurich <darkrain42@pidgin.im>
parents: 30834
diff changeset
532 Delete "$INSTDIR\ca-certs\Thawte_Primary_Root_CA.pem"
33752
fb9baad00cbd installer: remove Baltimore_CyberTrust_Root.pem, ValiCert_Class_2_VA.pem when uninstalling
Daniel Atallah <datallah@pidgin.im>
parents: 33751
diff changeset
533 Delete "$INSTDIR\ca-certs\ValiCert_Class_2_VA.pem"
28020
Paul Aurich <darkrain42@pidgin.im>
parents: 28019
diff changeset
534 Delete "$INSTDIR\ca-certs\VeriSign_Class3_Extended_Validation_CA.pem"
19705
aaa5bcae3261 Add mingw makefile to the dist. Update uninstaller for new certs.
Daniel Atallah <datallah@pidgin.im>
parents: 19684
diff changeset
535 Delete "$INSTDIR\ca-certs\Verisign_Class3_Primary_CA.pem"
35576
12216afa24ab Fix make distcheck for 2.x.y
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 34475
diff changeset
536 Delete "$INSTDIR\ca-certs\VeriSign_Class_3_Primary_CA-G2.pem"
12216afa24ab Fix make distcheck for 2.x.y
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 34475
diff changeset
537 Delete "$INSTDIR\ca-certs\VeriSign_Class_3_Primary_CA-G5.pem"
12216afa24ab Fix make distcheck for 2.x.y
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 34475
diff changeset
538 Delete "$INSTDIR\ca-certs\VeriSign_Class_3_Primary_CA-G5-2.pem"
25517
979335790670 Add new cert to the Windows uninstaller per datallah's request
Paul Aurich <darkrain42@pidgin.im>
parents: 25274
diff changeset
539 Delete "$INSTDIR\ca-certs\VeriSign_International_Server_Class_3_CA.pem"
19668
2071903c58e4 Fix the win32 build for the cert SoC branch merge.
Daniel Atallah <datallah@pidgin.im>
parents: 19627
diff changeset
540 Delete "$INSTDIR\ca-certs\Verisign_RSA_Secure_Server_CA.pem"
37782
d37d62d692e4 ca-certs: Add mozilla cert bundle and remove old/redundant certs
dx <dx@dxzone.com.ar>
parents: 36304
diff changeset
541 Delete "$INSTDIR\ca-certs\mozilla.pem"
19668
2071903c58e4 Fix the win32 build for the cert SoC branch merge.
Daniel Atallah <datallah@pidgin.im>
parents: 19627
diff changeset
542 RMDir "$INSTDIR\ca-certs"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
543 RMDir /r "$INSTDIR\locale"
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
544 RMDir /r "$INSTDIR\pixmaps"
15236
b0b173741baf [gaim-migrate @ 17960]
Daniel Atallah <datallah@pidgin.im>
parents: 15144
diff changeset
545 Delete "$INSTDIR\plugins\autoaccept.dll"
b0b173741baf [gaim-migrate @ 17960]
Daniel Atallah <datallah@pidgin.im>
parents: 15144
diff changeset
546 Delete "$INSTDIR\plugins\buddynote.dll"
b0b173741baf [gaim-migrate @ 17960]
Daniel Atallah <datallah@pidgin.im>
parents: 15144
diff changeset
547 Delete "$INSTDIR\plugins\convcolors.dll"
9565
c824ac72974f [gaim-migrate @ 10404]
Herman Bloggs <herman@bluedigits.com>
parents: 9561
diff changeset
548 Delete "$INSTDIR\plugins\extplacement.dll"
19851
48abddbe6b78 Make the uninstaller remove everything it installs.
Daniel Atallah <datallah@pidgin.im>
parents: 19705
diff changeset
549 Delete "$INSTDIR\plugins\gtkbuddynote.dll"
6476
92d08d220cd1 [gaim-migrate @ 6987]
Herman Bloggs <herman@bluedigits.com>
parents: 6447
diff changeset
550 Delete "$INSTDIR\plugins\history.dll"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
551 Delete "$INSTDIR\plugins\iconaway.dll"
6476
92d08d220cd1 [gaim-migrate @ 6987]
Herman Bloggs <herman@bluedigits.com>
parents: 6447
diff changeset
552 Delete "$INSTDIR\plugins\idle.dll"
17733
722e93eb392e Build and distribute the joinpart plugin on win32.
Daniel Atallah <datallah@pidgin.im>
parents: 17722
diff changeset
553 Delete "$INSTDIR\plugins\joinpart.dll"
15031
c45aa1667620 [gaim-migrate @ 17748]
Daniel Atallah <datallah@pidgin.im>
parents: 14929
diff changeset
554 Delete "$INSTDIR\plugins\libaim.dll"
17614
82ea9e17d6b0 Add the bonjour prpl to the win32 uninstaller.
Daniel Atallah <datallah@pidgin.im>
parents: 17462
diff changeset
555 Delete "$INSTDIR\plugins\libbonjour.dll"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
556 Delete "$INSTDIR\plugins\libgg.dll"
15031
c45aa1667620 [gaim-migrate @ 17748]
Daniel Atallah <datallah@pidgin.im>
parents: 14929
diff changeset
557 Delete "$INSTDIR\plugins\libicq.dll"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
558 Delete "$INSTDIR\plugins\libirc.dll"
9570
8b3f38824cd3 [gaim-migrate @ 10413]
Herman Bloggs <herman@bluedigits.com>
parents: 9565
diff changeset
559 Delete "$INSTDIR\plugins\libnapster.dll"
9139
98408fc7521c [gaim-migrate @ 9923]
Herman Bloggs <herman@bluedigits.com>
parents: 9115
diff changeset
560 Delete "$INSTDIR\plugins\libnovell.dll"
11103
a85505cc7ea0 [gaim-migrate @ 13143]
Richard Laager <rlaager@pidgin.im>
parents: 11090
diff changeset
561 Delete "$INSTDIR\plugins\libsametime.dll"
a85505cc7ea0 [gaim-migrate @ 13143]
Richard Laager <rlaager@pidgin.im>
parents: 11090
diff changeset
562 Delete "$INSTDIR\plugins\libsilc.dll"
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
563 Delete "$INSTDIR\plugins\libsimple.dll"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
564 Delete "$INSTDIR\plugins\libtoc.dll"
16309
347c01a71e7c Fix win32 build for Jabber/XMPP split.
Daniel Atallah <datallah@pidgin.im>
parents: 16305
diff changeset
565 Delete "$INSTDIR\plugins\libxmpp.dll"
14297
c1788b3112fd [gaim-migrate @ 16917]
Richard Laager <rlaager@pidgin.im>
parents: 13810
diff changeset
566 Delete "$INSTDIR\plugins\log_reader.dll"
15236
b0b173741baf [gaim-migrate @ 17960]
Daniel Atallah <datallah@pidgin.im>
parents: 15144
diff changeset
567 Delete "$INSTDIR\plugins\markerline.dll"
b0b173741baf [gaim-migrate @ 17960]
Daniel Atallah <datallah@pidgin.im>
parents: 15144
diff changeset
568 Delete "$INSTDIR\plugins\newline.dll"
13067
f455a2ca30a9 [gaim-migrate @ 15429]
Daniel Atallah <datallah@pidgin.im>
parents: 13037
diff changeset
569 Delete "$INSTDIR\plugins\notify.dll"
36228
1cdc641d433e Add "NSS Preferences" plugin which allows configuration Min/Max TLS version and Ciphers.
Daniel Atallah <datallah@pidgin.im>
parents: 35576
diff changeset
570 Delete "$INSTDIR\plugins\nss-prefs.dll"
15236
b0b173741baf [gaim-migrate @ 17960]
Daniel Atallah <datallah@pidgin.im>
parents: 15144
diff changeset
571 Delete "$INSTDIR\plugins\offlinemsg.dll"
7352
715b973d34e2 [gaim-migrate @ 7943]
Herman Bloggs <herman@bluedigits.com>
parents: 7215
diff changeset
572 Delete "$INSTDIR\plugins\perl.dll"
19851
48abddbe6b78 Make the uninstaller remove everything it installs.
Daniel Atallah <datallah@pidgin.im>
parents: 19705
diff changeset
573 Delete "$INSTDIR\plugins\pidginrc.dll"
13037
e5fd3ea2ad98 [gaim-migrate @ 15396]
Daniel Atallah <datallah@pidgin.im>
parents: 12922
diff changeset
574 Delete "$INSTDIR\plugins\psychic.dll"
7600
279abfe7721f [gaim-migrate @ 8222]
Herman Bloggs <herman@bluedigits.com>
parents: 7575
diff changeset
575 Delete "$INSTDIR\plugins\relnot.dll"
23167
d542424833f9 applied changes from ae9d7912dfb7c1627441484bfe471dd4d370d346
Daniel Atallah <datallah@pidgin.im>
parents: 22947
diff changeset
576 Delete "$INSTDIR\plugins\sendbutton.dll"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
577 Delete "$INSTDIR\plugins\spellchk.dll"
7352
715b973d34e2 [gaim-migrate @ 7943]
Herman Bloggs <herman@bluedigits.com>
parents: 7215
diff changeset
578 Delete "$INSTDIR\plugins\ssl-nss.dll"
715b973d34e2 [gaim-migrate @ 7943]
Herman Bloggs <herman@bluedigits.com>
parents: 7215
diff changeset
579 Delete "$INSTDIR\plugins\ssl.dll"
6476
92d08d220cd1 [gaim-migrate @ 6987]
Herman Bloggs <herman@bluedigits.com>
parents: 6447
diff changeset
580 Delete "$INSTDIR\plugins\statenotify.dll"
31102
0687ddc92313 Build the "Pidgin Theme Editor" plugin on Windows too.
Daniel Atallah <datallah@pidgin.im>
parents: 30884
diff changeset
581 Delete "$INSTDIR\plugins\themeedit.dll"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
582 Delete "$INSTDIR\plugins\ticker.dll"
6476
92d08d220cd1 [gaim-migrate @ 6987]
Herman Bloggs <herman@bluedigits.com>
parents: 6447
diff changeset
583 Delete "$INSTDIR\plugins\timestamp.dll"
12922
5c9dd678da15 [gaim-migrate @ 15275]
Daniel Atallah <datallah@pidgin.im>
parents: 12644
diff changeset
584 Delete "$INSTDIR\plugins\timestamp_format.dll"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
585 Delete "$INSTDIR\plugins\win2ktrans.dll"
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
586 Delete "$INSTDIR\plugins\winprefs.dll"
24195
c8c6f34b091d Build the XMPP Console plugin by default on windows too.
Daniel Atallah <datallah@pidgin.im>
parents: 24191
diff changeset
587 Delete "$INSTDIR\plugins\xmppconsole.dll"
27360
3c5ef391cd63 Build infrastructure for XMPP Disco plugin on Windows. Ripped from the ticker.
Paul Aurich <darkrain42@pidgin.im>
parents: 27188
diff changeset
588 Delete "$INSTDIR\plugins\xmppdisco.dll"
36302
e62018761459 Update uninstaller to remove the perl stuff explicitly instead of the recursive directory
Daniel Atallah <datallah@pidgin.im>
parents: 36301
diff changeset
589 Delete "$INSTDIR\plugins\perl\auto\Pidgin\Pidgin.dll"
e62018761459 Update uninstaller to remove the perl stuff explicitly instead of the recursive directory
Daniel Atallah <datallah@pidgin.im>
parents: 36301
diff changeset
590 RMDir "$INSTDIR\plugins\perl\auto\Pidgin"
e62018761459 Update uninstaller to remove the perl stuff explicitly instead of the recursive directory
Daniel Atallah <datallah@pidgin.im>
parents: 36301
diff changeset
591 Delete "$INSTDIR\plugins\perl\auto\Purple\autosplit.ix"
e62018761459 Update uninstaller to remove the perl stuff explicitly instead of the recursive directory
Daniel Atallah <datallah@pidgin.im>
parents: 36301
diff changeset
592 Delete "$INSTDIR\plugins\perl\auto\Purple\Purple.dll"
e62018761459 Update uninstaller to remove the perl stuff explicitly instead of the recursive directory
Daniel Atallah <datallah@pidgin.im>
parents: 36301
diff changeset
593 RMDir "$INSTDIR\plugins\perl\auto\Purple"
e62018761459 Update uninstaller to remove the perl stuff explicitly instead of the recursive directory
Daniel Atallah <datallah@pidgin.im>
parents: 36301
diff changeset
594 RMDir "$INSTDIR\plugins\perl\auto"
e62018761459 Update uninstaller to remove the perl stuff explicitly instead of the recursive directory
Daniel Atallah <datallah@pidgin.im>
parents: 36301
diff changeset
595 Delete "$INSTDIR\plugins\perl\Pidgin.pm"
e62018761459 Update uninstaller to remove the perl stuff explicitly instead of the recursive directory
Daniel Atallah <datallah@pidgin.im>
parents: 36301
diff changeset
596 Delete "$INSTDIR\plugins\perl\Purple.pm"
e62018761459 Update uninstaller to remove the perl stuff explicitly instead of the recursive directory
Daniel Atallah <datallah@pidgin.im>
parents: 36301
diff changeset
597 RMDir "$INSTDIR\plugins\perl"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
598 RMDir "$INSTDIR\plugins"
36300
7db4c37e259c Update Cyrus SASL to 2.1.26 for the windows build
Daniel Atallah <datallah@pidgin.im>
parents: 36299
diff changeset
599 Delete "$INSTDIR\sasl2\libanonymous-3.dll"
7db4c37e259c Update Cyrus SASL to 2.1.26 for the windows build
Daniel Atallah <datallah@pidgin.im>
parents: 36299
diff changeset
600 Delete "$INSTDIR\sasl2\libcrammd5-3.dll"
7db4c37e259c Update Cyrus SASL to 2.1.26 for the windows build
Daniel Atallah <datallah@pidgin.im>
parents: 36299
diff changeset
601 Delete "$INSTDIR\sasl2\libdigestmd5-3.dll"
7db4c37e259c Update Cyrus SASL to 2.1.26 for the windows build
Daniel Atallah <datallah@pidgin.im>
parents: 36299
diff changeset
602 Delete "$INSTDIR\sasl2\libplain-3.dll"
7db4c37e259c Update Cyrus SASL to 2.1.26 for the windows build
Daniel Atallah <datallah@pidgin.im>
parents: 36299
diff changeset
603 RMDir "$INSTDIR\sasl2"
19851
48abddbe6b78 Make the uninstaller remove everything it installs.
Daniel Atallah <datallah@pidgin.im>
parents: 19705
diff changeset
604 Delete "$INSTDIR\sounds\purple\alert.wav"
48abddbe6b78 Make the uninstaller remove everything it installs.
Daniel Atallah <datallah@pidgin.im>
parents: 19705
diff changeset
605 Delete "$INSTDIR\sounds\purple\login.wav"
48abddbe6b78 Make the uninstaller remove everything it installs.
Daniel Atallah <datallah@pidgin.im>
parents: 19705
diff changeset
606 Delete "$INSTDIR\sounds\purple\logout.wav"
48abddbe6b78 Make the uninstaller remove everything it installs.
Daniel Atallah <datallah@pidgin.im>
parents: 19705
diff changeset
607 Delete "$INSTDIR\sounds\purple\receive.wav"
48abddbe6b78 Make the uninstaller remove everything it installs.
Daniel Atallah <datallah@pidgin.im>
parents: 19705
diff changeset
608 Delete "$INSTDIR\sounds\purple\send.wav"
48abddbe6b78 Make the uninstaller remove everything it installs.
Daniel Atallah <datallah@pidgin.im>
parents: 19705
diff changeset
609 RMDir "$INSTDIR\sounds\purple"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
610 RMDir "$INSTDIR\sounds"
29818
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
611 Delete "$INSTDIR\spellcheck\libenchant.dll"
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
612 Delete "$INSTDIR\spellcheck\libgtkspell-0.dll"
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
613 Delete "$INSTDIR\spellcheck\lib\enchant\libenchant_aspell.dll"
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
614 Delete "$INSTDIR\spellcheck\lib\enchant\libenchant_ispell.dll"
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
615 Delete "$INSTDIR\spellcheck\lib\enchant\libenchant_myspell.dll"
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
616 RMDir "$INSTDIR\spellcheck\lib\enchant"
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
617 RMDir "$INSTDIR\spellcheck\lib"
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
618 RMDir "$INSTDIR\spellcheck"
15138
45cef2c7d3b6 [gaim-migrate @ 17860]
Daniel Atallah <datallah@pidgin.im>
parents: 15047
diff changeset
619 Delete "$INSTDIR\freebl3.dll"
16309
347c01a71e7c Fix win32 build for Jabber/XMPP split.
Daniel Atallah <datallah@pidgin.im>
parents: 16305
diff changeset
620 Delete "$INSTDIR\libjabber.dll"
29794
c2e688a6a2f5 Update NSS/NSPR to 3.12.5/4.8.2 (self-built). Big thanks goes to Berke Viktor for doing this.
Daniel Atallah <datallah@pidgin.im>
parents: 29766
diff changeset
621 Delete "$INSTDIR\libnspr4.dll"
21395
e5bb2b0df509 Improved cyrus sasl support on win32:
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 21393
diff changeset
622 Delete "$INSTDIR\libmeanwhile-1.dll"
15031
c45aa1667620 [gaim-migrate @ 17748]
Daniel Atallah <datallah@pidgin.im>
parents: 14929
diff changeset
623 Delete "$INSTDIR\liboscar.dll"
29794
c2e688a6a2f5 Update NSS/NSPR to 3.12.5/4.8.2 (self-built). Big thanks goes to Berke Viktor for doing this.
Daniel Atallah <datallah@pidgin.im>
parents: 29766
diff changeset
624 Delete "$INSTDIR\libplc4.dll"
c2e688a6a2f5 Update NSS/NSPR to 3.12.5/4.8.2 (self-built). Big thanks goes to Berke Viktor for doing this.
Daniel Atallah <datallah@pidgin.im>
parents: 29766
diff changeset
625 Delete "$INSTDIR\libplds4.dll"
15816
6fb46b27dedc More installer stuff.
Daniel Atallah <datallah@pidgin.im>
parents: 15815
diff changeset
626 Delete "$INSTDIR\libpurple.dll"
36300
7db4c37e259c Update Cyrus SASL to 2.1.26 for the windows build
Daniel Atallah <datallah@pidgin.im>
parents: 36299
diff changeset
627 Delete "$INSTDIR\libsasl2-3.dll"
36299
c269ff46a1de Update SILC to 1.1.12 for the windows build
Daniel Atallah <datallah@pidgin.im>
parents: 36278
diff changeset
628 Delete "$INSTDIR\libsilc-1-1-4.dll"
c269ff46a1de Update SILC to 1.1.12 for the windows build
Daniel Atallah <datallah@pidgin.im>
parents: 36278
diff changeset
629 Delete "$INSTDIR\libsilcclient-1-1-4.dll"
33366
75dbccde9fc7 Enable the GCC Stack-Smashing Protection functionality (-fstack-protector-all)
Daniel Atallah <datallah@pidgin.im>
parents: 33353
diff changeset
630 Delete "$INSTDIR\libssp-0.dll"
29763
28f8c86acf66 Various win32 installer fixes
Daniel Atallah <datallah@pidgin.im>
parents: 29760
diff changeset
631 Delete "$INSTDIR\libxml2-2.dll"
27647
acbefee0cd14 Fix win32 build for yahoo/yahoojp split.
Daniel Atallah <datallah@pidgin.im>
parents: 27360
diff changeset
632 Delete "$INSTDIR\libymsg.dll"
6973
96afadc10b8d [gaim-migrate @ 7525]
Herman Bloggs <herman@bluedigits.com>
parents: 6951
diff changeset
633 Delete "$INSTDIR\nss3.dll"
29794
c2e688a6a2f5 Update NSS/NSPR to 3.12.5/4.8.2 (self-built). Big thanks goes to Berke Viktor for doing this.
Daniel Atallah <datallah@pidgin.im>
parents: 29766
diff changeset
634 Delete "$INSTDIR\nssutil3.dll"
21395
e5bb2b0df509 Improved cyrus sasl support on win32:
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 21393
diff changeset
635 Delete "$INSTDIR\pidgin.dll"
15816
6fb46b27dedc More installer stuff.
Daniel Atallah <datallah@pidgin.im>
parents: 15815
diff changeset
636 Delete "$INSTDIR\pidgin.exe"
19668
2071903c58e4 Fix the win32 build for the cert SoC branch merge.
Daniel Atallah <datallah@pidgin.im>
parents: 19627
diff changeset
637 Delete "$INSTDIR\smime3.dll"
6973
96afadc10b8d [gaim-migrate @ 7525]
Herman Bloggs <herman@bluedigits.com>
parents: 6951
diff changeset
638 Delete "$INSTDIR\softokn3.dll"
29794
c2e688a6a2f5 Update NSS/NSPR to 3.12.5/4.8.2 (self-built). Big thanks goes to Berke Viktor for doing this.
Daniel Atallah <datallah@pidgin.im>
parents: 29766
diff changeset
639 Delete "$INSTDIR\sqlite3.dll"
6973
96afadc10b8d [gaim-migrate @ 7525]
Herman Bloggs <herman@bluedigits.com>
parents: 6951
diff changeset
640 Delete "$INSTDIR\ssl3.dll"
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
641 Delete "$INSTDIR\${PIDGIN_UNINST_EXE}"
6973
96afadc10b8d [gaim-migrate @ 7525]
Herman Bloggs <herman@bluedigits.com>
parents: 6951
diff changeset
642 Delete "$INSTDIR\exchndl.dll"
14798
3a48e094d216 [gaim-migrate @ 17492]
Daniel Atallah <datallah@pidgin.im>
parents: 14745
diff changeset
643 Delete "$INSTDIR\install.log"
6973
96afadc10b8d [gaim-migrate @ 7525]
Herman Bloggs <herman@bluedigits.com>
parents: 6951
diff changeset
644
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
645 ; Remove the debug symbols
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
646 RMDir /r "$INSTDIR\pidgin-${PIDGIN_VERSION}-dbgsym"
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
647
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
648 ; Remove the local GTK+ copy (if we're not just upgrading)
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
649 ${GetParameters} $R0
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
650 ClearErrors
29818
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
651 ${GetOptions} "$R0" "/UPGRADE=" $R1
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
652 IfErrors +2
29818
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
653 StrCmp $R1 "1" upgrade_done
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
654 RMDir /r "$INSTDIR\Gtk"
29818
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
655 ; Remove the downloaded spellcheck dictionaries (if we're not just upgrading)
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
656 RMDir /r "$INSTDIR\spellcheck"
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
657 upgrade_done:
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
658
15856
322e0965615f Add support for registering URI handlers to the windows installer.
Daniel Atallah <datallah@pidgin.im>
parents: 15819
diff changeset
659 ;Try to remove Pidgin install dir (only if empty)
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
660 RMDir "$INSTDIR"
3853
510f497172b5 [gaim-migrate @ 4005]
Herman Bloggs <herman@bluedigits.com>
parents: 3849
diff changeset
661
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
662 ; Shortcuts..
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
663 Delete "$DESKTOP\Pidgin.lnk"
25728
1985dd712828 Backport 1ae2b55502a0afd8f28918fc4726683c52e998e9 (#8985 - Remove Start Menu shortcut when unistalling)
Daniel Atallah <datallah@pidgin.im>
parents: 25672
diff changeset
664 Delete "$SMPROGRAMS\Pidgin.lnk"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
665
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
666 Goto done
4897
b957d7e1ab16 [gaim-migrate @ 5229]
Herman Bloggs <herman@bluedigits.com>
parents: 4857
diff changeset
667
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
668 cant_uninstall:
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
669 MessageBox MB_OK $(PIDGINUNINSTALLERROR1) /SD IDOK
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
670 Quit
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
671
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
672 no_rights:
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
673 MessageBox MB_OK $(PIDGINUNINSTALLERROR2) /SD IDOK
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
674 Quit
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
675
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
676 done:
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
677 SectionEnd ; end of uninstall section
3853
510f497172b5 [gaim-migrate @ 4005]
Herman Bloggs <herman@bluedigits.com>
parents: 3849
diff changeset
678
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
679 ;--------------------------------
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
680 ;Descriptions
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
681 !insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
682 !insertmacro MUI_DESCRIPTION_TEXT ${SecPidgin} \
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
683 $(PIDGINSECTIONDESCRIPTION)
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
684 !insertmacro MUI_DESCRIPTION_TEXT ${SecGtk} \
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
685 $(GTKSECTIONDESCRIPTION)
10920
f68798385106 [gaim-migrate @ 12686]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
686
f68798385106 [gaim-migrate @ 12686]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
687 !insertmacro MUI_DESCRIPTION_TEXT ${SecShortcuts} \
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
688 $(PIDGINSHORTCUTSSECTIONDESCRIPTION)
10920
f68798385106 [gaim-migrate @ 12686]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
689 !insertmacro MUI_DESCRIPTION_TEXT ${SecDesktopShortcut} \
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
690 $(PIDGINDESKTOPSHORTCUTDESC)
10920
f68798385106 [gaim-migrate @ 12686]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
691 !insertmacro MUI_DESCRIPTION_TEXT ${SecStartMenuShortcut} \
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
692 $(PIDGINSTARTMENUSHORTCUTDESC)
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
693
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
694 !insertmacro MUI_DESCRIPTION_TEXT ${SecSpellCheck} \
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
695 $(PIDGINSPELLCHECKSECTIONDESCRIPTION)
29818
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
696
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
697 !insertmacro MUI_FUNCTION_DESCRIPTION_END
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
698
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
699 ;--------------------------------
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
700 ;Functions
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
701
15857
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
702 ; Default the URI handler checkboxes if Pidgin is the current handler or if there is no handler
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
703 Function SelectURIHandlerSelections
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
704 Push $R0
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
705 Push $R1
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
706 Push $R2
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
707 Push $R3
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
708
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
709 ; Start with the first URI handler
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
710 IntOp $R0 ${SecURIHandlers} + 1
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
711
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
712 start:
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
713 ; If it is the end of the section group, stop
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
714 SectionGetFlags $R0 $R1
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
715 IntOp $R2 $R1 & ${SF_SECGRPEND}
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
716 IntCmp $R2 ${SF_SECGRPEND} done
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
717
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
718 SectionGetText $R0 $R2
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
719 ;Strip the trailing ':'
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
720 StrLen $R3 $R2
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
721 IntOp $R3 $R3 - 1
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
722 StrCpy $R2 $R2 $R3
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
723
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
724 ClearErrors
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
725 ReadRegStr $R3 HKCR "$R2" ""
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
726 IfErrors default_on ;there is no current handler
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
727
22947
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
728 Push $R2
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
729 Call CheckIfPidginIsCurrentURIHandler
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
730 Pop $R3
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
731
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
732 ; If Pidgin isn't the current handler, we don't steal it automatically
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
733 IntCmp $R3 0 end_loop
15857
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
734
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
735 ;We default the URI handler checkbox on
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
736 default_on:
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
737 IntOp $R1 $R1 | ${SF_SELECTED} ; Select
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
738 SectionSetFlags $R0 $R1
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
739
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
740 end_loop:
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
741 IntOp $R0 $R0 + 1 ;Advance to the next section
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
742 Goto start
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
743
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
744 done:
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
745 Pop $R3
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
746 Pop $R2
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
747 Pop $R1
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
748 Pop $R0
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
749 FunctionEnd ;SelectURIHandlerSections
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
750
22947
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
751 ; Check if Pidgin is the current handler
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
752 ; Returns a boolean on the stack
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
753 !macro CheckIfPidginIsCurrentURIHandlerMacro UN
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
754 Function ${UN}CheckIfPidginIsCurrentURIHandler
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
755 Exch $R0
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
756 ClearErrors
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
757
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
758 ReadRegStr $R0 HKCR "$R0\shell\Open\command" ""
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
759 IfErrors 0 +3
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
760 IntOp $R0 0 + 0
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
761 Goto done
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
762
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
763 !ifdef __UNINSTALL__
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
764 ${un.WordFind} "$R0" "pidgin.exe" "E+1{" $R0
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
765 !else
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
766 ${WordFind} "$R0" "pidgin.exe" "E+1{" $R0
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
767 !endif
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
768 IntOp $R0 0 + 1
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
769 IfErrors 0 +2
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
770 IntOp $R0 0 + 0
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
771
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
772 done:
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
773 Exch $R0
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
774 FunctionEnd
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
775 !macroend
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
776 !insertmacro CheckIfPidginIsCurrentURIHandlerMacro ""
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
777 !insertmacro CheckIfPidginIsCurrentURIHandlerMacro "un."
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
778
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
779 ; If Pidgin is the current URI handler for the specified protocol, remove it.
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
780 Function un.UnregisterURIHandler
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
781 Exch $R0
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
782 Push $R1
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
783
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
784 Push $R0
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
785 Call un.CheckIfPidginIsCurrentURIHandler
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
786 Pop $R1
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
787
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
788 ; If Pidgin isn't the current handler, leave it as-is
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
789 IntCmp $R1 0 done
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
790
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
791 ;Unregister the URI handler
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
792 DetailPrint "Unregistering $R0 URI Handler"
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
793 DeleteRegKey HKCR "$R0"
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
794
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
795 done:
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
796 Pop $R1
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
797 Pop $R0
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
798 FunctionEnd
15856
322e0965615f Add support for registering URI handlers to the windows installer.
Daniel Atallah <datallah@pidgin.im>
parents: 15819
diff changeset
799
322e0965615f Add support for registering URI handlers to the windows installer.
Daniel Atallah <datallah@pidgin.im>
parents: 15819
diff changeset
800 Function RegisterURIHandler
322e0965615f Add support for registering URI handlers to the windows installer.
Daniel Atallah <datallah@pidgin.im>
parents: 15819
diff changeset
801 Exch $R0
22947
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
802 DetailPrint "Registering $R0 URI Handler"
15857
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
803 DeleteRegKey HKCR "$R0"
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
804 WriteRegStr HKCR "$R0" "" "URL:$R0"
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
805 WriteRegStr HKCR "$R0" "URL Protocol" ""
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
806 WriteRegStr HKCR "$R0\DefaultIcon" "" "$INSTDIR\pidgin.exe"
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
807 WriteRegStr HKCR "$R0\shell" "" ""
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
808 WriteRegStr HKCR "$R0\shell\Open" "" ""
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
809 WriteRegStr HKCR "$R0\shell\Open\command" "" "$INSTDIR\pidgin.exe --protocolhandler=%1"
15856
322e0965615f Add support for registering URI handlers to the windows installer.
Daniel Atallah <datallah@pidgin.im>
parents: 15819
diff changeset
810 Pop $R0
322e0965615f Add support for registering URI handlers to the windows installer.
Daniel Atallah <datallah@pidgin.im>
parents: 15819
diff changeset
811 FunctionEnd
322e0965615f Add support for registering URI handlers to the windows installer.
Daniel Atallah <datallah@pidgin.im>
parents: 15819
diff changeset
812
322e0965615f Add support for registering URI handlers to the windows installer.
Daniel Atallah <datallah@pidgin.im>
parents: 15819
diff changeset
813
13392
65d549e23d0d [gaim-migrate @ 15764]
David Everly
parents: 13182
diff changeset
814 !macro CheckUserInstallRightsMacro UN
65d549e23d0d [gaim-migrate @ 15764]
David Everly
parents: 13182
diff changeset
815 Function ${UN}CheckUserInstallRights
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
816 Push $0
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
817 Push $1
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
818 ClearErrors
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
819 UserInfo::GetName
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
820 IfErrors Win9x
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
821 Pop $0
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
822 UserInfo::GetAccountType
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
823 Pop $1
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
824
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
825 StrCmp $1 "Admin" 0 +3
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
826 StrCpy $1 "HKLM"
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
827 Goto done
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
828 StrCmp $1 "Power" 0 +3
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
829 StrCpy $1 "HKLM"
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
830 Goto done
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
831 StrCmp $1 "User" 0 +3
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
832 StrCpy $1 "HKCU"
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
833 Goto done
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
834 StrCmp $1 "Guest" 0 +3
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
835 StrCpy $1 "NONE"
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
836 Goto done
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
837 ; Unknown error
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
838 StrCpy $1 "NONE"
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
839 Goto done
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
840
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
841 Win9x:
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
842 StrCpy $1 "HKLM"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
843
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
844 done:
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
845 Exch $1
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
846 Exch
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
847 Pop $0
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
848 FunctionEnd
13392
65d549e23d0d [gaim-migrate @ 15764]
David Everly
parents: 13182
diff changeset
849 !macroend
65d549e23d0d [gaim-migrate @ 15764]
David Everly
parents: 13182
diff changeset
850 !insertmacro CheckUserInstallRightsMacro ""
65d549e23d0d [gaim-migrate @ 15764]
David Everly
parents: 13182
diff changeset
851 !insertmacro CheckUserInstallRightsMacro "un."
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
852
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
853 ;
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
854 ; Usage:
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
855 ; Push $0 ; Path string
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
856 ; Call VerifyDir
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
857 ; Pop $0 ; 0 - Bad path 1 - Good path
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
858 ;
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
859 Function VerifyDir
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
860 Exch $0
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
861 Push $1
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
862 Push $2
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
863 Loop:
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
864 IfFileExists $0 dir_exists
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
865 StrCpy $1 $0 ; save last
14439
adecc0185ad7 [gaim-migrate @ 17083]
Daniel Atallah <datallah@pidgin.im>
parents: 14438
diff changeset
866 ${GetParent} $0 $0
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
867 StrLen $2 $0
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
868 ; IfFileExists "C:" on xp returns true and on win2k returns false
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
869 ; So we're done in such a case..
9960
5144be791c3b [gaim-migrate @ 10868]
Luke Schierer <lschiere@pidgin.im>
parents: 9956
diff changeset
870 IntCmp $2 2 loop_done
5144be791c3b [gaim-migrate @ 10868]
Luke Schierer <lschiere@pidgin.im>
parents: 9956
diff changeset
871 ; GetParent of "C:" returns ""
5144be791c3b [gaim-migrate @ 10868]
Luke Schierer <lschiere@pidgin.im>
parents: 9956
diff changeset
872 IntCmp $2 0 loop_done
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
873 Goto Loop
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
874
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
875 loop_done:
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
876 StrCpy $1 "$0\GaImFooB"
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
877 ; Check if we can create dir on this drive..
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
878 ClearErrors
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
879 CreateDirectory $1
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
880 IfErrors DirBad DirGood
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
881
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
882 dir_exists:
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
883 ClearErrors
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
884 FileOpen $1 "$0\pidginfoo.bar" w
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
885 IfErrors PathBad PathGood
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
886
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
887 DirGood:
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
888 RMDir $1
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
889 Goto PathGood1
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
890
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
891 DirBad:
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
892 RMDir $1
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
893 Goto PathBad1
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
894
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
895 PathBad:
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
896 FileClose $1
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
897 Delete "$0\pidginfoo.bar"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
898 PathBad1:
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
899 StrCpy $0 "0"
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
900 Push $0
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
901 Goto done
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
902
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
903 PathGood:
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
904 FileClose $1
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
905 Delete "$0\pidginfoo.bar"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
906 PathGood1:
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
907 StrCpy $0 "1"
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
908 Push $0
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
909
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
910 done:
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
911 Exch 3 ; The top of the stack contains the output variable
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
912 Pop $0
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
913 Pop $2
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
914 Pop $1
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
915 FunctionEnd
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
916
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
917 Function .onVerifyInstDir
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
918 Push $0
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
919 Push $INSTDIR
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
920 Call VerifyDir
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
921 Pop $0
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
922 StrCmp $0 "0" 0 dir_good
14512
7584322a65a2 [gaim-migrate @ 17164]
Daniel Atallah <datallah@pidgin.im>
parents: 14439
diff changeset
923 Pop $0
7584322a65a2 [gaim-migrate @ 17164]
Daniel Atallah <datallah@pidgin.im>
parents: 14439
diff changeset
924 Abort
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
925
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
926 dir_good:
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
927 Pop $0
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
928 FunctionEnd
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
929
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
930 ;
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
931 ; Usage:
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
932 ; Call DoWeNeedGtk
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
933 ; First Pop:
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
934 ; 0 - We have the correct version
14854
0a2391b774a4 [gaim-migrate @ 17557]
Daniel Atallah <datallah@pidgin.im>
parents: 14798
diff changeset
935 ; 1 - We have an old version that should work, prompt user for optional upgrade
0a2391b774a4 [gaim-migrate @ 17557]
Daniel Atallah <datallah@pidgin.im>
parents: 14798
diff changeset
936 ; 2 - We have an old version that needs to be upgraded
0a2391b774a4 [gaim-migrate @ 17557]
Daniel Atallah <datallah@pidgin.im>
parents: 14798
diff changeset
937 ; 3 - We don't have Gtk+ at all
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
938 ;
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
939 Function DoWeNeedGtk
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
940 Push $0
14512
7584322a65a2 [gaim-migrate @ 17164]
Daniel Atallah <datallah@pidgin.im>
parents: 14439
diff changeset
941 Push $1
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
942
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
943 IfFileExists "$INSTDIR\Gtk\CONTENTS" +3
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
944 Push "3"
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
945 Goto done
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
946
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
947 ClearErrors
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
948 ${ConfigRead} "$INSTDIR\Gtk\CONTENTS" "Bundle Version " $0
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
949 IfErrors 0 +3
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
950 Push "3"
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
951 Goto done
14512
7584322a65a2 [gaim-migrate @ 17164]
Daniel Atallah <datallah@pidgin.im>
parents: 14439
diff changeset
952
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
953 ${VersionCompare} ${GTK_INSTALL_VERSION} $0 $1
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
954 IntCmp $1 1 +3
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
955 Push "0" ; Have a good version
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
956 Goto done
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
957
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
958 ${VersionCompare} ${GTK_MIN_VERSION} $0 $1
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
959 IntCmp $1 1 +3
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
960 Push "1" ; Optional Upgrade
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
961 Goto done
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
962 Push "2" ; Mandatory Upgrade
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
963 Goto done
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
964
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
965 done:
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
966 ; The item on the stack is what we want to return
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
967 Exch
16602
e26771ee55df Remove unused strings cruft from the installer that were left over from when it dealt with the GTK+ theme (It seems like I already did this before). Also, make installing GTK+ optional if it is already installed.
Daniel Atallah <datallah@pidgin.im>
parents: 16309
diff changeset
968 Pop $1
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
969 Exch
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
970 Pop $0
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
971 FunctionEnd
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
972
13392
65d549e23d0d [gaim-migrate @ 15764]
David Everly
parents: 13182
diff changeset
973
65d549e23d0d [gaim-migrate @ 15764]
David Everly
parents: 13182
diff changeset
974 !macro RunCheckMacro UN
65d549e23d0d [gaim-migrate @ 15764]
David Everly
parents: 13182
diff changeset
975 Function ${UN}RunCheck
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
976 Push $R0
21971
e00e0d55d129 Allow the user to Retry if Pidgin is running when they start the installer. Fixes #4355
Daniel Atallah <datallah@pidgin.im>
parents: 21418
diff changeset
977 Push $R1
e00e0d55d129 Allow the user to Retry if Pidgin is running when they start the installer. Fixes #4355
Daniel Atallah <datallah@pidgin.im>
parents: 21418
diff changeset
978
e00e0d55d129 Allow the user to Retry if Pidgin is running when they start the installer. Fixes #4355
Daniel Atallah <datallah@pidgin.im>
parents: 21418
diff changeset
979 IntOp $R1 0 + 0
e00e0d55d129 Allow the user to Retry if Pidgin is running when they start the installer. Fixes #4355
Daniel Atallah <datallah@pidgin.im>
parents: 21418
diff changeset
980 retry_runcheck:
e00e0d55d129 Allow the user to Retry if Pidgin is running when they start the installer. Fixes #4355
Daniel Atallah <datallah@pidgin.im>
parents: 21418
diff changeset
981 ; Close the Handle (needed if we're retrying)
e00e0d55d129 Allow the user to Retry if Pidgin is running when they start the installer. Fixes #4355
Daniel Atallah <datallah@pidgin.im>
parents: 21418
diff changeset
982 IntCmp $R1 0 +2
e00e0d55d129 Allow the user to Retry if Pidgin is running when they start the installer. Fixes #4355
Daniel Atallah <datallah@pidgin.im>
parents: 21418
diff changeset
983 System::Call 'kernel32::CloseHandle(i $R1) i .R1'
40452
406a0d4d1b40 Fix some issues with the Windows installer that included it thinking Pidgin was already running
Gary Kramlich <grim@reaperworld.com>
parents: 38089
diff changeset
984 System::Call 'kernel32::CreateMutexW(i 0, i 0, t "pidgin_is_running") i .R1 ?e'
21971
e00e0d55d129 Allow the user to Retry if Pidgin is running when they start the installer. Fixes #4355
Daniel Atallah <datallah@pidgin.im>
parents: 21418
diff changeset
985 Pop $R0
e00e0d55d129 Allow the user to Retry if Pidgin is running when they start the installer. Fixes #4355
Daniel Atallah <datallah@pidgin.im>
parents: 21418
diff changeset
986 IntCmp $R0 0 +3 ;This could check for ERROR_ALREADY_EXISTS(183), but lets just assume
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
987 MessageBox MB_RETRYCANCEL|MB_ICONEXCLAMATION $(PIDGINISRUNNING) /SD IDCANCEL IDRETRY retry_runcheck
10212
9a9c18b72773 [gaim-migrate @ 11336]
Herman Bloggs <herman@bluedigits.com>
parents: 10137
diff changeset
988 Abort
21971
e00e0d55d129 Allow the user to Retry if Pidgin is running when they start the installer. Fixes #4355
Daniel Atallah <datallah@pidgin.im>
parents: 21418
diff changeset
989
22236
d6762c285789 Don't keep a handle to the "pidgin_is_running" mutex in the installer - this causes the uninstaller to fail. There probably is a better solution, but this works for now.
Daniel Atallah <datallah@pidgin.im>
parents: 22174
diff changeset
990 ; Close the Handle (If we don't do this, the uninstaller called from within will fail)
d6762c285789 Don't keep a handle to the "pidgin_is_running" mutex in the installer - this causes the uninstaller to fail. There probably is a better solution, but this works for now.
Daniel Atallah <datallah@pidgin.im>
parents: 22174
diff changeset
991 ; This is not optimal because there is a (small) window of time when a new process could start
d6762c285789 Don't keep a handle to the "pidgin_is_running" mutex in the installer - this causes the uninstaller to fail. There probably is a better solution, but this works for now.
Daniel Atallah <datallah@pidgin.im>
parents: 22174
diff changeset
992 System::Call 'kernel32::CloseHandle(i $R1) i .R1'
d6762c285789 Don't keep a handle to the "pidgin_is_running" mutex in the installer - this causes the uninstaller to fail. There probably is a better solution, but this works for now.
Daniel Atallah <datallah@pidgin.im>
parents: 22174
diff changeset
993
21971
e00e0d55d129 Allow the user to Retry if Pidgin is running when they start the installer. Fixes #4355
Daniel Atallah <datallah@pidgin.im>
parents: 21418
diff changeset
994 Pop $R1
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
995 Pop $R0
10212
9a9c18b72773 [gaim-migrate @ 11336]
Herman Bloggs <herman@bluedigits.com>
parents: 10137
diff changeset
996 FunctionEnd
13392
65d549e23d0d [gaim-migrate @ 15764]
David Everly
parents: 13182
diff changeset
997 !macroend
65d549e23d0d [gaim-migrate @ 15764]
David Everly
parents: 13182
diff changeset
998 !insertmacro RunCheckMacro ""
65d549e23d0d [gaim-migrate @ 15764]
David Everly
parents: 13182
diff changeset
999 !insertmacro RunCheckMacro "un."
10212
9a9c18b72773 [gaim-migrate @ 11336]
Herman Bloggs <herman@bluedigits.com>
parents: 10137
diff changeset
1000
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
1001 Function .onInit
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1002 Push $R0
21418
e1291490635e Add /DS=[0,1] and /SMS=[0,1] to the win32 installer for enabling and disabling the Desktop Shortcut and Start Menu Shortcut respectively. Fixes #3814.
Daniel Atallah <datallah@pidgin.im>
parents: 21395
diff changeset
1003 Push $R1
e1291490635e Add /DS=[0,1] and /SMS=[0,1] to the win32 installer for enabling and disabling the Desktop Shortcut and Start Menu Shortcut respectively. Fixes #3814.
Daniel Atallah <datallah@pidgin.im>
parents: 21395
diff changeset
1004 Push $R2
25550
2354ce28434c Work around the buggy Aspell dictionary installers by cleaning up after them.
Daniel Atallah <datallah@pidgin.im>
parents: 25517
diff changeset
1005 Push $R3 ; This is only used for the Parameters throughout the function
2354ce28434c Work around the buggy Aspell dictionary installers by cleaning up after them.
Daniel Atallah <datallah@pidgin.im>
parents: 25517
diff changeset
1006
2354ce28434c Work around the buggy Aspell dictionary installers by cleaning up after them.
Daniel Atallah <datallah@pidgin.im>
parents: 25517
diff changeset
1007 ${GetParameters} $R3
21971
e00e0d55d129 Allow the user to Retry if Pidgin is running when they start the installer. Fixes #4355
Daniel Atallah <datallah@pidgin.im>
parents: 21418
diff changeset
1008
e00e0d55d129 Allow the user to Retry if Pidgin is running when they start the installer. Fixes #4355
Daniel Atallah <datallah@pidgin.im>
parents: 21418
diff changeset
1009 IntOp $R1 0 + 0
e00e0d55d129 Allow the user to Retry if Pidgin is running when they start the installer. Fixes #4355
Daniel Atallah <datallah@pidgin.im>
parents: 21418
diff changeset
1010 retry_runcheck:
e00e0d55d129 Allow the user to Retry if Pidgin is running when they start the installer. Fixes #4355
Daniel Atallah <datallah@pidgin.im>
parents: 21418
diff changeset
1011 ; Close the Handle (needed if we're retrying)
e00e0d55d129 Allow the user to Retry if Pidgin is running when they start the installer. Fixes #4355
Daniel Atallah <datallah@pidgin.im>
parents: 21418
diff changeset
1012 IntCmp $R1 0 +2
e00e0d55d129 Allow the user to Retry if Pidgin is running when they start the installer. Fixes #4355
Daniel Atallah <datallah@pidgin.im>
parents: 21418
diff changeset
1013 System::Call 'kernel32::CloseHandle(i $R1) i .R1'
40452
406a0d4d1b40 Fix some issues with the Windows installer that included it thinking Pidgin was already running
Gary Kramlich <grim@reaperworld.com>
parents: 38089
diff changeset
1014 System::Call 'kernel32::CreateMutexW(i 0, i 0, t "pidgin_installer_running") i .R1 ?e'
10212
9a9c18b72773 [gaim-migrate @ 11336]
Herman Bloggs <herman@bluedigits.com>
parents: 10137
diff changeset
1015 Pop $R0
21971
e00e0d55d129 Allow the user to Retry if Pidgin is running when they start the installer. Fixes #4355
Daniel Atallah <datallah@pidgin.im>
parents: 21418
diff changeset
1016 IntCmp $R0 0 +3 ;This could check for ERROR_ALREADY_EXISTS(183), but lets just assume
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
1017 MessageBox MB_RETRYCANCEL|MB_ICONEXCLAMATION $(INSTALLERISRUNNING) /SD IDCANCEL IDRETRY retry_runcheck
10212
9a9c18b72773 [gaim-migrate @ 11336]
Herman Bloggs <herman@bluedigits.com>
parents: 10137
diff changeset
1018 Abort
25550
2354ce28434c Work around the buggy Aspell dictionary installers by cleaning up after them.
Daniel Atallah <datallah@pidgin.im>
parents: 25517
diff changeset
1019
2354ce28434c Work around the buggy Aspell dictionary installers by cleaning up after them.
Daniel Atallah <datallah@pidgin.im>
parents: 25517
diff changeset
1020 ; Allow installer to run even if pidgin is running via "/NOPIDGINRUNCHECK=1"
2354ce28434c Work around the buggy Aspell dictionary installers by cleaning up after them.
Daniel Atallah <datallah@pidgin.im>
parents: 25517
diff changeset
1021 ; This is useful for testing
2354ce28434c Work around the buggy Aspell dictionary installers by cleaning up after them.
Daniel Atallah <datallah@pidgin.im>
parents: 25517
diff changeset
1022 ClearErrors
2354ce28434c Work around the buggy Aspell dictionary installers by cleaning up after them.
Daniel Atallah <datallah@pidgin.im>
parents: 25517
diff changeset
1023 ${GetOptions} "$R3" "/NOPIDGINRUNCHECK=" $R1
2354ce28434c Work around the buggy Aspell dictionary installers by cleaning up after them.
Daniel Atallah <datallah@pidgin.im>
parents: 25517
diff changeset
1024 IfErrors 0 +2
10212
9a9c18b72773 [gaim-migrate @ 11336]
Herman Bloggs <herman@bluedigits.com>
parents: 10137
diff changeset
1025 Call RunCheck
25550
2354ce28434c Work around the buggy Aspell dictionary installers by cleaning up after them.
Daniel Atallah <datallah@pidgin.im>
parents: 25517
diff changeset
1026
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
1027 StrCpy $name "Pidgin ${PIDGIN_VERSION}"
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1028
15818
1ff837dbed01 Installer updates
Daniel Atallah <datallah@pidgin.im>
parents: 15817
diff changeset
1029 ;Try to copy the old Gaim installer Lang Reg. key
22947
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
1030 ;(remove it after we're done to prevent this being done more than once)
15818
1ff837dbed01 Installer updates
Daniel Atallah <datallah@pidgin.im>
parents: 15817
diff changeset
1031 ClearErrors
30259
01eb5d70e51a Automatically select the translation corresponding to the installer language.
Daniel Atallah <datallah@pidgin.im>
parents: 29818
diff changeset
1032 ReadRegStr $R0 HKCU "${PIDGIN_REG_KEY}" "${MUI_LANGDLL_REGISTRY_VALUENAME}"
15818
1ff837dbed01 Installer updates
Daniel Atallah <datallah@pidgin.im>
parents: 15817
diff changeset
1033 IfErrors 0 +5
1ff837dbed01 Installer updates
Daniel Atallah <datallah@pidgin.im>
parents: 15817
diff changeset
1034 ClearErrors
30259
01eb5d70e51a Automatically select the translation corresponding to the installer language.
Daniel Atallah <datallah@pidgin.im>
parents: 29818
diff changeset
1035 ReadRegStr $R0 HKCU "${OLD_GAIM_REG_KEY}" "${MUI_LANGDLL_REGISTRY_VALUENAME}"
22947
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
1036 IfErrors +3
30259
01eb5d70e51a Automatically select the translation corresponding to the installer language.
Daniel Atallah <datallah@pidgin.im>
parents: 29818
diff changeset
1037 DeleteRegValue HKCU "${OLD_GAIM_REG_KEY}" "${MUI_LANGDLL_REGISTRY_VALUENAME}"
01eb5d70e51a Automatically select the translation corresponding to the installer language.
Daniel Atallah <datallah@pidgin.im>
parents: 29818
diff changeset
1038 WriteRegStr HKCU "${PIDGIN_REG_KEY}" "${MUI_LANGDLL_REGISTRY_VALUENAME}" "$R0"
15818
1ff837dbed01 Installer updates
Daniel Atallah <datallah@pidgin.im>
parents: 15817
diff changeset
1039
29639
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
1040 ${MementoSectionRestore}
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
1041
15857
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
1042 ;Preselect the URI handlers as appropriate
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
1043 Call SelectURIHandlerSelections
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
1044
18671
1d1c09b15a12 Preselect the Desktop and Startmenu shortcuts in the installer based on the previous installation (if there is one). Fixes #1620.
Daniel Atallah <datallah@pidgin.im>
parents: 17752
diff changeset
1045 ;Preselect the "shortcuts" checkboxes according to the previous installation
1d1c09b15a12 Preselect the Desktop and Startmenu shortcuts in the installer based on the previous installation (if there is one). Fixes #1620.
Daniel Atallah <datallah@pidgin.im>
parents: 17752
diff changeset
1046 ClearErrors
1d1c09b15a12 Preselect the Desktop and Startmenu shortcuts in the installer based on the previous installation (if there is one). Fixes #1620.
Daniel Atallah <datallah@pidgin.im>
parents: 17752
diff changeset
1047 ;Make sure that there was a previous installation
30259
01eb5d70e51a Automatically select the translation corresponding to the installer language.
Daniel Atallah <datallah@pidgin.im>
parents: 29818
diff changeset
1048 ReadRegStr $R0 HKCU "${PIDGIN_REG_KEY}" "${MUI_LANGDLL_REGISTRY_VALUENAME}"
18671
1d1c09b15a12 Preselect the Desktop and Startmenu shortcuts in the installer based on the previous installation (if there is one). Fixes #1620.
Daniel Atallah <datallah@pidgin.im>
parents: 17752
diff changeset
1049 IfErrors done_preselecting_shortcuts
1d1c09b15a12 Preselect the Desktop and Startmenu shortcuts in the installer based on the previous installation (if there is one). Fixes #1620.
Daniel Atallah <datallah@pidgin.im>
parents: 17752
diff changeset
1050 ;Does the Desktop shortcut exist?
1d1c09b15a12 Preselect the Desktop and Startmenu shortcuts in the installer based on the previous installation (if there is one). Fixes #1620.
Daniel Atallah <datallah@pidgin.im>
parents: 17752
diff changeset
1051 GetFileTime "$DESKTOP\Pidgin.lnk" $R0 $R0
19414
e96cbe3a659b New Persian win32 installer translation from Elnaz Sarbar. Fixes 2273.
Daniel Atallah <datallah@pidgin.im>
parents: 18671
diff changeset
1052 IfErrors +1 +5
18671
1d1c09b15a12 Preselect the Desktop and Startmenu shortcuts in the installer based on the previous installation (if there is one). Fixes #1620.
Daniel Atallah <datallah@pidgin.im>
parents: 17752
diff changeset
1053 ClearErrors
1d1c09b15a12 Preselect the Desktop and Startmenu shortcuts in the installer based on the previous installation (if there is one). Fixes #1620.
Daniel Atallah <datallah@pidgin.im>
parents: 17752
diff changeset
1054 SetShellVarContext "all"
1d1c09b15a12 Preselect the Desktop and Startmenu shortcuts in the installer based on the previous installation (if there is one). Fixes #1620.
Daniel Atallah <datallah@pidgin.im>
parents: 17752
diff changeset
1055 GetFileTime "$DESKTOP\Pidgin.lnk" $R0 $R0
1d1c09b15a12 Preselect the Desktop and Startmenu shortcuts in the installer based on the previous installation (if there is one). Fixes #1620.
Daniel Atallah <datallah@pidgin.im>
parents: 17752
diff changeset
1056 IfErrors preselect_startmenu_shortcut ;Desktop Shortcut if off by default
1d1c09b15a12 Preselect the Desktop and Startmenu shortcuts in the installer based on the previous installation (if there is one). Fixes #1620.
Daniel Atallah <datallah@pidgin.im>
parents: 17752
diff changeset
1057 !insertmacro SelectSection ${SecDesktopShortcut}
1d1c09b15a12 Preselect the Desktop and Startmenu shortcuts in the installer based on the previous installation (if there is one). Fixes #1620.
Daniel Atallah <datallah@pidgin.im>
parents: 17752
diff changeset
1058 preselect_startmenu_shortcut:
1d1c09b15a12 Preselect the Desktop and Startmenu shortcuts in the installer based on the previous installation (if there is one). Fixes #1620.
Daniel Atallah <datallah@pidgin.im>
parents: 17752
diff changeset
1059 ;Reset ShellVarContext because we may have changed it
1d1c09b15a12 Preselect the Desktop and Startmenu shortcuts in the installer based on the previous installation (if there is one). Fixes #1620.
Daniel Atallah <datallah@pidgin.im>
parents: 17752
diff changeset
1060 SetShellVarContext "current"
1d1c09b15a12 Preselect the Desktop and Startmenu shortcuts in the installer based on the previous installation (if there is one). Fixes #1620.
Daniel Atallah <datallah@pidgin.im>
parents: 17752
diff changeset
1061 ClearErrors
1d1c09b15a12 Preselect the Desktop and Startmenu shortcuts in the installer based on the previous installation (if there is one). Fixes #1620.
Daniel Atallah <datallah@pidgin.im>
parents: 17752
diff changeset
1062 ;Does the StartMenu shortcut exist?
1d1c09b15a12 Preselect the Desktop and Startmenu shortcuts in the installer based on the previous installation (if there is one). Fixes #1620.
Daniel Atallah <datallah@pidgin.im>
parents: 17752
diff changeset
1063 GetFileTime "$SMPROGRAMS\Pidgin.lnk" $R0 $R0
1d1c09b15a12 Preselect the Desktop and Startmenu shortcuts in the installer based on the previous installation (if there is one). Fixes #1620.
Daniel Atallah <datallah@pidgin.im>
parents: 17752
diff changeset
1064 IfErrors +1 done_preselecting_shortcuts ;StartMenu Shortcut is on by default
1d1c09b15a12 Preselect the Desktop and Startmenu shortcuts in the installer based on the previous installation (if there is one). Fixes #1620.
Daniel Atallah <datallah@pidgin.im>
parents: 17752
diff changeset
1065 ClearErrors
1d1c09b15a12 Preselect the Desktop and Startmenu shortcuts in the installer based on the previous installation (if there is one). Fixes #1620.
Daniel Atallah <datallah@pidgin.im>
parents: 17752
diff changeset
1066 SetShellVarContext "all"
1d1c09b15a12 Preselect the Desktop and Startmenu shortcuts in the installer based on the previous installation (if there is one). Fixes #1620.
Daniel Atallah <datallah@pidgin.im>
parents: 17752
diff changeset
1067 GetFileTime "$SMPROGRAMS\Pidgin.lnk" $R0 $R0
1d1c09b15a12 Preselect the Desktop and Startmenu shortcuts in the installer based on the previous installation (if there is one). Fixes #1620.
Daniel Atallah <datallah@pidgin.im>
parents: 17752
diff changeset
1068 IfErrors +1 done_preselecting_shortcuts ;StartMenu Shortcut is on by default
1d1c09b15a12 Preselect the Desktop and Startmenu shortcuts in the installer based on the previous installation (if there is one). Fixes #1620.
Daniel Atallah <datallah@pidgin.im>
parents: 17752
diff changeset
1069 !insertmacro UnselectSection ${SecStartMenuShortcut}
1d1c09b15a12 Preselect the Desktop and Startmenu shortcuts in the installer based on the previous installation (if there is one). Fixes #1620.
Daniel Atallah <datallah@pidgin.im>
parents: 17752
diff changeset
1070 done_preselecting_shortcuts:
1d1c09b15a12 Preselect the Desktop and Startmenu shortcuts in the installer based on the previous installation (if there is one). Fixes #1620.
Daniel Atallah <datallah@pidgin.im>
parents: 17752
diff changeset
1071 ;Reset ShellVarContext because we may have changed it
1d1c09b15a12 Preselect the Desktop and Startmenu shortcuts in the installer based on the previous installation (if there is one). Fixes #1620.
Daniel Atallah <datallah@pidgin.im>
parents: 17752
diff changeset
1072 SetShellVarContext "current"
1d1c09b15a12 Preselect the Desktop and Startmenu shortcuts in the installer based on the previous installation (if there is one). Fixes #1620.
Daniel Atallah <datallah@pidgin.im>
parents: 17752
diff changeset
1073
14439
adecc0185ad7 [gaim-migrate @ 17083]
Daniel Atallah <datallah@pidgin.im>
parents: 14438
diff changeset
1074 ClearErrors
25550
2354ce28434c Work around the buggy Aspell dictionary installers by cleaning up after them.
Daniel Atallah <datallah@pidgin.im>
parents: 25517
diff changeset
1075 ${GetOptions} "$R3" "/L=" $R1
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
1076 IfErrors +3
21418
e1291490635e Add /DS=[0,1] and /SMS=[0,1] to the win32 installer for enabling and disabling the Desktop Shortcut and Start Menu Shortcut respectively. Fixes #3814.
Daniel Atallah <datallah@pidgin.im>
parents: 21395
diff changeset
1077 StrCpy $LANGUAGE $R1
14929
a71c59193f9d [gaim-migrate @ 17636]
Daniel Atallah <datallah@pidgin.im>
parents: 14887
diff changeset
1078 Goto skip_lang
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
1079
7600
279abfe7721f [gaim-migrate @ 8222]
Herman Bloggs <herman@bluedigits.com>
parents: 7575
diff changeset
1080 ; Select Language
279abfe7721f [gaim-migrate @ 8222]
Herman Bloggs <herman@bluedigits.com>
parents: 7575
diff changeset
1081 ; Display Language selection dialog
28562
624fed1d4f8e Fix a silly regression that I introduced in 449a0d08f21daa4dbd903ee361d544ae7703ce24 where the win32 installer language selection would no longer work correctly. Fixes #10243.
Daniel Atallah <datallah@pidgin.im>
parents: 28381
diff changeset
1082 !define MUI_LANGDLL_ALWAYSSHOW
7600
279abfe7721f [gaim-migrate @ 8222]
Herman Bloggs <herman@bluedigits.com>
parents: 7575
diff changeset
1083 !insertmacro MUI_LANGDLL_DISPLAY
279abfe7721f [gaim-migrate @ 8222]
Herman Bloggs <herman@bluedigits.com>
parents: 7575
diff changeset
1084 skip_lang:
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
1085
21418
e1291490635e Add /DS=[0,1] and /SMS=[0,1] to the win32 installer for enabling and disabling the Desktop Shortcut and Start Menu Shortcut respectively. Fixes #3814.
Daniel Atallah <datallah@pidgin.im>
parents: 21395
diff changeset
1086 ClearErrors
25550
2354ce28434c Work around the buggy Aspell dictionary installers by cleaning up after them.
Daniel Atallah <datallah@pidgin.im>
parents: 25517
diff changeset
1087 ${GetOptions} "$R3" "/DS=" $R1
22174
6069ae2cd571 Fix an issue where the Start Menu shortcut wasn't selected by default when not installed. Fixes #4489.
Daniel Atallah <datallah@pidgin.im>
parents: 22048
diff changeset
1088 IfErrors +8
21418
e1291490635e Add /DS=[0,1] and /SMS=[0,1] to the win32 installer for enabling and disabling the Desktop Shortcut and Start Menu Shortcut respectively. Fixes #3814.
Daniel Atallah <datallah@pidgin.im>
parents: 21395
diff changeset
1089 SectionGetFlags ${SecDesktopShortcut} $R2
e1291490635e Add /DS=[0,1] and /SMS=[0,1] to the win32 installer for enabling and disabling the Desktop Shortcut and Start Menu Shortcut respectively. Fixes #3814.
Daniel Atallah <datallah@pidgin.im>
parents: 21395
diff changeset
1090 StrCmp "1" $R1 0 +2
e1291490635e Add /DS=[0,1] and /SMS=[0,1] to the win32 installer for enabling and disabling the Desktop Shortcut and Start Menu Shortcut respectively. Fixes #3814.
Daniel Atallah <datallah@pidgin.im>
parents: 21395
diff changeset
1091 IntOp $R2 $R2 | ${SF_SELECTED}
e1291490635e Add /DS=[0,1] and /SMS=[0,1] to the win32 installer for enabling and disabling the Desktop Shortcut and Start Menu Shortcut respectively. Fixes #3814.
Daniel Atallah <datallah@pidgin.im>
parents: 21395
diff changeset
1092 StrCmp "0" $R1 0 +3
e1291490635e Add /DS=[0,1] and /SMS=[0,1] to the win32 installer for enabling and disabling the Desktop Shortcut and Start Menu Shortcut respectively. Fixes #3814.
Daniel Atallah <datallah@pidgin.im>
parents: 21395
diff changeset
1093 IntOp $R1 ${SF_SELECTED} ~
e1291490635e Add /DS=[0,1] and /SMS=[0,1] to the win32 installer for enabling and disabling the Desktop Shortcut and Start Menu Shortcut respectively. Fixes #3814.
Daniel Atallah <datallah@pidgin.im>
parents: 21395
diff changeset
1094 IntOp $R2 $R2 & $R1
e1291490635e Add /DS=[0,1] and /SMS=[0,1] to the win32 installer for enabling and disabling the Desktop Shortcut and Start Menu Shortcut respectively. Fixes #3814.
Daniel Atallah <datallah@pidgin.im>
parents: 21395
diff changeset
1095 SectionSetFlags ${SecDesktopShortcut} $R2
e1291490635e Add /DS=[0,1] and /SMS=[0,1] to the win32 installer for enabling and disabling the Desktop Shortcut and Start Menu Shortcut respectively. Fixes #3814.
Daniel Atallah <datallah@pidgin.im>
parents: 21395
diff changeset
1096
e1291490635e Add /DS=[0,1] and /SMS=[0,1] to the win32 installer for enabling and disabling the Desktop Shortcut and Start Menu Shortcut respectively. Fixes #3814.
Daniel Atallah <datallah@pidgin.im>
parents: 21395
diff changeset
1097 ClearErrors
25550
2354ce28434c Work around the buggy Aspell dictionary installers by cleaning up after them.
Daniel Atallah <datallah@pidgin.im>
parents: 25517
diff changeset
1098 ${GetOptions} "$R3" "/SMS=" $R1
22174
6069ae2cd571 Fix an issue where the Start Menu shortcut wasn't selected by default when not installed. Fixes #4489.
Daniel Atallah <datallah@pidgin.im>
parents: 22048
diff changeset
1099 IfErrors +8
21418
e1291490635e Add /DS=[0,1] and /SMS=[0,1] to the win32 installer for enabling and disabling the Desktop Shortcut and Start Menu Shortcut respectively. Fixes #3814.
Daniel Atallah <datallah@pidgin.im>
parents: 21395
diff changeset
1100 SectionGetFlags ${SecStartMenuShortcut} $R2
e1291490635e Add /DS=[0,1] and /SMS=[0,1] to the win32 installer for enabling and disabling the Desktop Shortcut and Start Menu Shortcut respectively. Fixes #3814.
Daniel Atallah <datallah@pidgin.im>
parents: 21395
diff changeset
1101 StrCmp "1" $R1 0 +2
e1291490635e Add /DS=[0,1] and /SMS=[0,1] to the win32 installer for enabling and disabling the Desktop Shortcut and Start Menu Shortcut respectively. Fixes #3814.
Daniel Atallah <datallah@pidgin.im>
parents: 21395
diff changeset
1102 IntOp $R2 $R2 | ${SF_SELECTED}
e1291490635e Add /DS=[0,1] and /SMS=[0,1] to the win32 installer for enabling and disabling the Desktop Shortcut and Start Menu Shortcut respectively. Fixes #3814.
Daniel Atallah <datallah@pidgin.im>
parents: 21395
diff changeset
1103 StrCmp "0" $R1 0 +3
e1291490635e Add /DS=[0,1] and /SMS=[0,1] to the win32 installer for enabling and disabling the Desktop Shortcut and Start Menu Shortcut respectively. Fixes #3814.
Daniel Atallah <datallah@pidgin.im>
parents: 21395
diff changeset
1104 IntOp $R1 ${SF_SELECTED} ~
e1291490635e Add /DS=[0,1] and /SMS=[0,1] to the win32 installer for enabling and disabling the Desktop Shortcut and Start Menu Shortcut respectively. Fixes #3814.
Daniel Atallah <datallah@pidgin.im>
parents: 21395
diff changeset
1105 IntOp $R2 $R2 & $R1
e1291490635e Add /DS=[0,1] and /SMS=[0,1] to the win32 installer for enabling and disabling the Desktop Shortcut and Start Menu Shortcut respectively. Fixes #3814.
Daniel Atallah <datallah@pidgin.im>
parents: 21395
diff changeset
1106 SectionSetFlags ${SecStartMenuShortcut} $R2
e1291490635e Add /DS=[0,1] and /SMS=[0,1] to the win32 installer for enabling and disabling the Desktop Shortcut and Start Menu Shortcut respectively. Fixes #3814.
Daniel Atallah <datallah@pidgin.im>
parents: 21395
diff changeset
1107
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
1108 ; If install path was set on the command, use it.
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
1109 StrCmp $INSTDIR "" 0 instdir_done
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
1110
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
1111 ; If pidgin or gaim is currently installed, we should default to where it is currently installed
10511
0a0bd0d33904 [gaim-migrate @ 11809]
Daniel Atallah <datallah@pidgin.im>
parents: 10212
diff changeset
1112 ClearErrors
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
1113 ReadRegStr $INSTDIR HKCU "${PIDGIN_REG_KEY}" ""
10511
0a0bd0d33904 [gaim-migrate @ 11809]
Daniel Atallah <datallah@pidgin.im>
parents: 10212
diff changeset
1114 IfErrors +2
0a0bd0d33904 [gaim-migrate @ 11809]
Daniel Atallah <datallah@pidgin.im>
parents: 10212
diff changeset
1115 StrCmp $INSTDIR "" 0 instdir_done
14438
b552f0964484 [gaim-migrate @ 17082]
Daniel Atallah <datallah@pidgin.im>
parents: 14351
diff changeset
1116 ClearErrors
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
1117 ReadRegStr $INSTDIR HKLM "${PIDGIN_REG_KEY}" ""
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
1118 IfErrors +2
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
1119 StrCmp $INSTDIR "" 0 instdir_done
15857
bcde5b8d9b0d Default the URI Handler checkboxes in the installer appropriately (if pidgin is the current handler or if there is no current handler). Also, don't use the previous Gaim installation directory as the default new directory for Pidgin (perhaps it would be smart to use something like ...\blah\Pidgin if gaim was installed in ...\blah\Gaim, but I'm not sure it is worth the effort).
Daniel Atallah <datallah@pidgin.im>
parents: 15856
diff changeset
1120
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
1121 Call CheckUserInstallRights
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1122 Pop $R0
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
1123
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1124 StrCmp $R0 "HKLM" 0 user_dir
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
1125 StrCpy $INSTDIR "$PROGRAMFILES\Pidgin"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
1126 Goto instdir_done
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
1127 user_dir:
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1128 Push $SMPROGRAMS
14439
adecc0185ad7 [gaim-migrate @ 17083]
Daniel Atallah <datallah@pidgin.im>
parents: 14438
diff changeset
1129 ${GetParent} $SMPROGRAMS $R2
adecc0185ad7 [gaim-migrate @ 17083]
Daniel Atallah <datallah@pidgin.im>
parents: 14438
diff changeset
1130 ${GetParent} $R2 $R2
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
1131 StrCpy $INSTDIR "$R2\Pidgin"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
1132
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
1133 instdir_done:
30259
01eb5d70e51a Automatically select the translation corresponding to the installer language.
Daniel Atallah <datallah@pidgin.im>
parents: 29818
diff changeset
1134 ;LogSet on
01eb5d70e51a Automatically select the translation corresponding to the installer language.
Daniel Atallah <datallah@pidgin.im>
parents: 29818
diff changeset
1135
01eb5d70e51a Automatically select the translation corresponding to the installer language.
Daniel Atallah <datallah@pidgin.im>
parents: 29818
diff changeset
1136 ; Try to select a translation and a dictionary for the currently selected Language
01eb5d70e51a Automatically select the translation corresponding to the installer language.
Daniel Atallah <datallah@pidgin.im>
parents: 29818
diff changeset
1137 Call SelectTranslationForCurrentLanguage
29818
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1138
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1139 ;Mark the dictionaries that are already installed as readonly
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1140 Call SelectAndDisableInstalledDictionaries
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1141
25550
2354ce28434c Work around the buggy Aspell dictionary installers by cleaning up after them.
Daniel Atallah <datallah@pidgin.im>
parents: 25517
diff changeset
1142 Pop $R3
21418
e1291490635e Add /DS=[0,1] and /SMS=[0,1] to the win32 installer for enabling and disabling the Desktop Shortcut and Start Menu Shortcut respectively. Fixes #3814.
Daniel Atallah <datallah@pidgin.im>
parents: 21395
diff changeset
1143 Pop $R2
e1291490635e Add /DS=[0,1] and /SMS=[0,1] to the win32 installer for enabling and disabling the Desktop Shortcut and Start Menu Shortcut respectively. Fixes #3814.
Daniel Atallah <datallah@pidgin.im>
parents: 21395
diff changeset
1144 Pop $R1
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1145 Pop $R0
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
1146 FunctionEnd
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
1147
28381
449a0d08f21d Explicitly save the language when using the silent installer (if it is explicitly set). NSIS doesn\'t do this for us. Fixes #8658.
Daniel Atallah <datallah@pidgin.im>
parents: 28136
diff changeset
1148 Function .onInstSuccess
449a0d08f21d Explicitly save the language when using the silent installer (if it is explicitly set). NSIS doesn\'t do this for us. Fixes #8658.
Daniel Atallah <datallah@pidgin.im>
parents: 28136
diff changeset
1149
29639
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
1150 ${MementoSectionSave}
28381
449a0d08f21d Explicitly save the language when using the silent installer (if it is explicitly set). NSIS doesn\'t do this for us. Fixes #8658.
Daniel Atallah <datallah@pidgin.im>
parents: 28136
diff changeset
1151
449a0d08f21d Explicitly save the language when using the silent installer (if it is explicitly set). NSIS doesn\'t do this for us. Fixes #8658.
Daniel Atallah <datallah@pidgin.im>
parents: 28136
diff changeset
1152 FunctionEnd
449a0d08f21d Explicitly save the language when using the silent installer (if it is explicitly set). NSIS doesn\'t do this for us. Fixes #8658.
Daniel Atallah <datallah@pidgin.im>
parents: 28136
diff changeset
1153
29639
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
1154
6255
ed38c707623b [gaim-migrate @ 6751]
Herman Bloggs <herman@bluedigits.com>
parents: 6233
diff changeset
1155 Function un.onInit
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
1156
10212
9a9c18b72773 [gaim-migrate @ 11336]
Herman Bloggs <herman@bluedigits.com>
parents: 10137
diff changeset
1157 Call un.RunCheck
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15425
diff changeset
1158 StrCpy $name "Pidgin ${PIDGIN_VERSION}"
22947
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
1159 ;LogSet on
6255
ed38c707623b [gaim-migrate @ 6751]
Herman Bloggs <herman@bluedigits.com>
parents: 6233
diff changeset
1160
14516
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14512
diff changeset
1161 ; Get stored language preference
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14512
diff changeset
1162 !insertmacro MUI_UNGETLANGUAGE
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1163
6255
ed38c707623b [gaim-migrate @ 6751]
Herman Bloggs <herman@bluedigits.com>
parents: 6233
diff changeset
1164 FunctionEnd
6233
d12a0c4e40a0 [gaim-migrate @ 6726]
Herman Bloggs <herman@bluedigits.com>
parents: 6159
diff changeset
1165
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
1166 ; Page enter and exit functions..
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
1167
15047
6064684b3eeb [gaim-migrate @ 17764]
Daniel Atallah <datallah@pidgin.im>
parents: 15045
diff changeset
1168 Function preWelcomePage
16602
e26771ee55df Remove unused strings cruft from the installer that were left over from when it dealt with the GTK+ theme (It seems like I already did this before). Also, make installing GTK+ optional if it is already installed.
Daniel Atallah <datallah@pidgin.im>
parents: 16309
diff changeset
1169 Push $R0
e26771ee55df Remove unused strings cruft from the installer that were left over from when it dealt with the GTK+ theme (It seems like I already did this before). Also, make installing GTK+ optional if it is already installed.
Daniel Atallah <datallah@pidgin.im>
parents: 16309
diff changeset
1170 Push $R1
e26771ee55df Remove unused strings cruft from the installer that were left over from when it dealt with the GTK+ theme (It seems like I already did this before). Also, make installing GTK+ optional if it is already installed.
Daniel Atallah <datallah@pidgin.im>
parents: 16309
diff changeset
1171
29766
540e86343b7e Various installer bug fixes
Daniel Atallah <datallah@pidgin.im>
parents: 29763
diff changeset
1172 !ifdef OFFLINE_INSTALLER
540e86343b7e Various installer bug fixes
Daniel Atallah <datallah@pidgin.im>
parents: 29763
diff changeset
1173 !insertmacro SelectSection ${SecDebugSymbols}
540e86343b7e Various installer bug fixes
Daniel Atallah <datallah@pidgin.im>
parents: 29763
diff changeset
1174 !endif
540e86343b7e Various installer bug fixes
Daniel Atallah <datallah@pidgin.im>
parents: 29763
diff changeset
1175
16602
e26771ee55df Remove unused strings cruft from the installer that were left over from when it dealt with the GTK+ theme (It seems like I already did this before). Also, make installing GTK+ optional if it is already installed.
Daniel Atallah <datallah@pidgin.im>
parents: 16309
diff changeset
1176 Call DoWeNeedGtk
30260
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1177 Pop $CURRENT_GTK_STATE
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1178 StrCpy $WARNED_GTK_STATE "0"
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1179 IntCmp $CURRENT_GTK_STATE 1 done gtk_not_mandatory
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1180 ; Make the GTK+ Section RO if it is required. (it is required only if you have an existing version that is too old)
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1181 StrCmp $CURRENT_GTK_STATE "2" 0 done
16602
e26771ee55df Remove unused strings cruft from the installer that were left over from when it dealt with the GTK+ theme (It seems like I already did this before). Also, make installing GTK+ optional if it is already installed.
Daniel Atallah <datallah@pidgin.im>
parents: 16309
diff changeset
1182 !insertmacro SetSectionFlag ${SecGtk} ${SF_RO}
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
1183 Goto done
16602
e26771ee55df Remove unused strings cruft from the installer that were left over from when it dealt with the GTK+ theme (It seems like I already did this before). Also, make installing GTK+ optional if it is already installed.
Daniel Atallah <datallah@pidgin.im>
parents: 16309
diff changeset
1184 gtk_not_mandatory:
24249
c49ccf386628 Don't select the GTK+ checkbox if the current version or a new er version is
Daniel Atallah <datallah@pidgin.im>
parents: 24248
diff changeset
1185 ; Don't select the GTK+ section if we already have this version or newer installed
c49ccf386628 Don't select the GTK+ checkbox if the current version or a new er version is
Daniel Atallah <datallah@pidgin.im>
parents: 24248
diff changeset
1186 !insertmacro UnselectSection ${SecGtk}
14854
0a2391b774a4 [gaim-migrate @ 17557]
Daniel Atallah <datallah@pidgin.im>
parents: 14798
diff changeset
1187
15047
6064684b3eeb [gaim-migrate @ 17764]
Daniel Atallah <datallah@pidgin.im>
parents: 15045
diff changeset
1188 done:
14854
0a2391b774a4 [gaim-migrate @ 17557]
Daniel Atallah <datallah@pidgin.im>
parents: 14798
diff changeset
1189 Pop $R1
0a2391b774a4 [gaim-migrate @ 17557]
Daniel Atallah <datallah@pidgin.im>
parents: 14798
diff changeset
1190 Pop $R0
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
1191 FunctionEnd
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
1192
30260
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1193 ; If the GTK+ Section has been unselected and there isn't a compatible GTK+ already, confirm
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1194 Function .onSelChange
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1195 Push $R0
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1196
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1197 SectionGetFlags ${SecGtk} $R0
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1198 IntOp $R0 $R0 & ${SF_SELECTED}
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1199 ; If the Gtk Section is currently selected, reset the "Warned" flag
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1200 StrCmp $R0 "${SF_SELECTED}" 0 +3
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1201 StrCpy $WARNED_GTK_STATE "0"
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1202 Goto done
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1203
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1204 ; If we've already warned the user, don't warn them again
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1205 StrCmp $WARNED_GTK_STATE "1" done
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1206 IntCmp $CURRENT_GTK_STATE 1 done done 0
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1207 StrCpy $WARNED_GTK_STATE "1"
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
1208 MessageBox MB_YESNO $(PIDGINPROMPTFORCENOGTK) /SD IDNO IDYES done
30260
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1209 !insertmacro SelectSection ${SecGtk}
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1210
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1211 done:
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1212 Pop $R0
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1213 FunctionEnd
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1214
30259
01eb5d70e51a Automatically select the translation corresponding to the installer language.
Daniel Atallah <datallah@pidgin.im>
parents: 29818
diff changeset
1215 Function SelectTranslationForCurrentLanguage
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
1216 !insertmacro SELECT_TRANSLATION_FUNCTION
30259
01eb5d70e51a Automatically select the translation corresponding to the installer language.
Daniel Atallah <datallah@pidgin.im>
parents: 29818
diff changeset
1217 FunctionEnd
01eb5d70e51a Automatically select the translation corresponding to the installer language.
Daniel Atallah <datallah@pidgin.im>
parents: 29818
diff changeset
1218
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1219 ; SpellChecker Related Functions
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1220 ;-------------------------------
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1221
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1222 ; Select and Disable any Sections that have currently installed dictionaries
29818
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1223 !macro CHECK_SPELLCHECK_SECTION lang
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1224 ;Advance to the next (correct) section index
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1225 IntOp $R0 $R0 + 1
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1226 IfFileExists "$INSTDIR\spellcheck\share\enchant\myspell\${lang}.dic" 0 done_${lang}
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1227 SectionGetFlags $R0 $R1
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1228 IntOp $R1 $R1 | ${SF_RO} ; Mark Readonly
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1229 IntOp $R1 $R1 | ${SF_SELECTED} ; Select
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1230 SectionSetFlags $R0 $R1
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1231 done_${lang}:
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1232 !macroend
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1233 Function SelectAndDisableInstalledDictionaries
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1234 Push $R0
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1235 Push $R1
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1236
29818
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1237 !insertmacro SetSectionFlag ${SecSpellCheck} ${SF_RO}
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1238 !insertmacro UnselectSection ${SecSpellCheck}
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1239
29818
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1240 IntOp $R0 ${SecSpellCheck} + 0
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1241 !include "pidgin-spellcheck-preselect.nsh"
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1242
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1243 Pop $R1
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1244 Pop $R0
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1245 FunctionEnd
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1246
29818
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1247 Function InstallDict
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1248 Push $R0
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1249 Exch
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1250 Pop $R0 ;This is the language code
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1251 Push $R1
29818
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1252 Exch 2
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1253 Pop $R1 ;This is the language file
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1254 Push $R2
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1255 Push $R3
30260
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1256 Push $R4
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1257
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1258 ClearErrors
29818
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1259 IfFileExists "$INSTDIR\spellcheck\share\enchant\myspell\$R0.dic" installed
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1260
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1261 InitPluginsDir
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1262
29818
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1263 ; We need to download and install dictionary
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1264 StrCpy $R2 "$PLUGINSDIR\$R1"
32096
59e46efb363d Update the win32 spellcheck downloading to go through the redirector php script
Daniel Atallah <datallah@pidgin.im>
parents: 31730
diff changeset
1265 StrCpy $R3 "${DOWNLOADER_URL}&dl_pkg=oo_dict&lang=$R1&lang_file=$R1"
29818
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1266 DetailPrint "Downloading the $R0 Dictionary... ($R3)"
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1267 retry:
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1268 NSISdl::download /TIMEOUT=10000 "$R3" "$R2"
30260
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1269 Pop $R4
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1270 StrCmp $R4 "cancel" done
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1271 StrCmp $R4 "success" +3
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
1272 MessageBox MB_RETRYCANCEL "$(PIDGINSPELLCHECKERROR)" /SD IDCANCEL IDRETRY retry IDCANCEL done
29818
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1273 Goto done
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1274 SetOutPath "$INSTDIR\spellcheck\share\enchant\myspell"
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1275 nsisunz::UnzipToLog "$R2" "$OUTDIR"
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1276 SetOutPath "$INSTDIR"
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1277 Pop $R3
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1278 StrCmp $R3 "success" installed
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1279 DetailPrint "$R3" ;print error message to log
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1280 Goto done
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1281
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1282 installed: ;The dictionary is currently installed, no error message
29818
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1283 DetailPrint "$R0 Dictionary is installed"
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1284
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1285 done:
30260
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1286 Pop $R4
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1287 Pop $R3
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1288 Pop $R2
29818
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1289 Pop $R0
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1290 Exch $R1
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1291 FunctionEnd
33399
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
1292
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
1293 !ifndef OFFLINE_INSTALLER
33415
51473787ff4f Bake the sha1sums for the debug symbols and gtk runtime into the installer instead of downloading them.
Daniel Atallah <datallah@pidgin.im>
parents: 33399
diff changeset
1294 ; Input Stack: Filename, SHA1sum
51473787ff4f Bake the sha1sums for the debug symbols and gtk runtime into the installer instead of downloading them.
Daniel Atallah <datallah@pidgin.im>
parents: 33399
diff changeset
1295 ; Output Return Code: 0=Match; 1=FileSum error; 2=Mismatch
33399
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
1296 Function CheckSHA1Sum
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
1297 Push $R0
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
1298 Exch
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
1299 Pop $R0 ;Filename
33415
51473787ff4f Bake the sha1sums for the debug symbols and gtk runtime into the installer instead of downloading them.
Daniel Atallah <datallah@pidgin.im>
parents: 33399
diff changeset
1300 Push $R2
33399
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
1301 Exch 2
33415
51473787ff4f Bake the sha1sums for the debug symbols and gtk runtime into the installer instead of downloading them.
Daniel Atallah <datallah@pidgin.im>
parents: 33399
diff changeset
1302 Pop $R2 ;SHA1sum
51473787ff4f Bake the sha1sums for the debug symbols and gtk runtime into the installer instead of downloading them.
Daniel Atallah <datallah@pidgin.im>
parents: 33399
diff changeset
1303 Push $R1
33399
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
1304
40452
406a0d4d1b40 Fix some issues with the Windows installer that included it thinking Pidgin was already running
Gary Kramlich <grim@reaperworld.com>
parents: 38089
diff changeset
1305 ClearErrors
406a0d4d1b40 Fix some issues with the Windows installer that included it thinking Pidgin was already running
Gary Kramlich <grim@reaperworld.com>
parents: 38089
diff changeset
1306 Crypto::HashFile "SHA1" "$R0"
33399
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
1307 Pop $R0
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
1308
40452
406a0d4d1b40 Fix some issues with the Windows installer that included it thinking Pidgin was already running
Gary Kramlich <grim@reaperworld.com>
parents: 38089
diff changeset
1309 IfErrors 0 +4
406a0d4d1b40 Fix some issues with the Windows installer that included it thinking Pidgin was already running
Gary Kramlich <grim@reaperworld.com>
parents: 38089
diff changeset
1310 DetailPrint "SHA1Sum calculation error"
33415
51473787ff4f Bake the sha1sums for the debug symbols and gtk runtime into the installer instead of downloading them.
Daniel Atallah <datallah@pidgin.im>
parents: 33399
diff changeset
1311 IntOp $R1 0 + 1
33399
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
1312 Goto done
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
1313
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
1314 ; Compare the SHA1Sums
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
1315 StrCmp $R2 $R0 +4
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
1316 DetailPrint "SHA1Sum mismatch... Expected $R2; got $R0"
33415
51473787ff4f Bake the sha1sums for the debug symbols and gtk runtime into the installer instead of downloading them.
Daniel Atallah <datallah@pidgin.im>
parents: 33399
diff changeset
1317 IntOp $R1 0 + 2
33399
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
1318 Goto done
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
1319
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
1320 IntOp $R1 0 + 0
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
1321
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
1322 done:
33751
a8672a4a3a13 installer: Fix CheckSHA1Sum restoring the stack - this was broken in 51473787ff4f.
Daniel Atallah <datallah@pidgin.im>
parents: 33669
diff changeset
1323 Exch $R1 ;$R1 has the return code
a8672a4a3a13 installer: Fix CheckSHA1Sum restoring the stack - this was broken in 51473787ff4f.
Daniel Atallah <datallah@pidgin.im>
parents: 33669
diff changeset
1324 Exch
33399
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
1325 Pop $R2
33751
a8672a4a3a13 installer: Fix CheckSHA1Sum restoring the stack - this was broken in 51473787ff4f.
Daniel Atallah <datallah@pidgin.im>
parents: 33669
diff changeset
1326 Exch
33399
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
1327 Pop $R0
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
1328 FunctionEnd
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
1329 !endif
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
1330

mercurial