| 1 | ; -*- no -*-\r |
| 2 | ; $Id$\r |
| 3 | ;\r |
| 4 | ; -- Inno Setup installer script for PuTTY and its related tools.\r |
| 5 | ; Last tested with Inno Setup 5.0.8.\r |
| 6 | ;\r |
| 7 | ; TODO for future releases:\r |
| 8 | ;\r |
| 9 | ; - It might be nice to have an option to add PSCP, Plink and PSFTP to\r |
| 10 | ; the PATH. See wish `installer-addpath'.\r |
| 11 | ;\r |
| 12 | ; - Maybe a "custom" installation might be useful? Hassle with\r |
| 13 | ; UninstallDisplayIcon, though.\r |
| 14 | \r |
| 15 | [Setup]\r |
| 16 | AppName=PuTTY\r |
| 17 | AppVerName=PuTTY version 0.63\r |
| 18 | VersionInfoTextVersion=Release 0.63\r |
| 19 | AppVersion=0.63\r |
| 20 | VersionInfoVersion=0.63.0.0\r |
| 21 | AppPublisher=Simon Tatham\r |
| 22 | AppPublisherURL=http://www.chiark.greenend.org.uk/~sgtatham/putty/\r |
| 23 | AppReadmeFile={app}\README.txt\r |
| 24 | DefaultDirName={pf}\PuTTY\r |
| 25 | DefaultGroupName=PuTTY\r |
| 26 | SetupIconFile=puttyins.ico\r |
| 27 | UninstallDisplayIcon={app}\putty.exe\r |
| 28 | ChangesAssociations=yes\r |
| 29 | ;ChangesEnvironment=yes -- when PATH munging is sorted (probably)\r |
| 30 | Compression=zip/9\r |
| 31 | AllowNoIcons=yes\r |
| 32 | \r |
| 33 | [Files]\r |
| 34 | ; We flag all files with "restartreplace" et al primarily for the benefit\r |
| 35 | ; of unattended un/installations/upgrades, when the user is running one\r |
| 36 | ; of the apps at a time. Without it, the operation will fail noisily in\r |
| 37 | ; this situation.\r |
| 38 | ; This does mean that the user will be prompted to restart their machine\r |
| 39 | ; if any of the files _were_ open during installation (or, if /VERYSILENT\r |
| 40 | ; is used, the machine will be restarted automatically!). The /NORESTART\r |
| 41 | ; flag avoids this.\r |
| 42 | ; It might be nicer to have a "no worries, replace the file next time you\r |
| 43 | ; reboot" option, but the developers have no interest in adding one.\r |
| 44 | ; NB: apparently, using long (non-8.3) filenames with restartreplace is a\r |
| 45 | ; bad idea. (Not that we do.)\r |
| 46 | Source: "putty.exe"; DestDir: "{app}"; Flags: promptifolder replacesameversion restartreplace uninsrestartdelete\r |
| 47 | Source: "pageant.exe"; DestDir: "{app}"; Flags: promptifolder replacesameversion restartreplace uninsrestartdelete\r |
| 48 | Source: "puttygen.exe"; DestDir: "{app}"; Flags: promptifolder replacesameversion restartreplace uninsrestartdelete\r |
| 49 | Source: "pscp.exe"; DestDir: "{app}"; Flags: promptifolder replacesameversion restartreplace uninsrestartdelete\r |
| 50 | Source: "psftp.exe"; DestDir: "{app}"; Flags: promptifolder replacesameversion restartreplace uninsrestartdelete\r |
| 51 | Source: "plink.exe"; DestDir: "{app}"; Flags: promptifolder replacesameversion restartreplace uninsrestartdelete\r |
| 52 | Source: "website.url"; DestDir: "{app}"; Flags: restartreplace uninsrestartdelete\r |
| 53 | Source: "..\doc\putty.chm"; DestDir: "{app}"; Flags: restartreplace uninsrestartdelete\r |
| 54 | Source: "..\doc\putty.hlp"; DestDir: "{app}"; Flags: restartreplace uninsrestartdelete\r |
| 55 | Source: "..\doc\putty.cnt"; DestDir: "{app}"; Flags: restartreplace uninsrestartdelete\r |
| 56 | Source: "..\LICENCE"; DestDir: "{app}"; Flags: restartreplace uninsrestartdelete\r |
| 57 | Source: "README.txt"; DestDir: "{app}"; Flags: isreadme restartreplace uninsrestartdelete\r |
| 58 | \r |
| 59 | [Icons]\r |
| 60 | Name: "{group}\PuTTY"; Filename: "{app}\putty.exe"\r |
| 61 | ; We have to fall back from the .chm to the older .hlp file on some Windows\r |
| 62 | ; versions.\r |
| 63 | Name: "{group}\PuTTY Manual"; Filename: "{app}\putty.chm"; MinVersion: 4.1,5.0\r |
| 64 | Name: "{group}\PuTTY Manual"; Filename: "{app}\putty.hlp"; OnlyBelowVersion: 4.1,5.0\r |
| 65 | Name: "{group}\PuTTY Web Site"; Filename: "{app}\website.url"\r |
| 66 | Name: "{group}\PSFTP"; Filename: "{app}\psftp.exe"\r |
| 67 | Name: "{group}\PuTTYgen"; Filename: "{app}\puttygen.exe"\r |
| 68 | Name: "{group}\Pageant"; Filename: "{app}\pageant.exe"\r |
| 69 | Name: "{commondesktop}\PuTTY"; Filename: "{app}\putty.exe"; Tasks: desktopicon\common\r |
| 70 | Name: "{userdesktop}\PuTTY"; Filename: "{app}\putty.exe"; Tasks: desktopicon\user\r |
| 71 | ; Putting this in {commonappdata} doesn't seem to work, on 98SE at least.\r |
| 72 | Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\PuTTY"; Filename: "{app}\putty.exe"; Tasks: quicklaunchicon\r |
| 73 | \r |
| 74 | [Tasks]\r |
| 75 | Name: desktopicon; Description: "Create a &desktop icon for PuTTY"; GroupDescription: "Additional icons:"; Flags: unchecked\r |
| 76 | Name: desktopicon\common; Description: "For all users"; GroupDescription: "Additional icons:"; Flags: exclusive unchecked\r |
| 77 | Name: desktopicon\user; Description: "For the current user only"; GroupDescription: "Additional icons:"; Flags: exclusive unchecked\r |
| 78 | Name: quicklaunchicon; Description: "Create a &Quick Launch icon for PuTTY (current user only)"; GroupDescription: "Additional icons:"; Flags: unchecked\r |
| 79 | Name: associate; Description: "&Associate .PPK files (PuTTY Private Key) with Pageant and PuTTYgen"; GroupDescription: "Other tasks:"\r |
| 80 | \r |
| 81 | [Registry]\r |
| 82 | Root: HKCR; Subkey: ".ppk"; ValueType: string; ValueName: ""; ValueData: "PuTTYPrivateKey"; Flags: uninsdeletevalue; Tasks: associate\r |
| 83 | Root: HKCR; Subkey: "PuTTYPrivateKey"; ValueType: string; ValueName: ""; ValueData: "PuTTY Private Key File"; Flags: uninsdeletekey; Tasks: associate\r |
| 84 | Root: HKCR; Subkey: "PuTTYPrivateKey\DefaultIcon"; ValueType: string; ValueName: ""; ValueData: "{app}\pageant.exe,0"; Tasks: associate\r |
| 85 | Root: HKCR; Subkey: "PuTTYPrivateKey\shell\open\command"; ValueType: string; ValueName: ""; ValueData: """{app}\pageant.exe"" ""%1"""; Tasks: associate\r |
| 86 | Root: HKCR; Subkey: "PuTTYPrivateKey\shell\edit"; ValueType: string; ValueName: ""; ValueData: "&Edit"; Tasks: associate\r |
| 87 | Root: HKCR; Subkey: "PuTTYPrivateKey\shell\edit\command"; ValueType: string; ValueName: ""; ValueData: """{app}\puttygen.exe"" ""%1"""; Tasks: associate\r |
| 88 | ; Add to PATH on NT-class OS?\r |
| 89 | \r |
| 90 | [UninstallRun]\r |
| 91 | ; -cleanup-during-uninstall is an undocumented option that tailors the\r |
| 92 | ; message displayed.\r |
| 93 | ; XXX: it would be nice if this task weren't run if a silent uninstall is\r |
| 94 | ; requested, but "skipifsilent" is disallowed.\r |
| 95 | Filename: "{app}\putty.exe"; Parameters: "-cleanup-during-uninstall"; RunOnceId: "PuTTYCleanup"; StatusMsg: "Cleaning up saved sessions etc (optional)..."\r |
| 96 | \r |
| 97 | [Messages]\r |
| 98 | ; Since it's possible for the user to be asked to restart their computer,\r |
| 99 | ; we should override the default messages to explain exactly why, so they\r |
| 100 | ; can make an informed decision. (Especially as 95% of users won't need or\r |
| 101 | ; want to restart; see rant above.)\r |
| 102 | FinishedRestartLabel=One or more [name] programs are still running. Setup will not replace these program files until you restart your computer. Would you like to restart now?\r |
| 103 | ; This message is popped up in a message box on a /SILENT install.\r |
| 104 | FinishedRestartMessage=One or more [name] programs are still running.%nSetup will not replace these program files until you restart your computer.%n%nWould you like to restart now?\r |
| 105 | ; ...and this comes up if you try to uninstall.\r |
| 106 | UninstalledAndNeedsRestart=One or more %1 programs are still running.%nThe program files will not be removed until your computer is restarted.%n%nWould you like to restart now?\r |