I recently started testing some of our existing software on the latest version of macOS Sierra (10.12.3) and ran into an issue with the TI-SmartView CE emulator software for Mac that was a result of a change Texas Instruments had made to the software installer that wasn't communicated and is one somewhat buried line in their software installation and activation knowledge base article. See the details below.

The Problem

When TI-SmartView CE is installed via its install PKG, a deployment.properties file gets created in /Library/Application Support/TI-SmartView CE 84/res/. This file was essentially a template in order to automatically activate a perpetual serial number when the software was launched for the first time. As a result, you could run the TI-SmartView PKG installer and then install a separately packaged deployment.properties file to this directory so that when a user launched the application for the first time it became activated.

However, in the most recent version of the software while the deployment.properties file still gets created through the installer in the directory specified above, the PKG installer as part of its install process actively looks for a deployment.properties file in the same directory as the PKG installer.

The Solution

Rather than copy the deployment.properties file to the JSS's default copy and install location /Library/Application Support/JAMF/Downloads and remove it afterward, I created a PKG installer in Composer and put both the standard TI-SmartView CE install PKG and the deployment.properties file in /private/tmp/

I created a postinstall script to log the install and remove both files afterward.

#!/bin/sh
## postinstall

INSTALLER="/private/tmp/TI-SmartView-CE-84-5.2.1.283.pkg"
LICENSE="/private/tmp/deployment.properties"
LOG="/Library/Logs/TMSTech/TI-SmartViewInstall.log"

writelog () {
    /bin/echo $(date) "${1}" >> "$LOG"
}

removeallfiles () {
    rm "$INSTALLER"
    if [ $? = 0 ]; then
        writelog "TI-SmartView installer deletion successful!"
    else
        writelog "TI-SmartView installer deletion failed."
    fi

    rm "$LICENSE"
    if [ $? = 0 ]; then
        writelog "TI-SmartView license deletion successful!"
    else
        writelog "TI-SmartView license deletion failed."
    fi
}

if [ -f "$INSTALLER" ] && [ -f "$LICENSE" ]; then
    writelog "CHECK: TI-SmartView installer and deployment.properities detected. Installing ..."

    sudo installer -pkg "$INSTALLER" -target /

    if [ $? = 0 ]; then
        writelog "TI-SmartView installation successful!"
        removeallfiles
    else
        writelog "TI-SmartView installation failed."
        exit 1
    fi
else
    writelog "ERROR: TI-SmartView installer and/or deployment.properties file not detected."
    exit 1
fi

exit

Hope this is helpful for other people who use the software as well.