SymphonyElectron/installer/mac
2023-07-13 16:25:46 +07:00
..
background.png SDA-2016: fix simplified installer issues (#986) 2020-05-06 13:16:20 +05:30
install_instructions_mac.md feat: SDA-2846, SDA-2847: add support for context origin url in installer (#1170) 2021-01-08 23:30:05 +05:30
intro.html SDA-4015 Adding space-line in macOS installer intro 2023-01-12 10:46:19 +01:00
postinstall.sh SDA-4223: Add new option to overwrite auto-update pmp 2023-07-13 16:25:46 +07:00
preinstall.sh SDA-1062: warn users before closing running app (#972) 2020-04-21 11:18:27 +05:30
README.md Python is needed for Mac development (#1370) 2022-04-01 09:54:11 +02:00
symphony-mac-packager.pkgproj SDA-3589 Ability to install SDA for local user only (#1468) 2022-08-08 13:49:58 +02:00

Advanced Mac Installer

Overview

Using Packages, we can build a .pkg file for an existing app (.app). The tool allows us to customise the installation procedure to capture the admin entered values from /tmp/sym_settings.txt and /tmp/sym_permissions.txt

Pre-requisites

Build Process

Once we have Packages installed, we'll just need to run the following command which should take care of creating the .pkg build for us.

packagesbuild -v installer/mac/symphony-mac-packager.pkgproj

The above command creates the build 'Symphony.pkg' and places it into the directory installer/mac/build relative to the project root.

Note that the packages project file 'symphony-mac-packager.pkgproj' contains link to the pre install and the post install scripts both of which are relative to 'symphony-mac-packager.pkgproj'.

More command line documentation here

Implementation Details

  • Pre installation script checks to see if the version we are installing is higher than the already installed version. If the installed version is lower, it deletes the installed version.
  • Post installation script reads data from the temp files and replaces the values in the 'Symphony.config' file in the installed app

Known Issues

  • During installation, there is a section called "Destination Select" which is skipped based on the OS and it's settings. This is a known bug.