Files
raven/dist/install/windows/x64/standalone.iss
2021-12-28 20:21:42 +00:00

81 lines
3.8 KiB
Plaintext

; Basic preconfigured ayanova installer for super easy config
; single user or lan only, built in postgres
; external to lan requires different config
#define MyAppName "AyaNova"
#define MyAppVersion "8.0.0-beta.0.8"
#define MyAppPublisher "Ground Zero Tech-Works, Inc."
#define MyAppURL "https://ayanova.com/"
#define MyAppLauncherExeName "ayanova-launcher.exe"
[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={{B2BB79DB-0690-497C-B92B-955F7B468429}
AppName={#MyAppName}
AppVersion={#MyAppVersion}
;AppVerName={#MyAppName} {#MyAppVersion}
AppPublisher={#MyAppPublisher}
AppPublisherURL={#MyAppURL}
AppSupportURL={#MyAppURL}
AppUpdatesURL={#MyAppURL}
DefaultDirName={autopf}\ayanova
DisableProgramGroupPage=yes
LicenseFile=C:\data\code\raven\dist\assets\license.rtf
OutputDir=C:\data\code\raven\dist\installers
OutputBaseFilename=ayanova-windows-x64-single-setup
SetupIconFile=C:\data\code\raven\graphics\logo.ico
Compression=lzma
SolidCompression=yes
WizardStyle=modern
ArchitecturesInstallIn64BitMode=x64
ArchitecturesAllowed=x64
;Force user to install to set location so that they don't break the backup and stuff
;this prevents users from randomly picking a weird location and then requiring support to edit the config.json file to set the backup path etc
DisableDirPage=yes
AlwaysShowDirOnReadyPage=yes
[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked
[Files]
Source: "C:\data\code\raven\dist\win-x64\ayanova\standalone\AyaNova.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\data\code\raven\dist\win-x64\ayanova\standalone\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
Source: "C:\data\code\raven\dist\win-x64\launcher\config.json"; DestDir: "{app}"; Flags: ignoreversion confirmoverwrite
Source: "C:\data\code\raven\dist\win-x64\launcher\*"; DestDir: "{app}\launcher"; Flags: ignoreversion recursesubdirs createallsubdirs
Source: "C:\data\code\raven\dist\win-x64\postgres-standalone\*"; DestDir: "{app}\local-postgres"; Permissions: users-modify;Flags: ignoreversion recursesubdirs createallsubdirs
Source: "C:\data\code\raven\dist\win-x64\postgres-empty-database\*"; DestDir: "{commonappdata}\ayanova\database"; Permissions: users-modify; Flags: ignoreversion recursesubdirs createallsubdirs onlyifdoesntexist uninsneveruninstall
[Dirs]
Name: "{app}\.local-chromium";Permissions: users-modify;Flags: uninsalwaysuninstall
Name: "{commonappdata}\ayanova";Permissions: users-modify;Flags: uninsneveruninstall
Name: "{commonappdata}\ayanova\logs";Permissions: users-modify;Flags: uninsneveruninstall
[UninstallDelete]
Type: filesandordirs; Name: "{app}\.local-chromium\*"
[Icons]
Name: "{autoprograms}\{#MyAppName}"; Filename: "{app}\launcher\ayanova-launcher.exe";
Name: "{autodesktop}\{#MyAppName}"; Filename: "{app}\launcher\ayanova-launcher.exe"; Tasks: desktopicon
[Run]
Filename: "{app}\launcher\ayanova-launcher.exe"; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent
[Code]
procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
begin
if CurUninstallStep = usPostUninstall then
begin
if MsgBox('Do you want to delete all AyaNova database, attachment and log files?', mbConfirmation, MB_YESNO or MB_DEFBUTTON2) = IDYES then
begin
if MsgBox('Are you sure you want to **PERMANENTLY** delete all AyaNova data files?', mbConfirmation, MB_YESNO or MB_DEFBUTTON2) = IDYES then
begin
DelTree(ExpandConstant('{commonappdata}\ayanova'), True, True, True);
end;
end;
end;
end;