1
0
mirror of https://git.tartarus.org/simon/putty.git synced 2025-01-25 01:02:24 +00:00

Batch of miscellaneous tweaks to the Windows installer:

- Now we've fixed `win-versioninfo', choose some sensible outcomes from
   the installer's comparisons of binary version numbers. Also, give the
   installer _itself_ a matching binary version.
   In particular, without this change, it would not have been possible
   to downgrade PuTTY -- it would have silently left the "newer" files in
   place. Now it will make some fuss, but permit it.
 - Also remove descriptions from shortcuts, on the grounds that the
   binaries have embedded descriptions now. (Although I've not checked
   whether those are actually visible in the Start Menu.)
 - At the request of various people (e.g., PJB), add flags so that if
   files are in use at the time the (un)installer is run, replacement is
   deferred to the next restart. (The user may be prompted to restart,
   which isn't ideal; see comments).
   This is supposed to make centrally-pushed silent upgrades more robust.
 - Note some limitations of the installer.

[originally from svn r6585]
This commit is contained in:
Jacob Nevins 2006-02-27 22:27:49 +00:00
parent f9c1d0acf8
commit 341171d187
2 changed files with 35 additions and 26 deletions

View File

@ -67,8 +67,7 @@ orders them correctly with respect to releases):
- putty/LATEST.VER - putty/LATEST.VER
The Windows installer script (_three_ times, on consecutive lines, The Windows installer script (_four_ times, on consecutive lines):
and again in a subsequent comment):
- putty/windows/putty.iss - putty/windows/putty.iss

View File

@ -1,26 +1,22 @@
; -*- no -*- ; -*- no -*-
; putty.iss ; $Id$
; ;
; -- Inno Setup installer script for PuTTY and its related tools. ; -- Inno Setup installer script for PuTTY and its related tools.
; ;
; TODO for future releases: ; TODO for future releases:
; ;
; - It might be nice to have an option to add PSCP, Plink and PSFTP to ; - It might be nice to have an option to add PSCP, Plink and PSFTP to
; the PATH. This is probably only practical on NT-class systems; I ; the PATH. See wish `installer-addpath'.
; believe doing this on 9x would require mucking around with
; AUTOEXEC.BAT.
; ;
; - Maybe a "custom" installation might be useful? Hassle with icons, ; - Maybe a "custom" installation might be useful? Hassle with
; though. ; UninstallDisplayIcon, though.
[Setup] [Setup]
AppName=PuTTY AppName=PuTTY
AppVerName=PuTTY version 0.58 AppVerName=PuTTY version 0.58
VersionInfoTextVersion=Release 0.58 VersionInfoTextVersion=Release 0.58
AppVersion=0.58 AppVersion=0.58
;FIXME -- enable this when we've got it going for individual EXEs too VersionInfoVersion=0.58.0.0
; and are committed to the version numbering scheme.
;VersionInfoVersion=0.58.0.0
AppPublisher=Simon Tatham AppPublisher=Simon Tatham
AppPublisherURL=http://www.chiark.greenend.org.uk/~sgtatham/putty/ AppPublisherURL=http://www.chiark.greenend.org.uk/~sgtatham/putty/
AppReadmeFile={app}\README.txt AppReadmeFile={app}\README.txt
@ -33,25 +29,37 @@ Compression=zip/9
AllowNoIcons=yes AllowNoIcons=yes
[Files] [Files]
Source: "putty.exe"; DestDir: "{app}" ; We flag all files with "restartreplace" et al primarily for the benefit
Source: "pageant.exe"; DestDir: "{app}" ; of unattended un/installations/upgrades, when the user is running one
Source: "puttygen.exe"; DestDir: "{app}" ; of the apps at a time. Without it, the operation will fail noisily in
Source: "pscp.exe"; DestDir: "{app}" ; this situation.
Source: "psftp.exe"; DestDir: "{app}" ; This does mean that the user will be prompted to restart their machine
Source: "plink.exe"; DestDir: "{app}" ; if any of the files _were_ open during installation (or, if /VERYSILENT
Source: "website.url"; DestDir: "{app}" ; is used, the machine will be restarted automatically!). The /NORESTART
Source: "..\doc\putty.hlp"; DestDir: "{app}" ; flag avoids this.
Source: "..\doc\putty.cnt"; DestDir: "{app}" ; It might be nicer to have a "no worries, replace the file next time you
Source: "..\LICENCE"; DestDir: "{app}" ; reboot" option, but the developers have no interest in adding one.
Source: "..\README.txt"; DestDir: "{app}"; Flags: isreadme ; NB: apparently, using long (non-8.3) filenames with restartreplace is a
; bad idea. (Not that we do.)
Source: "putty.exe"; DestDir: "{app}"; Flags: promptifolder replacesameversion restartreplace uninsrestartdelete
Source: "pageant.exe"; DestDir: "{app}"; Flags: promptifolder replacesameversion restartreplace uninsrestartdelete
Source: "puttygen.exe"; DestDir: "{app}"; Flags: promptifolder replacesameversion restartreplace uninsrestartdelete
Source: "pscp.exe"; DestDir: "{app}"; Flags: promptifolder replacesameversion restartreplace uninsrestartdelete
Source: "psftp.exe"; DestDir: "{app}"; Flags: promptifolder replacesameversion restartreplace uninsrestartdelete
Source: "plink.exe"; DestDir: "{app}"; Flags: promptifolder replacesameversion restartreplace uninsrestartdelete
Source: "website.url"; DestDir: "{app}"; Flags: restartreplace uninsrestartdelete
Source: "..\doc\putty.hlp"; DestDir: "{app}"; Flags: restartreplace uninsrestartdelete
Source: "..\doc\putty.cnt"; DestDir: "{app}"; Flags: restartreplace uninsrestartdelete
Source: "..\LICENCE"; DestDir: "{app}"; Flags: restartreplace uninsrestartdelete
Source: "..\README.txt"; DestDir: "{app}"; Flags: isreadme restartreplace uninsrestartdelete
[Icons] [Icons]
Name: "{group}\PuTTY"; Filename: "{app}\putty.exe"; Comment: "SSH, Telnet and Rlogin client"; Name: "{group}\PuTTY"; Filename: "{app}\putty.exe"
Name: "{group}\PuTTY Manual"; Filename: "{app}\putty.hlp" Name: "{group}\PuTTY Manual"; Filename: "{app}\putty.hlp"
Name: "{group}\PuTTY Web Site"; Filename: "{app}\website.url" Name: "{group}\PuTTY Web Site"; Filename: "{app}\website.url"
Name: "{group}\PSFTP"; Filename: "{app}\psftp.exe"; Comment: "Command-line interactive SFTP client" Name: "{group}\PSFTP"; Filename: "{app}\psftp.exe"
Name: "{group}\PuTTYgen"; Filename: "{app}\puttygen.exe"; Comment: "PuTTY SSH key generation utility" Name: "{group}\PuTTYgen"; Filename: "{app}\puttygen.exe"
Name: "{group}\Pageant"; Filename: "{app}\pageant.exe"; Comment: "PuTTY SSH authentication agent" Name: "{group}\Pageant"; Filename: "{app}\pageant.exe"
Name: "{commondesktop}\PuTTY"; Filename: "{app}\putty.exe"; Tasks: desktopicon\common Name: "{commondesktop}\PuTTY"; Filename: "{app}\putty.exe"; Tasks: desktopicon\common
Name: "{userdesktop}\PuTTY"; Filename: "{app}\putty.exe"; Tasks: desktopicon\user Name: "{userdesktop}\PuTTY"; Filename: "{app}\putty.exe"; Tasks: desktopicon\user
; Putting this in {commonappdata} doesn't seem to work, on 98SE at least. ; Putting this in {commonappdata} doesn't seem to work, on 98SE at least.
@ -76,4 +84,6 @@ Root: HKCR; Subkey: "PuTTYPrivateKey\shell\edit\command"; ValueType: string; Val
[UninstallRun] [UninstallRun]
; -cleanup-during-uninstall is an undocumented option that tailors the ; -cleanup-during-uninstall is an undocumented option that tailors the
; message displayed. ; message displayed.
; XXX: it would be nice if this task weren't run if a silent uninstall is
; requested, but "skipifsilent" is disallowed.
Filename: "{app}\putty.exe"; Parameters: "-cleanup-during-uninstall"; RunOnceId: "PuTTYCleanup"; StatusMsg: "Cleaning up saved sessions etc (optional)..." Filename: "{app}\putty.exe"; Parameters: "-cleanup-during-uninstall"; RunOnceId: "PuTTYCleanup"; StatusMsg: "Cleaning up saved sessions etc (optional)..."