mirror of
https://github.com/chidiwilliams/buzz.git
synced 2026-03-14 14:45:46 +01:00
88 lines
No EOL
2.8 KiB
Text
88 lines
No EOL
2.8 KiB
Text
; Script generated by the Inno Setup Script Wizard.
|
|
; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!
|
|
|
|
#define AppName "Buzz"
|
|
#define AppExeName "Buzz.exe"
|
|
#define AppIconPath "assets\buzz.ico"
|
|
#define AppSourcePath "dist\Buzz\*"
|
|
#define OutputDir "dist"
|
|
#define AppRegKey "Software\Buzz"
|
|
|
|
#define VersionFile FileRead(FileOpen("buzz\__version__.py"))
|
|
#define AppVersion Copy(VersionFile, Pos('VERSION = "', VersionFile) + 11, 5)
|
|
|
|
[Setup]
|
|
; NOTE: The value of AppId uniquely identifies this application. Do not use the same AppId value in installers for other applications.
|
|
; (To generate a new GUID, click Tools | Generate GUID inside the IDE.)
|
|
AppId={{574290A2-EF7C-4845-85F3-BFF2F011A580}
|
|
AppName={#AppName}
|
|
AppVersion={#AppVersion}
|
|
DefaultDirName={autopf}\{#AppName}
|
|
DisableProgramGroupPage=yes
|
|
; Uncomment the following line to run in non administrative install mode (install for current user only.)
|
|
;PrivilegesRequired=lowest
|
|
PrivilegesRequiredOverridesAllowed=dialog
|
|
OutputDir={#OutputDir}
|
|
OutputBaseFilename={#AppName}-{#AppVersion}-windows
|
|
SetupIconFile={#AppIconPath}
|
|
DiskSpanning=yes
|
|
Compression=lzma
|
|
SolidCompression=yes
|
|
WizardStyle=modern
|
|
|
|
[Languages]
|
|
Name: "english"; MessagesFile: "compiler:Default.isl"
|
|
|
|
[Tasks]
|
|
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked
|
|
|
|
[Files]
|
|
Source: {#AppSourcePath}; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
|
|
; NOTE: Don't use "Flags: ignoreversion" on any shared system files
|
|
|
|
[Icons]
|
|
Name: "{autoprograms}\{#AppName}"; Filename: "{app}\{#AppExeName}"
|
|
Name: "{autodesktop}\{#AppName}"; Filename: "{app}\{#AppExeName}"; Tasks: desktopicon
|
|
|
|
[Run]
|
|
Filename: "{app}\{#AppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(AppName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent
|
|
|
|
[Registry]
|
|
Root: HKCU; Subkey: "{#AppRegKey}"
|
|
|
|
[Code]
|
|
procedure DeleteFileOrFolder(FilePath: string);
|
|
begin
|
|
if FileExists(FilePath) then
|
|
begin
|
|
DeleteFile(FilePath);
|
|
end
|
|
else if DirExists(FilePath) then
|
|
begin
|
|
DelTree(FilePath, True, True, True);
|
|
end;
|
|
end;
|
|
|
|
procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
|
|
begin
|
|
if CurUninstallStep = usPostUninstall then
|
|
begin
|
|
if RegKeyExists(HKEY_CURRENT_USER, '{#AppRegKey}') then
|
|
if MsgBox('Do you want to delete Buzz settings and saved files?', mbConfirmation, MB_YESNO) = IDYES
|
|
then
|
|
begin
|
|
RegDeleteKeyIncludingSubkeys(HKEY_CURRENT_USER, '{#AppRegKey}');
|
|
// Remove model and cache directories
|
|
DeleteFileOrFolder(ExpandConstant('{localappdata}\Buzz'));
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
procedure CurStepChanged(CurStep: TSetupStep);
|
|
begin
|
|
if CurStep = ssInstall then
|
|
begin
|
|
DeleteFileOrFolder(ExpandConstant('{app}\Buzz.exe'));
|
|
DeleteFileOrFolder(ExpandConstant('{app}\_internal'));
|
|
end;
|
|
end; |