; 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.11" #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;