Mac OS Introduction
Introduction
For creating Mac OS packages of the Trust1Connector for a specific environment you need a couple of assets and configuration files. Some of these are hosted on the Cloud and others are included in the packaging repository. This page will describe the difference between what's hosted in the cloud and what's hosted in the git repository.
Cloud assets
In our cloud storage where we host the released assets to create packages you will have 3 'folders'; mac, win and unix. These folders are used to differentiate between the 3 operating systems supported.
To create a Mac OS package all the necessary configs and assets are hosted in the configurations
folder. In a subfolder we created for you, you will find all the assets and configuration files for each version we've released. For example release 3.2.0
can be found in the folder v3.2.0
For each release you will find all necessary assets hosted on the cloud to create a package. These are;
t1c-api
t1c-sandbox-service
t1c-init-se
t1c-api
The t1c-api folder holds a zipfile with the complete Trust1Connector webserver. this includes a prepackaged & optimised JRE that is used to run the webserver.
The JRE included is Java 11LTS.
t1c-sandbox-service
The sandbox service is responsible for the Card communication. this executable needs to be signed with your own code signing certificate.
In this folder you can find a signed and unsigned version of the sandbox-service. The signed version is signed with the Trust1Team code signing certificate.
While packaging we create a copy of the t1c-sandbox-service
file to a custom named executable. This is done because this will then show up with a proper name in the task manager and is easy to determine which process to kill while uninstalling
t1c-ini-se
The t1c-init-se is a jar
file which is executed at installation and runtime to detect whether the current device has a proxy available. When it detects a proxy it will update the configuration of the installation so that the installation will work in the shared environment.
Local assets
When changing name be aware this could break the installation or running of the Trust1Connector, adjust the places where this is used
In the packaging repository there are 2 different types of folders. You have the configuration folders which holds the configuration files per version and per environment and also the files needed to create the dmg
package.
The configuration files can be found in the configurations
folder while the packager script for Mac OS are saved in the _mac
folder.
Almost all of the configuration can be updated freely. The only exception to this are the application.conf
file and the t1c_ks.p12
file. The t1c.conf
can be altered, but must contain a valid registration.apikey
value, and the correct password for the t1c_ks.p12
file that contains the SSL certificate for your custom package.
For the Mac OS Trust1Connector installer you can find the following assets;
3.2.0 (version)
package.bat
package-proxy.bat
package.sh
dev (environment)
macos (OS)
api
application.conf
t1c_ks.p12
t1c.conf
assets
intro.txt
intro_de.txt
intro_fr.txt
intro_nl.txt
logo.png
scripts
api_Info.plist
entitlements.plist
{package-name}.api.plist
{package-name}.grpc.plist
grpc_Info.plist
installer.pkgproj
post_install.sh
pre_install.sh
uninstall.sh
API assets
In this folder you can find all images and text assets to be located in the installer.
The logo.png is the background image of the installer. By default we use an image of 500x500, but this can be customized if desired. A preview of the look and feel of the installer can be seen by opening the installer.pkgproj
with the Packages application you can download from http://s.sudre.free.fr/Software/Packages/about.html.
We do not recommend editing the installer.pkgproj
file we provided for you. Because of the way the installer script works, the files are all copied over from their original destination into the/_mac
folder. Editing the paths configured in the pkgproj
folder will break the packaging script.
The intro*.txt
files contain the text that will displayed in the package installation window, and can be freely edited.
Dialog logo's
For the dialog logo's we require a 1024x1024 format to properly compile the os dialog applications
API scripts
When creating the package you need to provide some parameter such as the application installation folder name and the application name etc. These need to be updated in the scripts files.
api_Info.plist
: The API service information. Can be edited to reflect application and provider information but care should be taken when editing theCFBundleExecutable
andCFBundleName
values; these values are repeated in almost all other files in the script foldercom.t1t.t1c.api.plist
: The API launch agent. This file will be renamed to a name of your choice when running the installation script, but should use the convention of using a reversed Internet domain followed by the application name, all in lowercase. This file also contains installation paths and reflect values defined in almost all other files in the script folder.com.t1t.t1c.grpc.plist
: The Sandbox launch agent. This file will be renamed to a name of your choice when running the installation script, but should use the convention of using a reversed Internet domain followed by the application name, all in lowercase. This file also contains installation paths and reflect values defined in almost all other files in the script folder.entitlements.plist
: This file contains the entitlements necessary for the Mac OS package. Do not alter it, or the packaged application may not function correctly after installation.grpc_Info.plist
: The Sandbox service information. Can be edited to reflect application and provider information but care should be taken when editing theCFBundleExecutable
andCFBundleName
values; these values are repeated in almost all other files in the script folderinstaller.pkgproj
: The script for creating thepkg
installer package. This file also contains installation paths and reflect values defined in almost all other files in the script folder. It is possible to alter the installation folder, but do not edit the file paths referring to assets and scripts, as it will break the packaging.post_install.sh
: The post install script which is run after all the resources have been placed in the installation folder.pre_install.sh
: The script that is run prior to placing the resources in the installation folder. This script ensures that previous installations are correctly removed and killed prior to installing a new version.
Last updated