pidgin/win32/nsis/pidgin-installer.nsi

Tue, 10 Nov 2015 23:00:17 -0800

author
Jorge Villaseñor <salinasv@pidgin.im>
date
Tue, 10 Nov 2015 23:00:17 -0800
changeset 37393
db70ece4c78d
parent 37216
0a335d1d7d48
child 37901
41e45e18f3b2
permissions
-rw-r--r--

Fix Finch dependency to purple-3

Patch from cyisfor
Fixes #16338

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
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
32
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
33 ; $name and $INSTDIR are set in .onInit function..
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
34
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
35 !include "MUI.nsh"
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
36 !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
37 !include "LogicLib.nsh"
29639
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
38 !include "Memento.nsh"
14512
7584322a65a2 [gaim-migrate @ 17164]
Daniel Atallah <datallah@pidgin.im>
parents: 14439
diff changeset
39
14439
adecc0185ad7 [gaim-migrate @ 17083]
Daniel Atallah <datallah@pidgin.im>
parents: 14438
diff changeset
40 !include "FileFunc.nsh"
adecc0185ad7 [gaim-migrate @ 17083]
Daniel Atallah <datallah@pidgin.im>
parents: 14438
diff changeset
41 !insertmacro GetParameters
adecc0185ad7 [gaim-migrate @ 17083]
Daniel Atallah <datallah@pidgin.im>
parents: 14438
diff changeset
42 !insertmacro GetOptions
adecc0185ad7 [gaim-migrate @ 17083]
Daniel Atallah <datallah@pidgin.im>
parents: 14438
diff changeset
43 !insertmacro GetParent
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
44
14512
7584322a65a2 [gaim-migrate @ 17164]
Daniel Atallah <datallah@pidgin.im>
parents: 14439
diff changeset
45 !include "WordFunc.nsh"
7584322a65a2 [gaim-migrate @ 17164]
Daniel Atallah <datallah@pidgin.im>
parents: 14439
diff changeset
46 !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
47 !insertmacro WordFind
22947
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
48 !insertmacro un.WordFind
14512
7584322a65a2 [gaim-migrate @ 17164]
Daniel Atallah <datallah@pidgin.im>
parents: 14439
diff changeset
49
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
50 !include "TextFunc.nsh"
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
51
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
52 ;--------------------------------
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
53 ;Defines
4897
b957d7e1ab16 [gaim-migrate @ 5229]
Herman Bloggs <herman@bluedigits.com>
parents: 4857
diff changeset
54
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
55 !define PIDGIN_NSIS_INCLUDE_PATH "."
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
56
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
57 ; 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
58 !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
59 !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
60 !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
61
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 !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
63 !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
64
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 !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
66 !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
67 !define PIDGIN_UNINST_EXE "pidgin-uninst.exe"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
68
29505
2d3820fca371 Fix minimum required GTK+ version in win32 installer.
Daniel Atallah <datallah@pidgin.im>
parents: 28136
diff changeset
69 !define GTK_MIN_VERSION "2.14.0"
4897
b957d7e1ab16 [gaim-migrate @ 5229]
Herman Bloggs <herman@bluedigits.com>
parents: 4857
diff changeset
70
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
71 !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
72
29639
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
73 !define MEMENTO_REGISTRY_ROOT HKLM
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
74 !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
75
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
76 ;--------------------------------
14516
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14512
diff changeset
77 ;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
78 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
79 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
80 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
81 VIAddVersionKey "ProductVersion" "${PIDGIN_VERSION}"
14516
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14512
diff changeset
82 VIAddVersionKey "LegalCopyright" ""
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
83 !ifdef OFFLINE_INSTALLER
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
84 VIAddVersionKey "FileDescription" "Pidgin Installer (Offline)"
14516
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14512
diff changeset
85 !else
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
86 VIAddVersionKey "FileDescription" "Pidgin Installer"
14516
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14512
diff changeset
87 !endif
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14512
diff changeset
88
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14512
diff changeset
89 ;--------------------------------
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
90 ;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
91 ;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
92 ReserveFile "${NSISDIR}\Plugins\System.dll"
33386
e576f52a2627 Combine duplicated ReserveFile sections in the win32 installer
Daniel Atallah <datallah@pidgin.im>
parents: 33367
diff changeset
93 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
94 !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
95 !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
96
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 ;--------------------------------
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
98 ;Modern UI Configuration
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
99
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
100 !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
101 !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
102 !define MUI_WELCOMEFINISHPAGE_BITMAP ".\pixmaps\pidgin-intro.bmp"
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
103 !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
104 !define MUI_HEADERIMAGE_BITMAP ".\pixmaps\pidgin-header.bmp"
4897
b957d7e1ab16 [gaim-migrate @ 5229]
Herman Bloggs <herman@bluedigits.com>
parents: 4857
diff changeset
105
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
106 ; 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
107 !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
108 !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
109
14516
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14512
diff changeset
110 !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
111 !define MUI_LANGDLL_REGISTRY_KEY ${PIDGIN_REG_KEY}
14516
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14512
diff changeset
112 !define MUI_LANGDLL_REGISTRY_VALUENAME "Installer Language"
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14512
diff changeset
113
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
114 !define MUI_COMPONENTSPAGE_SMALLDESC
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
115 !define MUI_ABORTWARNING
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
116
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
117 ;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
118 !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
119 ;!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
120 ;!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
121 !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
122 !define MUI_FINISHPAGE_LINK_LOCATION "https://pidgin.im"
3630
caa952062dc2 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
123
4897
b957d7e1ab16 [gaim-migrate @ 5229]
Herman Bloggs <herman@bluedigits.com>
parents: 4857
diff changeset
124 ;--------------------------------
6255
ed38c707623b [gaim-migrate @ 6751]
Herman Bloggs <herman@bluedigits.com>
parents: 6233
diff changeset
125 ;Pages
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
126
7600
279abfe7721f [gaim-migrate @ 8222]
Herman Bloggs <herman@bluedigits.com>
parents: 7575
diff changeset
127 !define MUI_PAGE_CUSTOMFUNCTION_PRE preWelcomePage
6255
ed38c707623b [gaim-migrate @ 6751]
Herman Bloggs <herman@bluedigits.com>
parents: 6233
diff changeset
128 !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
129 !insertmacro MUI_PAGE_LICENSE "../../../COPYING"
6255
ed38c707623b [gaim-migrate @ 6751]
Herman Bloggs <herman@bluedigits.com>
parents: 6233
diff changeset
130 !insertmacro MUI_PAGE_COMPONENTS
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
131
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
132 ; Pidgin install dir page
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
133 !insertmacro MUI_PAGE_DIRECTORY
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
134
6255
ed38c707623b [gaim-migrate @ 6751]
Herman Bloggs <herman@bluedigits.com>
parents: 6233
diff changeset
135 !insertmacro MUI_PAGE_INSTFILES
ed38c707623b [gaim-migrate @ 6751]
Herman Bloggs <herman@bluedigits.com>
parents: 6233
diff changeset
136 !insertmacro MUI_PAGE_FINISH
ed38c707623b [gaim-migrate @ 6751]
Herman Bloggs <herman@bluedigits.com>
parents: 6233
diff changeset
137
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
138 !insertmacro MUI_UNPAGE_WELCOME
6255
ed38c707623b [gaim-migrate @ 6751]
Herman Bloggs <herman@bluedigits.com>
parents: 6233
diff changeset
139 !insertmacro MUI_UNPAGE_CONFIRM
ed38c707623b [gaim-migrate @ 6751]
Herman Bloggs <herman@bluedigits.com>
parents: 6233
diff changeset
140 !insertmacro MUI_UNPAGE_INSTFILES
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
141 !insertmacro MUI_UNPAGE_FINISH
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
142
4897
b957d7e1ab16 [gaim-migrate @ 5229]
Herman Bloggs <herman@bluedigits.com>
parents: 4857
diff changeset
143 ;--------------------------------
b957d7e1ab16 [gaim-migrate @ 5229]
Herman Bloggs <herman@bluedigits.com>
parents: 4857
diff changeset
144 ;Languages
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
145
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
146 !include "${PIDGIN_NSIS_INCLUDE_PATH}\langmacros.nsh"
7572
976d5883ef99 [gaim-migrate @ 8188]
Herman Bloggs <herman@bluedigits.com>
parents: 7558
diff changeset
147
4897
b957d7e1ab16 [gaim-migrate @ 5229]
Herman Bloggs <herman@bluedigits.com>
parents: 4857
diff changeset
148 ;--------------------------------
5383
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
149
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
150 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
151 ;; Start Install Sections ;;
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
152 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;
3630
caa952062dc2 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
153
5383
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
154 ;--------------------------------
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
155 ;Uninstall any old version of Pidgin (or Gaim)
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
156
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
157 Section -SecUninstallOldPidgin
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
158 ; Check install rights..
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
159 Call CheckUserInstallRights
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
160 Pop $R0
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
161
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
162 ;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
163 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
164 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
165 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
166 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
167
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 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
169 ;If pidgin is currently set to run on startup,
9902
289987279ba2 [gaim-migrate @ 10794]
Mark Doliner <markdoliner@pidgin.im>
parents: 9890
diff changeset
170 ; 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
171 ; so we can put it back after installing the new version
289987279ba2 [gaim-migrate @ 10794]
Mark Doliner <markdoliner@pidgin.im>
parents: 9890
diff changeset
172 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
173 ReadRegStr $STARTUP_RUN_KEY HKCU "${STARTUP_RUN_KEY}" $R7
9902
289987279ba2 [gaim-migrate @ 10794]
Mark Doliner <markdoliner@pidgin.im>
parents: 9890
diff changeset
174 IfErrors +3
289987279ba2 [gaim-migrate @ 10794]
Mark Doliner <markdoliner@pidgin.im>
parents: 9890
diff changeset
175 StrCpy $STARTUP_RUN_KEY "HKCU"
16829
d5827c7efbae Fix some installer issues (#416, #433)
Daniel Atallah <datallah@pidgin.im>
parents: 16817
diff changeset
176 Goto +5
14438
b552f0964484 [gaim-migrate @ 17082]
Daniel Atallah <datallah@pidgin.im>
parents: 14351
diff changeset
177 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
178 ReadRegStr $STARTUP_RUN_KEY HKLM "${STARTUP_RUN_KEY}" $R7
9902
289987279ba2 [gaim-migrate @ 10794]
Mark Doliner <markdoliner@pidgin.im>
parents: 9890
diff changeset
179 IfErrors +2
289987279ba2 [gaim-migrate @ 10794]
Mark Doliner <markdoliner@pidgin.im>
parents: 9890
diff changeset
180 StrCpy $STARTUP_RUN_KEY "HKLM"
289987279ba2 [gaim-migrate @ 10794]
Mark Doliner <markdoliner@pidgin.im>
parents: 9890
diff changeset
181
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
182 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
183 StrCmp $R0 "HKCU" compare_hkcu done
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
184
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
185 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
186 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
187 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
188 ReadRegStr $R3 HKCU "$R5" "UninstallString"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
189 Goto try_uninstall
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
190
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
191 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
192 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
193 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
194 ReadRegStr $R3 HKLM "$R5" "UninstallString"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
195
15856
322e0965615f Add support for registering URI handlers to the windows installer.
Daniel Atallah <datallah@pidgin.im>
parents: 15819
diff changeset
196 ; If a previous version exists, remove it
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
197 try_uninstall:
16829
d5827c7efbae Fix some installer issues (#416, #433)
Daniel Atallah <datallah@pidgin.im>
parents: 16817
diff changeset
198 StrCmp $R1 "" no_version_found
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
199 ; 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
200 ; automatically uninstalled.
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
201 StrCmp $R2 "" uninstall_problem
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
202 ; Check if we have uninstall string..
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
203 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
204 ; Have uninstall string, go ahead and uninstall.
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
205 SetOverwrite on
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
206 ; Need to copy uninstaller outside of the install dir
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
207 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
208 CopyFiles /SILENT $R3 "$TEMP\$R6"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
209 SetOverwrite off
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
210 IfErrors uninstall_problem
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
211 ; Ready to uninstall..
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
212 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
213 ExecWait '"$TEMP\$R6" /S /UPGRADE=1 _?=$R1'
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
214 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
215 Delete "$TEMP\$R6"
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
216 Goto done
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
217
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
218 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
219 Delete "$TEMP\$R6"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
220 Goto uninstall_problem
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
221
16829
d5827c7efbae Fix some installer issues (#416, #433)
Daniel Atallah <datallah@pidgin.im>
parents: 16817
diff changeset
222 no_version_found:
d5827c7efbae Fix some installer issues (#416, #433)
Daniel Atallah <datallah@pidgin.im>
parents: 16817
diff changeset
223 ;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
224 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
225 ; 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
226 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
227 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
228 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
229 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
230 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
231 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
232
16829
d5827c7efbae Fix some installer issues (#416, #433)
Daniel Atallah <datallah@pidgin.im>
parents: 16817
diff changeset
233 uninstall_problem:
14438
b552f0964484 [gaim-migrate @ 17082]
Daniel Atallah <datallah@pidgin.im>
parents: 14351
diff changeset
234 ; 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
235 MessageBox MB_OKCANCEL $(PIDGINPROMPTCONTINUEWITHOUTUNINSTALL) /SD IDOK IDOK done
14438
b552f0964484 [gaim-migrate @ 17082]
Daniel Atallah <datallah@pidgin.im>
parents: 14351
diff changeset
236 Quit
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
237 done:
5383
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
238 SectionEnd
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
239
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 ;GTK+ Runtime Install Section
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
243
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
244 Section $(GTKSECTIONTITLE) SecGtk
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
245
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
246 InitPluginsDir
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
247 StrCpy $R1 "$PLUGINSDIR\gtk.zip"
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
248 !ifdef OFFLINE_INSTALLER
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
249
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
250 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
251 File /oname=gtk.zip ".\gtk-runtime-${GTK_INSTALL_VERSION}.zip"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
252
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
253 !else
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
254
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
255 ; 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
256 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
257 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
258 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
259 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
260 Pop $R0
30695
7c10b1be13f2 -------------------------------------------------------------------------------
Daniel Atallah <datallah@pidgin.im>
parents: 30601
diff changeset
261 ;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
262 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
263
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
264 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
265 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
266 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
267 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
268
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 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
270 prompt_retry:
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
271 MessageBox MB_RETRYCANCEL "$(PIDGINGTKDOWNLOADERROR)" /SD IDCANCEL IDRETRY retry IDCANCEL done
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
272
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
273 extract:
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
274 !endif
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
275
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
276 ;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
277 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
278
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
279 SetOutPath "$INSTDIR"
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
280 nsisunz::UnzipToLog $R1 "$INSTDIR"
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
281 Pop $R0
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
282 StrCmp $R0 "success" +2
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
283 DetailPrint "$R0" ;print error message to log
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
284
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
285 !ifndef OFFLINE_INSTALLER
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
286 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
287 !endif
5383
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
288 SectionEnd ; end of GTK+ section
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
289
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
290 ;--------------------------------
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
291 ;Pidgin Install Section
5383
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
292
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
293 Section $(PIDGINSECTIONTITLE) SecPidgin
5383
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
294 SectionIn 1 RO
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
295
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
296 ; Check install rights..
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
297 Call CheckUserInstallRights
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
298 Pop $R0
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
299
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
300 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
301 StrCmp $R0 "HKLM" pidgin_hklm pidgin_hkcu
5383
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
302
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
303 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
304 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
305 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
306 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
307 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
308 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
309 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
310 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
311 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
312 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
313 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
314 WriteRegStr HKLM "${PIDGIN_UNINSTALL_KEY}" "UninstallString" "$INSTDIR\${PIDGIN_UNINST_EXE}"
5383
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
315 ; 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
316 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
317 Goto pidgin_install_files
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
318
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
319 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
320 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
321 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
322 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
323 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
324 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
325 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
326 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
327 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
328 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
329 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
330
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 pidgin_install_files:
5383
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
332 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
333 ; Pidgin files
5383
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
334 SetOverwrite on
16309
347c01a71e7c Fix win32 build for Jabber/XMPP split.
Daniel Atallah <datallah@pidgin.im>
parents: 16305
diff changeset
335
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
336 File /r /x locale /x Gtk ..\..\..\${PIDGIN_INSTALL_DIR}\*.*
6848
ca91f08b60df [gaim-migrate @ 7393]
Herman Bloggs <herman@bluedigits.com>
parents: 6816
diff changeset
337
5383
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
338 SetOutPath "$INSTDIR"
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
339
15856
322e0965615f Add support for registering URI handlers to the windows installer.
Daniel Atallah <datallah@pidgin.im>
parents: 15819
diff changeset
340 ; If we don't have install rights we're done
5383
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
341 StrCmp $R0 "NONE" done
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
342 SetOverwrite off
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
343
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
344 ; write out uninstaller
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
345 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
346 WriteUninstaller "$INSTDIR\${PIDGIN_UNINST_EXE}"
5383
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
347 SetOverwrite off
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
348
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
349 ; 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
350 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
351 WriteRegStr HKCU "${STARTUP_RUN_KEY}" "Pidgin" "$INSTDIR\pidgin.exe"
9902
289987279ba2 [gaim-migrate @ 10794]
Mark Doliner <markdoliner@pidgin.im>
parents: 9890
diff changeset
352 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
353 WriteRegStr HKLM "${STARTUP_RUN_KEY}" "Pidgin" "$INSTDIR\pidgin.exe"
9902
289987279ba2 [gaim-migrate @ 10794]
Mark Doliner <markdoliner@pidgin.im>
parents: 9890
diff changeset
354
5383
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
355 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
356 SectionEnd ; end of default Pidgin section
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
357
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
358 ;--------------------------------
10920
f68798385106 [gaim-migrate @ 12686]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
359 ;Shortcuts
f68798385106 [gaim-migrate @ 12686]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
360
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
361 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
362 Section /o $(PIDGINDESKTOPSHORTCUTSECTIONTITLE) SecDesktopShortcut
10920
f68798385106 [gaim-migrate @ 12686]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
363 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
364 CreateShortCut "$DESKTOP\Pidgin.lnk" "$INSTDIR\pidgin.exe"
10920
f68798385106 [gaim-migrate @ 12686]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
365 SetOverwrite off
f68798385106 [gaim-migrate @ 12686]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
366 SectionEnd
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
367 Section $(PIDGINSTARTMENUSHORTCUTSECTIONTITLE) SecStartMenuShortcut
10920
f68798385106 [gaim-migrate @ 12686]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
368 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
369 CreateShortCut "$SMPROGRAMS\Pidgin.lnk" "$INSTDIR\pidgin.exe"
10920
f68798385106 [gaim-migrate @ 12686]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
370 SetOverwrite off
f68798385106 [gaim-migrate @ 12686]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
371 SectionEnd
15045
d587829617f4 [gaim-migrate @ 17762]
Daniel Atallah <datallah@pidgin.im>
parents: 15031
diff changeset
372 SectionGroupEnd
10920
f68798385106 [gaim-migrate @ 12686]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
373
f68798385106 [gaim-migrate @ 12686]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
374 ;--------------------------------
15856
322e0965615f Add support for registering URI handlers to the windows installer.
Daniel Atallah <datallah@pidgin.im>
parents: 15819
diff changeset
375 ;URI Handling
22947
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
376
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
377 !macro URI_SECTION proto
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
378 Section /o "${proto}:" SecURI_${proto}
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
379 Push "${proto}"
15856
322e0965615f Add support for registering URI handlers to the windows installer.
Daniel Atallah <datallah@pidgin.im>
parents: 15819
diff changeset
380 Call RegisterURIHandler
322e0965615f Add support for registering URI handlers to the windows installer.
Daniel Atallah <datallah@pidgin.im>
parents: 15819
diff changeset
381 SectionEnd
22947
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
382 !macroend
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
383 SectionGroup /e $(URIHANDLERSSECTIONTITLE) SecURIHandlers
22947
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
384 !insertmacro URI_SECTION "aim"
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
385 !insertmacro URI_SECTION "msnim"
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
386 !insertmacro URI_SECTION "ymsgr"
28136
a3b6446eb2c4 Add support for XMPP URIs on Windows. Closes #2326.
Paul Aurich <darkrain42@pidgin.im>
parents: 28020
diff changeset
387 !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
388 SectionGroupEnd
322e0965615f Add support for registering URI handlers to the windows installer.
Daniel Atallah <datallah@pidgin.im>
parents: 15819
diff changeset
389
322e0965615f Add support for registering URI handlers to the windows installer.
Daniel Atallah <datallah@pidgin.im>
parents: 15819
diff changeset
390 ;--------------------------------
29639
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
391 ;Translations
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
392
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
393 !macro LANG_SECTION lang
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
394 ${MementoUnselectedSection} "${lang}" SecLang_${lang}
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
395 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
396 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
397 SetOutPath "$INSTDIR"
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
398 ${MementoSectionEnd}
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
399 !macroend
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
400 SectionGroup $(TRANSLATIONSSECTIONTITLE) SecTranslations
29639
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
401 # 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
402 !include "pidgin-translations.nsh"
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
403 SectionGroupEnd
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
404 ${MementoSectionDone}
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
405
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
406 ;--------------------------------
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
407 ;Spell Checking
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
408
29818
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
409 !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
410 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
411 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
412 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
413 Call InstallDict
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
414 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
415 !macroend
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
416 SectionGroup $(PIDGINSPELLCHECKSECTIONTITLE) SecSpellCheck
29818
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
417 !include "pidgin-spellcheck.nsh"
15045
d587829617f4 [gaim-migrate @ 17762]
Daniel Atallah <datallah@pidgin.im>
parents: 15031
diff changeset
418 SectionGroupEnd
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
419
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
420 Section /o $(DEBUGSYMBOLSSECTIONTITLE) SecDebugSymbols
29766
540e86343b7e Various installer bug fixes
Daniel Atallah <datallah@pidgin.im>
parents: 29763
diff changeset
421
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
422 InitPluginsDir
29766
540e86343b7e Various installer bug fixes
Daniel Atallah <datallah@pidgin.im>
parents: 29763
diff changeset
423 StrCpy $R1 "$PLUGINSDIR\dbgsym.zip"
29640
e97688dcc88a Include the debug symbols in the offline installer
Daniel Atallah <datallah@pidgin.im>
parents: 29639
diff changeset
424 !ifdef OFFLINE_INSTALLER
e97688dcc88a Include the debug symbols in the offline installer
Daniel Atallah <datallah@pidgin.im>
parents: 29639
diff changeset
425
e97688dcc88a Include the debug symbols in the offline installer
Daniel Atallah <datallah@pidgin.im>
parents: 29639
diff changeset
426 SetOutPath $PLUGINSDIR
29766
540e86343b7e Various installer bug fixes
Daniel Atallah <datallah@pidgin.im>
parents: 29763
diff changeset
427 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
428
e97688dcc88a Include the debug symbols in the offline installer
Daniel Atallah <datallah@pidgin.im>
parents: 29639
diff changeset
429 !else
e97688dcc88a Include the debug symbols in the offline installer
Daniel Atallah <datallah@pidgin.im>
parents: 29639
diff changeset
430
29766
540e86343b7e Various installer bug fixes
Daniel Atallah <datallah@pidgin.im>
parents: 29763
diff changeset
431 ; 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
432 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
433 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
434 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
435 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
436 Pop $R0
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
437 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
438 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
439
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
440 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
441 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
442 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
443 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
444
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
445 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
446 prompt_retry:
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
447 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
448
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
449 extract:
29640
e97688dcc88a Include the debug symbols in the offline installer
Daniel Atallah <datallah@pidgin.im>
parents: 29639
diff changeset
450 !endif
e97688dcc88a Include the debug symbols in the offline installer
Daniel Atallah <datallah@pidgin.im>
parents: 29639
diff changeset
451
29766
540e86343b7e Various installer bug fixes
Daniel Atallah <datallah@pidgin.im>
parents: 29763
diff changeset
452 SetOutPath "$INSTDIR"
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
453 nsisunz::UnzipToLog $R1 "$INSTDIR"
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
454 Pop $R0
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
455 StrCmp $R0 "success" +2
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
456 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
457
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
458 !ifndef OFFLINE_INSTALLER
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
459 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
460 !endif
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
461 SectionEnd
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
462
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
463 ;--------------------------------
4897
b957d7e1ab16 [gaim-migrate @ 5229]
Herman Bloggs <herman@bluedigits.com>
parents: 4857
diff changeset
464 ;Uninstaller Section
3630
caa952062dc2 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
465
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
466
3630
caa952062dc2 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
467 Section Uninstall
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
468 Call un.CheckUserInstallRights
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
469 Pop $R0
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
470 StrCmp $R0 "NONE" no_rights
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
471 StrCmp $R0 "HKCU" try_hkcu try_hklm
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
472
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
473 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
474 ReadRegStr $R0 HKCU ${PIDGIN_REG_KEY} ""
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
475 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
476 ; 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
477 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
478 DeleteRegKey HKCU "${PIDGIN_UNINSTALL_KEY}"
5383
b9835d165626 [gaim-migrate @ 5759]
Herman Bloggs <herman@bluedigits.com>
parents: 5332
diff changeset
479 Goto cont_uninstall
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
480
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
481 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
482 ReadRegStr $R0 HKLM ${PIDGIN_REG_KEY} ""
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
483 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
484 ; 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
485 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
486 DeleteRegKey HKLM "${PIDGIN_UNINSTALL_KEY}"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
487 DeleteRegKey HKLM "${HKLM_APP_PATHS_KEY}"
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
488 ; Sets start menu and desktop scope to all users..
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
489 SetShellVarContext "all"
4126
99bff42f4a47 [gaim-migrate @ 4343]
Herman Bloggs <herman@bluedigits.com>
parents: 3989
diff changeset
490
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
491 cont_uninstall:
6090
348fcb77d3cf [gaim-migrate @ 6549]
Herman Bloggs <herman@bluedigits.com>
parents: 5931
diff changeset
492 ; 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
493 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
494 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
495 ; Remove Language preference info
30259
01eb5d70e51a Automatically select the translation corresponding to the installer language.
Daniel Atallah <datallah@pidgin.im>
parents: 29818
diff changeset
496 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
497
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
498 ; Remove any URI handlers
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
499 ; 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
500 Push "aim"
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
501 Call un.UnregisterURIHandler
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
502 Push "msnim"
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
503 Call un.UnregisterURIHandler
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
504 Push "ymsgr"
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
505 Call un.UnregisterURIHandler
28136
a3b6446eb2c4 Add support for XMPP URIs on Windows. Closes #2326.
Paul Aurich <darkrain42@pidgin.im>
parents: 28020
diff changeset
506 Push "xmpp"
a3b6446eb2c4 Add support for XMPP URIs on Windows. Closes #2326.
Paul Aurich <darkrain42@pidgin.im>
parents: 28020
diff changeset
507 Call un.UnregisterURIHandler
6090
348fcb77d3cf [gaim-migrate @ 6549]
Herman Bloggs <herman@bluedigits.com>
parents: 5931
diff changeset
508
31346
effc9a37749b Add the AddTrust External CA Root. Closes #11554.
Paul Aurich <darkrain42@pidgin.im>
parents: 31127
diff changeset
509 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
510 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
511 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
512 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
513 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
514 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
515 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
516 Delete "$INSTDIR\ca-certs\DigiCertHighAssuranceCA-3.pem"
33859
49405e4b7a92 Install DigiCert High Assurance EV Root CA
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33752
diff changeset
517 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
518 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
519 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
520 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
521 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
522 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
523 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
524 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
525 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
526 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
527 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
528 Delete "$INSTDIR\ca-certs\StartCom_Free_SSL_CA.pem"
28020
Paul Aurich <darkrain42@pidgin.im>
parents: 28019
diff changeset
529 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
530 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
531 Delete "$INSTDIR\ca-certs\ValiCert_Class_2_VA.pem"
28020
Paul Aurich <darkrain42@pidgin.im>
parents: 28019
diff changeset
532 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
533 Delete "$INSTDIR\ca-certs\Verisign_Class3_Primary_CA.pem"
35576
12216afa24ab Fix make distcheck for 2.x.y
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 33859
diff changeset
534 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: 33859
diff changeset
535 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: 33859
diff changeset
536 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
537 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
538 Delete "$INSTDIR\ca-certs\Verisign_RSA_Secure_Server_CA.pem"
2071903c58e4 Fix the win32 build for the cert SoC branch merge.
Daniel Atallah <datallah@pidgin.im>
parents: 19627
diff changeset
539 RMDir "$INSTDIR\ca-certs"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
540 RMDir /r "$INSTDIR\locale"
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
541 RMDir /r "$INSTDIR\pixmaps"
34270
3ee9b2690519 win32: gtk.zip generation more verbose, add missing files to uninstaller, add missing dependencies for build
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33955
diff changeset
542 RMDir /r "$INSTDIR\theme"
15236
b0b173741baf [gaim-migrate @ 17960]
Daniel Atallah <datallah@pidgin.im>
parents: 15144
diff changeset
543 Delete "$INSTDIR\plugins\autoaccept.dll"
b0b173741baf [gaim-migrate @ 17960]
Daniel Atallah <datallah@pidgin.im>
parents: 15144
diff changeset
544 Delete "$INSTDIR\plugins\buddynote.dll"
b0b173741baf [gaim-migrate @ 17960]
Daniel Atallah <datallah@pidgin.im>
parents: 15144
diff changeset
545 Delete "$INSTDIR\plugins\convcolors.dll"
9565
c824ac72974f [gaim-migrate @ 10404]
Herman Bloggs <herman@bluedigits.com>
parents: 9561
diff changeset
546 Delete "$INSTDIR\plugins\extplacement.dll"
19851
48abddbe6b78 Make the uninstaller remove everything it installs.
Daniel Atallah <datallah@pidgin.im>
parents: 19705
diff changeset
547 Delete "$INSTDIR\plugins\gtkbuddynote.dll"
6476
92d08d220cd1 [gaim-migrate @ 6987]
Herman Bloggs <herman@bluedigits.com>
parents: 6447
diff changeset
548 Delete "$INSTDIR\plugins\history.dll"
34270
3ee9b2690519 win32: gtk.zip generation more verbose, add missing files to uninstaller, add missing dependencies for build
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33955
diff changeset
549 Delete "$INSTDIR\plugins\internalkeyring.dll"
3ee9b2690519 win32: gtk.zip generation more verbose, add missing files to uninstaller, add missing dependencies for build
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33955
diff changeset
550 Delete "$INSTDIR\plugins\ssl-gnutls.dll"
3ee9b2690519 win32: gtk.zip generation more verbose, add missing files to uninstaller, add missing dependencies for build
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33955
diff changeset
551 Delete "$INSTDIR\plugins\webkit.dll"
3ee9b2690519 win32: gtk.zip generation more verbose, add missing files to uninstaller, add missing dependencies for build
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33955
diff changeset
552 Delete "$INSTDIR\plugins\wincred.dll"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
553 Delete "$INSTDIR\plugins\iconaway.dll"
6476
92d08d220cd1 [gaim-migrate @ 6987]
Herman Bloggs <herman@bluedigits.com>
parents: 6447
diff changeset
554 Delete "$INSTDIR\plugins\idle.dll"
17733
722e93eb392e Build and distribute the joinpart plugin on win32.
Daniel Atallah <datallah@pidgin.im>
parents: 17722
diff changeset
555 Delete "$INSTDIR\plugins\joinpart.dll"
17614
82ea9e17d6b0 Add the bonjour prpl to the win32 uninstaller.
Daniel Atallah <datallah@pidgin.im>
parents: 17462
diff changeset
556 Delete "$INSTDIR\plugins\libbonjour.dll"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
557 Delete "$INSTDIR\plugins\libgg.dll"
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
558 Delete "$INSTDIR\plugins\libirc.dll"
36800
c9f5588d027b Updated filenames in pidgin-installer.nsi
Ankit Vani <a@nevitus.org>
parents: 34270
diff changeset
559 Delete "$INSTDIR\plugins\libjabber.dll"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
560 Delete "$INSTDIR\plugins\libmsn.dll"
28922
5f7d25fdcdb7 Add mxit to uninstall list
Daniel Atallah <datallah@pidgin.im>
parents: 28624
diff changeset
561 Delete "$INSTDIR\plugins\libmxit.dll"
9139
98408fc7521c [gaim-migrate @ 9923]
Herman Bloggs <herman@bluedigits.com>
parents: 9115
diff changeset
562 Delete "$INSTDIR\plugins\libnovell.dll"
36800
c9f5588d027b Updated filenames in pidgin-installer.nsi
Ankit Vani <a@nevitus.org>
parents: 34270
diff changeset
563 Delete "$INSTDIR\plugins\liboscar.dll"
11103
a85505cc7ea0 [gaim-migrate @ 13143]
Richard Laager <rlaager@pidgin.im>
parents: 11090
diff changeset
564 Delete "$INSTDIR\plugins\libsametime.dll"
a85505cc7ea0 [gaim-migrate @ 13143]
Richard Laager <rlaager@pidgin.im>
parents: 11090
diff changeset
565 Delete "$INSTDIR\plugins\libsilc.dll"
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
566 Delete "$INSTDIR\plugins\libsimple.dll"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
567 Delete "$INSTDIR\plugins\libyahoo.dll"
14297
c1788b3112fd [gaim-migrate @ 16917]
Richard Laager <rlaager@pidgin.im>
parents: 13810
diff changeset
568 Delete "$INSTDIR\plugins\log_reader.dll"
15236
b0b173741baf [gaim-migrate @ 17960]
Daniel Atallah <datallah@pidgin.im>
parents: 15144
diff changeset
569 Delete "$INSTDIR\plugins\markerline.dll"
b0b173741baf [gaim-migrate @ 17960]
Daniel Atallah <datallah@pidgin.im>
parents: 15144
diff changeset
570 Delete "$INSTDIR\plugins\newline.dll"
13067
f455a2ca30a9 [gaim-migrate @ 15429]
Daniel Atallah <datallah@pidgin.im>
parents: 13037
diff changeset
571 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
572 Delete "$INSTDIR\plugins\nss-prefs.dll"
15236
b0b173741baf [gaim-migrate @ 17960]
Daniel Atallah <datallah@pidgin.im>
parents: 15144
diff changeset
573 Delete "$INSTDIR\plugins\offlinemsg.dll"
7352
715b973d34e2 [gaim-migrate @ 7943]
Herman Bloggs <herman@bluedigits.com>
parents: 7215
diff changeset
574 Delete "$INSTDIR\plugins\perl.dll"
19851
48abddbe6b78 Make the uninstaller remove everything it installs.
Daniel Atallah <datallah@pidgin.im>
parents: 19705
diff changeset
575 Delete "$INSTDIR\plugins\pidginrc.dll"
13037
e5fd3ea2ad98 [gaim-migrate @ 15396]
Daniel Atallah <datallah@pidgin.im>
parents: 12922
diff changeset
576 Delete "$INSTDIR\plugins\psychic.dll"
7600
279abfe7721f [gaim-migrate @ 8222]
Herman Bloggs <herman@bluedigits.com>
parents: 7575
diff changeset
577 Delete "$INSTDIR\plugins\relnot.dll"
23167
d542424833f9 applied changes from ae9d7912dfb7c1627441484bfe471dd4d370d346
Daniel Atallah <datallah@pidgin.im>
parents: 22947
diff changeset
578 Delete "$INSTDIR\plugins\sendbutton.dll"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
579 Delete "$INSTDIR\plugins\spellchk.dll"
7352
715b973d34e2 [gaim-migrate @ 7943]
Herman Bloggs <herman@bluedigits.com>
parents: 7215
diff changeset
580 Delete "$INSTDIR\plugins\ssl-nss.dll"
715b973d34e2 [gaim-migrate @ 7943]
Herman Bloggs <herman@bluedigits.com>
parents: 7215
diff changeset
581 Delete "$INSTDIR\plugins\ssl.dll"
6476
92d08d220cd1 [gaim-migrate @ 6987]
Herman Bloggs <herman@bluedigits.com>
parents: 6447
diff changeset
582 Delete "$INSTDIR\plugins\statenotify.dll"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
583 Delete "$INSTDIR\plugins\ticker.dll"
6476
92d08d220cd1 [gaim-migrate @ 6987]
Herman Bloggs <herman@bluedigits.com>
parents: 6447
diff changeset
584 Delete "$INSTDIR\plugins\timestamp.dll"
12922
5c9dd678da15 [gaim-migrate @ 15275]
Daniel Atallah <datallah@pidgin.im>
parents: 12644
diff changeset
585 Delete "$INSTDIR\plugins\timestamp_format.dll"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
586 Delete "$INSTDIR\plugins\win2ktrans.dll"
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
587 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
588 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
589 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
590 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
591 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
592 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
593 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
594 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
595 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
596 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
597 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
598 RMDir "$INSTDIR\plugins\perl"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
599 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
600 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
601 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
602 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
603 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
604 RMDir "$INSTDIR\sasl2"
19851
48abddbe6b78 Make the uninstaller remove everything it installs.
Daniel Atallah <datallah@pidgin.im>
parents: 19705
diff changeset
605 Delete "$INSTDIR\sounds\purple\alert.wav"
48abddbe6b78 Make the uninstaller remove everything it installs.
Daniel Atallah <datallah@pidgin.im>
parents: 19705
diff changeset
606 Delete "$INSTDIR\sounds\purple\login.wav"
48abddbe6b78 Make the uninstaller remove everything it installs.
Daniel Atallah <datallah@pidgin.im>
parents: 19705
diff changeset
607 Delete "$INSTDIR\sounds\purple\logout.wav"
48abddbe6b78 Make the uninstaller remove everything it installs.
Daniel Atallah <datallah@pidgin.im>
parents: 19705
diff changeset
608 Delete "$INSTDIR\sounds\purple\receive.wav"
48abddbe6b78 Make the uninstaller remove everything it installs.
Daniel Atallah <datallah@pidgin.im>
parents: 19705
diff changeset
609 Delete "$INSTDIR\sounds\purple\send.wav"
48abddbe6b78 Make the uninstaller remove everything it installs.
Daniel Atallah <datallah@pidgin.im>
parents: 19705
diff changeset
610 RMDir "$INSTDIR\sounds\purple"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
611 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
612 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
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"
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
620 Delete "$INSTDIR\libnspr4.dll"
21395
e5bb2b0df509 Improved cyrus sasl support on win32:
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 21393
diff changeset
621 Delete "$INSTDIR\libmeanwhile-1.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
622 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
623 Delete "$INSTDIR\libplds4.dll"
15816
6fb46b27dedc More installer stuff.
Daniel Atallah <datallah@pidgin.im>
parents: 15815
diff changeset
624 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
625 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
626 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
627 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
628 Delete "$INSTDIR\libssp-0.dll"
29763
28f8c86acf66 Various win32 installer fixes
Daniel Atallah <datallah@pidgin.im>
parents: 29760
diff changeset
629 Delete "$INSTDIR\libxml2-2.dll"
6973
96afadc10b8d [gaim-migrate @ 7525]
Herman Bloggs <herman@bluedigits.com>
parents: 6951
diff changeset
630 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
631 Delete "$INSTDIR\nssutil3.dll"
21395
e5bb2b0df509 Improved cyrus sasl support on win32:
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 21393
diff changeset
632 Delete "$INSTDIR\pidgin.dll"
15816
6fb46b27dedc More installer stuff.
Daniel Atallah <datallah@pidgin.im>
parents: 15815
diff changeset
633 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
634 Delete "$INSTDIR\smime3.dll"
6973
96afadc10b8d [gaim-migrate @ 7525]
Herman Bloggs <herman@bluedigits.com>
parents: 6951
diff changeset
635 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
636 Delete "$INSTDIR\sqlite3.dll"
6973
96afadc10b8d [gaim-migrate @ 7525]
Herman Bloggs <herman@bluedigits.com>
parents: 6951
diff changeset
637 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
638 Delete "$INSTDIR\${PIDGIN_UNINST_EXE}"
6973
96afadc10b8d [gaim-migrate @ 7525]
Herman Bloggs <herman@bluedigits.com>
parents: 6951
diff changeset
639 Delete "$INSTDIR\exchndl.dll"
14798
3a48e094d216 [gaim-migrate @ 17492]
Daniel Atallah <datallah@pidgin.im>
parents: 14745
diff changeset
640 Delete "$INSTDIR\install.log"
6973
96afadc10b8d [gaim-migrate @ 7525]
Herman Bloggs <herman@bluedigits.com>
parents: 6951
diff changeset
641
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
642 ; Remove the debug symbols
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
643 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
644
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
645 ; 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
646 ${GetParameters} $R0
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
647 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
648 ${GetOptions} "$R0" "/UPGRADE=" $R1
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
649 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
650 StrCmp $R1 "1" upgrade_done
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
651 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
652 ; 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
653 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
654 upgrade_done:
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
655
15856
322e0965615f Add support for registering URI handlers to the windows installer.
Daniel Atallah <datallah@pidgin.im>
parents: 15819
diff changeset
656 ;Try to remove Pidgin install dir (only if empty)
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
657 RMDir "$INSTDIR"
3853
510f497172b5 [gaim-migrate @ 4005]
Herman Bloggs <herman@bluedigits.com>
parents: 3849
diff changeset
658
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
659 ; 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
660 Delete "$DESKTOP\Pidgin.lnk"
25728
1985dd712828 Backport 1ae2b55502a0afd8f28918fc4726683c52e998e9 (#8985 - Remove Start Menu shortcut when unistalling)
Daniel Atallah <datallah@pidgin.im>
parents: 25672
diff changeset
661 Delete "$SMPROGRAMS\Pidgin.lnk"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
662
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
663 Goto done
4897
b957d7e1ab16 [gaim-migrate @ 5229]
Herman Bloggs <herman@bluedigits.com>
parents: 4857
diff changeset
664
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
665 cant_uninstall:
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
666 MessageBox MB_OK $(PIDGINUNINSTALLERROR1) /SD IDOK
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
667 Quit
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
668
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
669 no_rights:
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
670 MessageBox MB_OK $(PIDGINUNINSTALLERROR2) /SD IDOK
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
671 Quit
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
672
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
673 done:
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
674 SectionEnd ; end of uninstall section
3853
510f497172b5 [gaim-migrate @ 4005]
Herman Bloggs <herman@bluedigits.com>
parents: 3849
diff changeset
675
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
676 ;--------------------------------
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
677 ;Descriptions
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
678 !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
679 !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
680 $(PIDGINSECTIONDESCRIPTION)
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
681 !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
682 $(GTKSECTIONDESCRIPTION)
10920
f68798385106 [gaim-migrate @ 12686]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
683
f68798385106 [gaim-migrate @ 12686]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
684 !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
685 $(PIDGINSHORTCUTSSECTIONDESCRIPTION)
10920
f68798385106 [gaim-migrate @ 12686]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
686 !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
687 $(PIDGINDESKTOPSHORTCUTDESC)
10920
f68798385106 [gaim-migrate @ 12686]
Daniel Atallah <datallah@pidgin.im>
parents: 10814
diff changeset
688 !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
689 $(PIDGINSTARTMENUSHORTCUTDESC)
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
690
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
691 !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
692 $(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
693
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
694 !insertmacro MUI_FUNCTION_DESCRIPTION_END
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
695
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
696 ;--------------------------------
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
697 ;Functions
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
698
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
699 ; 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
700 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
701 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
702 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
703 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
704 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
705
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 ; 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
707 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
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:
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 ; 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
711 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
712 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
713 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
714
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 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
716 ;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
717 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
718 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
719 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
720
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 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
722 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
723 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
724
22947
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
725 Push $R2
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
726 Call CheckIfPidginIsCurrentURIHandler
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
727 Pop $R3
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
728
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
729 ; 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
730 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
731
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
732 ;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
733 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
734 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
735 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
736
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 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
738 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
739 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
740
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 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
742 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
743 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
744 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
745 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
746 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
747
22947
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
748 ; 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
749 ; Returns a boolean on the stack
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
750 !macro CheckIfPidginIsCurrentURIHandlerMacro UN
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
751 Function ${UN}CheckIfPidginIsCurrentURIHandler
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
752 Exch $R0
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
753 ClearErrors
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
754
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
755 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
756 IfErrors 0 +3
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
757 IntOp $R0 0 + 0
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
758 Goto done
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
759
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
760 !ifdef __UNINSTALL__
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
761 ${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
762 !else
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
763 ${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
764 !endif
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
765 IntOp $R0 0 + 1
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
766 IfErrors 0 +2
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
767 IntOp $R0 0 + 0
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
768
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
769 done:
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
770 Exch $R0
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
771 FunctionEnd
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
772 !macroend
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
773 !insertmacro CheckIfPidginIsCurrentURIHandlerMacro ""
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
774 !insertmacro CheckIfPidginIsCurrentURIHandlerMacro "un."
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
775
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
776 ; 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
777 Function un.UnregisterURIHandler
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
778 Exch $R0
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
779 Push $R1
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
780
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
781 Push $R0
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
782 Call un.CheckIfPidginIsCurrentURIHandler
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
783 Pop $R1
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
784
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
785 ; 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
786 IntCmp $R1 0 done
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 ;Unregister the URI handler
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
789 DetailPrint "Unregistering $R0 URI Handler"
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
790 DeleteRegKey HKCR "$R0"
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
791
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
792 done:
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
793 Pop $R1
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
794 Pop $R0
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
795 FunctionEnd
15856
322e0965615f Add support for registering URI handlers to the windows installer.
Daniel Atallah <datallah@pidgin.im>
parents: 15819
diff changeset
796
322e0965615f Add support for registering URI handlers to the windows installer.
Daniel Atallah <datallah@pidgin.im>
parents: 15819
diff changeset
797 Function RegisterURIHandler
322e0965615f Add support for registering URI handlers to the windows installer.
Daniel Atallah <datallah@pidgin.im>
parents: 15819
diff changeset
798 Exch $R0
22947
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
799 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
800 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
801 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
802 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
803 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
804 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
805 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
806 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
807 Pop $R0
322e0965615f Add support for registering URI handlers to the windows installer.
Daniel Atallah <datallah@pidgin.im>
parents: 15819
diff changeset
808 FunctionEnd
322e0965615f Add support for registering URI handlers to the windows installer.
Daniel Atallah <datallah@pidgin.im>
parents: 15819
diff changeset
809
322e0965615f Add support for registering URI handlers to the windows installer.
Daniel Atallah <datallah@pidgin.im>
parents: 15819
diff changeset
810
13392
65d549e23d0d [gaim-migrate @ 15764]
David Everly
parents: 13182
diff changeset
811 !macro CheckUserInstallRightsMacro UN
65d549e23d0d [gaim-migrate @ 15764]
David Everly
parents: 13182
diff changeset
812 Function ${UN}CheckUserInstallRights
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
813 Push $0
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
814 Push $1
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
815 ClearErrors
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
816 UserInfo::GetName
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
817 IfErrors Win9x
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
818 Pop $0
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
819 UserInfo::GetAccountType
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
820 Pop $1
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
821
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
822 StrCmp $1 "Admin" 0 +3
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
823 StrCpy $1 "HKLM"
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
824 Goto done
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
825 StrCmp $1 "Power" 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 "User" 0 +3
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
829 StrCpy $1 "HKCU"
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 "Guest" 0 +3
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
832 StrCpy $1 "NONE"
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 ; Unknown error
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
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
837
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
838 Win9x:
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
839 StrCpy $1 "HKLM"
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 done:
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
842 Exch $1
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
843 Exch
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
844 Pop $0
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
845 FunctionEnd
13392
65d549e23d0d [gaim-migrate @ 15764]
David Everly
parents: 13182
diff changeset
846 !macroend
65d549e23d0d [gaim-migrate @ 15764]
David Everly
parents: 13182
diff changeset
847 !insertmacro CheckUserInstallRightsMacro ""
65d549e23d0d [gaim-migrate @ 15764]
David Everly
parents: 13182
diff changeset
848 !insertmacro CheckUserInstallRightsMacro "un."
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
849
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
850 ;
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
851 ; Usage:
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
852 ; Push $0 ; Path string
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
853 ; Call VerifyDir
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
854 ; Pop $0 ; 0 - Bad path 1 - Good path
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
855 ;
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
856 Function VerifyDir
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
857 Exch $0
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
858 Push $1
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
859 Push $2
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
860 Loop:
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
861 IfFileExists $0 dir_exists
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
862 StrCpy $1 $0 ; save last
14439
adecc0185ad7 [gaim-migrate @ 17083]
Daniel Atallah <datallah@pidgin.im>
parents: 14438
diff changeset
863 ${GetParent} $0 $0
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
864 StrLen $2 $0
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
865 ; IfFileExists "C:" on xp returns true and on win2k returns false
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
866 ; So we're done in such a case..
9960
5144be791c3b [gaim-migrate @ 10868]
Luke Schierer <lschiere@pidgin.im>
parents: 9956
diff changeset
867 IntCmp $2 2 loop_done
5144be791c3b [gaim-migrate @ 10868]
Luke Schierer <lschiere@pidgin.im>
parents: 9956
diff changeset
868 ; GetParent of "C:" returns ""
5144be791c3b [gaim-migrate @ 10868]
Luke Schierer <lschiere@pidgin.im>
parents: 9956
diff changeset
869 IntCmp $2 0 loop_done
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
870 Goto Loop
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
871
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
872 loop_done:
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
873 StrCpy $1 "$0\GaImFooB"
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
874 ; Check if we can create dir on this drive..
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
875 ClearErrors
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
876 CreateDirectory $1
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
877 IfErrors DirBad DirGood
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
878
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
879 dir_exists:
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
880 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
881 FileOpen $1 "$0\pidginfoo.bar" w
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
882 IfErrors PathBad PathGood
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
883
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
884 DirGood:
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
885 RMDir $1
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
886 Goto PathGood1
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
887
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
888 DirBad:
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
889 RMDir $1
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
890 Goto PathBad1
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
891
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
892 PathBad:
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
893 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
894 Delete "$0\pidginfoo.bar"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
895 PathBad1:
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
896 StrCpy $0 "0"
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
897 Push $0
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
898 Goto done
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
899
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
900 PathGood:
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
901 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
902 Delete "$0\pidginfoo.bar"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
903 PathGood1:
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
904 StrCpy $0 "1"
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
905 Push $0
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
906
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
907 done:
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
908 Exch 3 ; The top of the stack contains the output variable
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
909 Pop $0
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
910 Pop $2
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
911 Pop $1
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
912 FunctionEnd
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
913
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
914 Function .onVerifyInstDir
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
915 Push $0
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
916 Push $INSTDIR
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
917 Call VerifyDir
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
918 Pop $0
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
919 StrCmp $0 "0" 0 dir_good
14512
7584322a65a2 [gaim-migrate @ 17164]
Daniel Atallah <datallah@pidgin.im>
parents: 14439
diff changeset
920 Pop $0
7584322a65a2 [gaim-migrate @ 17164]
Daniel Atallah <datallah@pidgin.im>
parents: 14439
diff changeset
921 Abort
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
922
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
923 dir_good:
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
924 Pop $0
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
925 FunctionEnd
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
926
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
927 ;
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
928 ; Usage:
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
929 ; Call DoWeNeedGtk
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
930 ; First Pop:
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
931 ; 0 - We have the correct version
14854
0a2391b774a4 [gaim-migrate @ 17557]
Daniel Atallah <datallah@pidgin.im>
parents: 14798
diff changeset
932 ; 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
933 ; 2 - We have an old version that needs to be upgraded
0a2391b774a4 [gaim-migrate @ 17557]
Daniel Atallah <datallah@pidgin.im>
parents: 14798
diff changeset
934 ; 3 - We don't have Gtk+ at all
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
935 ;
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
936 Function DoWeNeedGtk
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
937 Push $0
14512
7584322a65a2 [gaim-migrate @ 17164]
Daniel Atallah <datallah@pidgin.im>
parents: 14439
diff changeset
938 Push $1
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
939
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
940 IfFileExists "$INSTDIR\Gtk\CONTENTS" +3
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
941 Push "3"
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
942 Goto done
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
943
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
944 ClearErrors
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
945 ${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
946 IfErrors 0 +3
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
947 Push "3"
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
948 Goto done
14512
7584322a65a2 [gaim-migrate @ 17164]
Daniel Atallah <datallah@pidgin.im>
parents: 14439
diff changeset
949
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
950 ${VersionCompare} ${GTK_INSTALL_VERSION} $0 $1
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
951 IntCmp $1 1 +3
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
952 Push "0" ; Have a good version
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
953 Goto done
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
954
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
955 ${VersionCompare} ${GTK_MIN_VERSION} $0 $1
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
956 IntCmp $1 1 +3
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
957 Push "1" ; Optional Upgrade
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
958 Goto done
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
959 Push "2" ; Mandatory Upgrade
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
960 Goto done
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
961
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
962 done:
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
963 ; 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
964 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
965 Pop $1
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
966 Exch
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
967 Pop $0
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
968 FunctionEnd
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
969
13392
65d549e23d0d [gaim-migrate @ 15764]
David Everly
parents: 13182
diff changeset
970
65d549e23d0d [gaim-migrate @ 15764]
David Everly
parents: 13182
diff changeset
971 !macro RunCheckMacro UN
65d549e23d0d [gaim-migrate @ 15764]
David Everly
parents: 13182
diff changeset
972 Function ${UN}RunCheck
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
973 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
974 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
975
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
976 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
977 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
978 ; 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
979 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
980 System::Call 'kernel32::CloseHandle(i $R1) i .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
981 System::Call 'kernel32::CreateMutexA(i 0, i 0, t "pidgin_is_running") i .R1 ?e'
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 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
983 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
984 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
985 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
986
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
987 ; 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
988 ; 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
989 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
990
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
991 Pop $R1
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
992 Pop $R0
10212
9a9c18b72773 [gaim-migrate @ 11336]
Herman Bloggs <herman@bluedigits.com>
parents: 10137
diff changeset
993 FunctionEnd
13392
65d549e23d0d [gaim-migrate @ 15764]
David Everly
parents: 13182
diff changeset
994 !macroend
65d549e23d0d [gaim-migrate @ 15764]
David Everly
parents: 13182
diff changeset
995 !insertmacro RunCheckMacro ""
65d549e23d0d [gaim-migrate @ 15764]
David Everly
parents: 13182
diff changeset
996 !insertmacro RunCheckMacro "un."
10212
9a9c18b72773 [gaim-migrate @ 11336]
Herman Bloggs <herman@bluedigits.com>
parents: 10137
diff changeset
997
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
998 Function .onInit
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
999 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
1000 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
1001 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
1002 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
1003
2354ce28434c Work around the buggy Aspell dictionary installers by cleaning up after them.
Daniel Atallah <datallah@pidgin.im>
parents: 25517
diff changeset
1004 ${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
1005
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
1006 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
1007 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
1008 ; 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
1009 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
1010 System::Call 'kernel32::CloseHandle(i $R1) i .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
1011 System::Call 'kernel32::CreateMutexA(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
1012 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
1013 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
1014 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
1015 Abort
25550
2354ce28434c Work around the buggy Aspell dictionary installers by cleaning up after them.
Daniel Atallah <datallah@pidgin.im>
parents: 25517
diff changeset
1016
2354ce28434c Work around the buggy Aspell dictionary installers by cleaning up after them.
Daniel Atallah <datallah@pidgin.im>
parents: 25517
diff changeset
1017 ; 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
1018 ; 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
1019 ClearErrors
2354ce28434c Work around the buggy Aspell dictionary installers by cleaning up after them.
Daniel Atallah <datallah@pidgin.im>
parents: 25517
diff changeset
1020 ${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
1021 IfErrors 0 +2
10212
9a9c18b72773 [gaim-migrate @ 11336]
Herman Bloggs <herman@bluedigits.com>
parents: 10137
diff changeset
1022 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
1023
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
1024 StrCpy $name "Pidgin ${PIDGIN_VERSION}"
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1025
15818
1ff837dbed01 Installer updates
Daniel Atallah <datallah@pidgin.im>
parents: 15817
diff changeset
1026 ;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
1027 ;(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
1028 ClearErrors
30259
01eb5d70e51a Automatically select the translation corresponding to the installer language.
Daniel Atallah <datallah@pidgin.im>
parents: 29818
diff changeset
1029 ReadRegStr $R0 HKCU "${PIDGIN_REG_KEY}" "${MUI_LANGDLL_REGISTRY_VALUENAME}"
15818
1ff837dbed01 Installer updates
Daniel Atallah <datallah@pidgin.im>
parents: 15817
diff changeset
1030 IfErrors 0 +5
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 "${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
1033 IfErrors +3
30259
01eb5d70e51a Automatically select the translation corresponding to the installer language.
Daniel Atallah <datallah@pidgin.im>
parents: 29818
diff changeset
1034 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
1035 WriteRegStr HKCU "${PIDGIN_REG_KEY}" "${MUI_LANGDLL_REGISTRY_VALUENAME}" "$R0"
15818
1ff837dbed01 Installer updates
Daniel Atallah <datallah@pidgin.im>
parents: 15817
diff changeset
1036
29639
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
1037 ${MementoSectionRestore}
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
1038
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
1039 ;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
1040 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
1041
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
1042 ;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
1043 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
1044 ;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
1045 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
1046 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
1047 ;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
1048 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
1049 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
1050 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
1051 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
1052 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
1053 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
1054 !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
1055 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
1056 ;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
1057 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
1058 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
1059 ;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
1060 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
1061 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
1062 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
1063 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
1064 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
1065 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
1066 !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
1067 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
1068 ;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
1069 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
1070
14439
adecc0185ad7 [gaim-migrate @ 17083]
Daniel Atallah <datallah@pidgin.im>
parents: 14438
diff changeset
1071 ClearErrors
25550
2354ce28434c Work around the buggy Aspell dictionary installers by cleaning up after them.
Daniel Atallah <datallah@pidgin.im>
parents: 25517
diff changeset
1072 ${GetOptions} "$R3" "/L=" $R1
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
1073 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
1074 StrCpy $LANGUAGE $R1
14929
a71c59193f9d [gaim-migrate @ 17636]
Daniel Atallah <datallah@pidgin.im>
parents: 14887
diff changeset
1075 Goto skip_lang
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
1076
7600
279abfe7721f [gaim-migrate @ 8222]
Herman Bloggs <herman@bluedigits.com>
parents: 7575
diff changeset
1077 ; Select Language
279abfe7721f [gaim-migrate @ 8222]
Herman Bloggs <herman@bluedigits.com>
parents: 7575
diff changeset
1078 ; 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
1079 !define MUI_LANGDLL_ALWAYSSHOW
7600
279abfe7721f [gaim-migrate @ 8222]
Herman Bloggs <herman@bluedigits.com>
parents: 7575
diff changeset
1080 !insertmacro MUI_LANGDLL_DISPLAY
279abfe7721f [gaim-migrate @ 8222]
Herman Bloggs <herman@bluedigits.com>
parents: 7575
diff changeset
1081 skip_lang:
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
1082
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
1083 ClearErrors
25550
2354ce28434c Work around the buggy Aspell dictionary installers by cleaning up after them.
Daniel Atallah <datallah@pidgin.im>
parents: 25517
diff changeset
1084 ${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
1085 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
1086 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
1087 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
1088 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
1089 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
1090 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
1091 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
1092 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
1093
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 ClearErrors
25550
2354ce28434c Work around the buggy Aspell dictionary installers by cleaning up after them.
Daniel Atallah <datallah@pidgin.im>
parents: 25517
diff changeset
1095 ${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
1096 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
1097 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
1098 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
1099 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
1100 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
1101 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
1102 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
1103 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
1104
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
1105 ; If install path was set on the command, use it.
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
1106 StrCmp $INSTDIR "" 0 instdir_done
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
1107
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
1108 ; 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
1109 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
1110 ReadRegStr $INSTDIR HKCU "${PIDGIN_REG_KEY}" ""
10511
0a0bd0d33904 [gaim-migrate @ 11809]
Daniel Atallah <datallah@pidgin.im>
parents: 10212
diff changeset
1111 IfErrors +2
0a0bd0d33904 [gaim-migrate @ 11809]
Daniel Atallah <datallah@pidgin.im>
parents: 10212
diff changeset
1112 StrCmp $INSTDIR "" 0 instdir_done
14438
b552f0964484 [gaim-migrate @ 17082]
Daniel Atallah <datallah@pidgin.im>
parents: 14351
diff changeset
1113 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
1114 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
1115 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
1116 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
1117
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
1118 Call CheckUserInstallRights
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1119 Pop $R0
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
1120
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1121 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
1122 StrCpy $INSTDIR "$PROGRAMFILES\Pidgin"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
1123 Goto instdir_done
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
1124 user_dir:
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1125 Push $SMPROGRAMS
14439
adecc0185ad7 [gaim-migrate @ 17083]
Daniel Atallah <datallah@pidgin.im>
parents: 14438
diff changeset
1126 ${GetParent} $SMPROGRAMS $R2
adecc0185ad7 [gaim-migrate @ 17083]
Daniel Atallah <datallah@pidgin.im>
parents: 14438
diff changeset
1127 ${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
1128 StrCpy $INSTDIR "$R2\Pidgin"
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
1129
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
1130 instdir_done:
30259
01eb5d70e51a Automatically select the translation corresponding to the installer language.
Daniel Atallah <datallah@pidgin.im>
parents: 29818
diff changeset
1131 ;LogSet on
01eb5d70e51a Automatically select the translation corresponding to the installer language.
Daniel Atallah <datallah@pidgin.im>
parents: 29818
diff changeset
1132
01eb5d70e51a Automatically select the translation corresponding to the installer language.
Daniel Atallah <datallah@pidgin.im>
parents: 29818
diff changeset
1133 ; 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
1134 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
1135
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1136 ;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
1137 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
1138
25550
2354ce28434c Work around the buggy Aspell dictionary installers by cleaning up after them.
Daniel Atallah <datallah@pidgin.im>
parents: 25517
diff changeset
1139 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
1140 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
1141 Pop $R1
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1142 Pop $R0
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
1143 FunctionEnd
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
1144
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
1145 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
1146
29639
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
1147 ${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
1148
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 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
1150
29639
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29635
diff changeset
1151
6255
ed38c707623b [gaim-migrate @ 6751]
Herman Bloggs <herman@bluedigits.com>
parents: 6233
diff changeset
1152 Function un.onInit
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
1153
10212
9a9c18b72773 [gaim-migrate @ 11336]
Herman Bloggs <herman@bluedigits.com>
parents: 10137
diff changeset
1154 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
1155 StrCpy $name "Pidgin ${PIDGIN_VERSION}"
22947
163e225750ad Remove the stored installer language selection when uninstalling.
Daniel Atallah <datallah@pidgin.im>
parents: 22236
diff changeset
1156 ;LogSet on
6255
ed38c707623b [gaim-migrate @ 6751]
Herman Bloggs <herman@bluedigits.com>
parents: 6233
diff changeset
1157
14516
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14512
diff changeset
1158 ; Get stored language preference
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14512
diff changeset
1159 !insertmacro MUI_UNGETLANGUAGE
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1160
6255
ed38c707623b [gaim-migrate @ 6751]
Herman Bloggs <herman@bluedigits.com>
parents: 6233
diff changeset
1161 FunctionEnd
6233
d12a0c4e40a0 [gaim-migrate @ 6726]
Herman Bloggs <herman@bluedigits.com>
parents: 6159
diff changeset
1162
7558
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
1163 ; Page enter and exit functions..
a99729c4010a [gaim-migrate @ 8172]
Herman Bloggs <herman@bluedigits.com>
parents: 7357
diff changeset
1164
15047
6064684b3eeb [gaim-migrate @ 17764]
Daniel Atallah <datallah@pidgin.im>
parents: 15045
diff changeset
1165 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
1166 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
1167 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
1168
29766
540e86343b7e Various installer bug fixes
Daniel Atallah <datallah@pidgin.im>
parents: 29763
diff changeset
1169 !ifdef OFFLINE_INSTALLER
540e86343b7e Various installer bug fixes
Daniel Atallah <datallah@pidgin.im>
parents: 29763
diff changeset
1170 !insertmacro SelectSection ${SecDebugSymbols}
540e86343b7e Various installer bug fixes
Daniel Atallah <datallah@pidgin.im>
parents: 29763
diff changeset
1171 !endif
540e86343b7e Various installer bug fixes
Daniel Atallah <datallah@pidgin.im>
parents: 29763
diff changeset
1172
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
1173 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
1174 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
1175 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
1176 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
1177 ; 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
1178 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
1179 !insertmacro SetSectionFlag ${SecGtk} ${SF_RO}
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 29633
diff changeset
1180 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
1181 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
1182 ; 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
1183 !insertmacro UnselectSection ${SecGtk}
14854
0a2391b774a4 [gaim-migrate @ 17557]
Daniel Atallah <datallah@pidgin.im>
parents: 14798
diff changeset
1184
15047
6064684b3eeb [gaim-migrate @ 17764]
Daniel Atallah <datallah@pidgin.im>
parents: 15045
diff changeset
1185 done:
14854
0a2391b774a4 [gaim-migrate @ 17557]
Daniel Atallah <datallah@pidgin.im>
parents: 14798
diff changeset
1186 Pop $R1
0a2391b774a4 [gaim-migrate @ 17557]
Daniel Atallah <datallah@pidgin.im>
parents: 14798
diff changeset
1187 Pop $R0
5332
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
1188 FunctionEnd
0cfb8232fa21 [gaim-migrate @ 5705]
Herman Bloggs <herman@bluedigits.com>
parents: 5066
diff changeset
1189
30260
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1190 ; 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
1191 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
1192 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
1193
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1194 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
1195 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
1196 ; 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
1197 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
1198 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
1199 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
1200
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1201 ; 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
1202 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
1203 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
1204 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
1205 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
1206 !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
1207
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1208 done:
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1209 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
1210 FunctionEnd
a2765eb04fde Allow the GTK+ Runtime to be unselected when there is no existing runtime
Daniel Atallah <datallah@pidgin.im>
parents: 30259
diff changeset
1211
30259
01eb5d70e51a Automatically select the translation corresponding to the installer language.
Daniel Atallah <datallah@pidgin.im>
parents: 29818
diff changeset
1212 Function SelectTranslationForCurrentLanguage
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 30260
diff changeset
1213 !insertmacro SELECT_TRANSLATION_FUNCTION
30259
01eb5d70e51a Automatically select the translation corresponding to the installer language.
Daniel Atallah <datallah@pidgin.im>
parents: 29818
diff changeset
1214 FunctionEnd
01eb5d70e51a Automatically select the translation corresponding to the installer language.
Daniel Atallah <datallah@pidgin.im>
parents: 29818
diff changeset
1215
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1216 ; SpellChecker Related Functions
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1217 ;-------------------------------
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1218
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1219 ; 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
1220 !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
1221 ;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
1222 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
1223 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
1224 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
1225 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
1226 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
1227 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
1228 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
1229 !macroend
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1230 Function SelectAndDisableInstalledDictionaries
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1231 Push $R0
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1232 Push $R1
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1233
29818
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1234 !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
1235 !insertmacro UnselectSection ${SecSpellCheck}
11578
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 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
1238 !include "pidgin-spellcheck-preselect.nsh"
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1239
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1240 Pop $R1
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1241 Pop $R0
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1242 FunctionEnd
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1243
29818
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1244 Function InstallDict
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1245 Push $R0
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1246 Exch
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1247 Pop $R0 ;This is the language code
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1248 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
1249 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
1250 Pop $R1 ;This is the language file
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1251 Push $R2
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1252 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
1253 Push $R4
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1254
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1255 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
1256 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
1257
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1258 InitPluginsDir
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1259
29818
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1260 ; 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
1261 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
1262 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
1263 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
1264 retry:
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
1265 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
1266 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
1267 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
1268 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
1269 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
1270 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
1271 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
1272 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
1273 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
1274 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
1275 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
1276 DetailPrint "$R3" ;print error message to log
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1277 Goto done
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1278
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1279 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
1280 DetailPrint "$R0 Dictionary is installed"
11578
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 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
1283 Pop $R4
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1284 Pop $R3
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1285 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
1286 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
1287 Exch $R1
11578
70230c5dded2 [gaim-migrate @ 13847]
Daniel Atallah <datallah@pidgin.im>
parents: 11260
diff changeset
1288 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
1289
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
1290 !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
1291 ; 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
1292 ; 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
1293 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
1294 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
1295 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
1296 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
1297 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
1298 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
1299 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
1300 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
1301
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
1302 SHA1Plugin::FileSum "$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
1303 Pop $R1
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 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
1305
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
1306 StrCmp "$R1" "0" +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
1307 DetailPrint "SHA1Sum calculation error: $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
1308 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
1309 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
1310
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
1311 ; 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
1312 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
1313 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
1314 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
1315 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
1316
40eb50cbc39d Add support to the win32 installer to check the sha1sum of the downloaded GTK
Daniel Atallah <datallah@pidgin.im>
parents: 33395
diff changeset
1317 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
1318
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 done:
33751
a8672a4a3a13 installer: Fix CheckSHA1Sum restoring the stack - this was broken in 51473787ff4f.
Daniel Atallah <datallah@pidgin.im>
parents: 33669
diff changeset
1320 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
1321 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
1322 Pop $R2
33751
a8672a4a3a13 installer: Fix CheckSHA1Sum restoring the stack - this was broken in 51473787ff4f.
Daniel Atallah <datallah@pidgin.im>
parents: 33669
diff changeset
1323 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
1324 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
1325 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
1326 !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
1327

mercurial