#!/bin/bash if [ $# -lt 1 ] && [ $# -gt 2 ]; then echo "usage: make-dmg [packagename]" exit 1 fi app_path=$1 package_name=$2 if [ ! -e $app_path ]; then echo "file $app_path not found..." exit 1 fi readonly OS_VERSION=$(uname -r | awk -F. '{print $1}') case $OS_VERSION in "24") readonly OS_X_VERSION="15.0" ;; "23") readonly OS_X_VERSION="14.0" ;; "22") readonly OS_X_VERSION="13.0" ;; "21") readonly OS_X_VERSION="12.0" ;; "20") readonly OS_X_VERSION="11.0" ;; "19") readonly OS_X_VERSION="10.15" ;; "18") readonly OS_X_VERSION="10.14" ;; "17") readonly OS_X_VERSION="10.13" ;; "16") readonly OS_X_VERSION="10.12" ;; "15") readonly OS_X_VERSION="10.11" ;; "14") readonly OS_X_VERSION="10.10" ;; "13") readonly OS_X_VERSION="10.9" ;; "10") readonly OS_X_VERSION="10.6" ;; "11") readonly OS_X_VERSION="10.7" ;; "12") readonly OS_X_VERSION="10.8" ;; *) echo "ERROR: Unknown OS X version." exit -1 ;; esac if [ -n "$package_name" ]; then echo "Using package name: $package_name " else echo "No package name provided." exit 1 fi root_path=`dirname $app_path` name=`basename $app_path` if [ -e $root_path/CASA ]; then echo "cannot create dmg folder $root_path/CASA (it already exists)" exit 1 fi #( cd $root_path/CASA && ln -s /Applications ) if [ -e $package_name ]; then echo "output file ($package_name) already exists" exit 1 fi mkdir $root_path/CASA mv $app_path $root_path/CASA ( cd $root_path/CASA && curl -s -o README.html https://casa.nrao.edu/installMacOS.shtml ) hdiutil create -srcfolder $root_path/CASA -volname $package_name $root_path/c1 hdiutil convert -format UDRW -o $root_path/c2 $root_path/c1.dmg && rm $root_path/c1.dmg #open c2.dmg echo echo "Fix the Finder window of the CASA disk image (icon size and position)" echo "and then run this command:" hdiutil convert -format UDBZ -o $package_name $root_path/c2.dmg #osascript -e 'tell application "Finder" to activate' rm $root_path/c2.dmg # Try to detach the volume if it still mounted echo "Detaching /Volumes/$package_name" hdiutil detach /Volumes/$package_name || true