#!/bin/bash # Create a complete OS .dmg file (it needs the Apple Developers Tools installed) # usage: # pkg-create.sh # CONTENTS=$1 shift NAME=$1 shift VERSION=$1 shift VENDOR=$1 PKGID="$VENDOR.$NAME-$VERSION" # unused pkg-info entries so far # # CFBundleExecutable # $NAME # CFBundleSignature # ???? # # Need the .plist file in order for the packagemaker to create a package which the # pkgutil --packages later on would return an entry about. pkgutil can then --unlink # and --forget about the package nicely. # cat > "$CONTENTS.plist" < CFBundleDevelopmentRegion en CFBundleIdentifier $PKGID CFBundleInfoDictionaryVersion 6.0 CFBundleName $NAME CFBundlePackageType APPL CFBundleShortVersionString $VERSION CFBundleVersion $VERSION PINFO packagemaker=/Developer/Applications/Utilities/PackageMaker.app/Contents/MacOS/PackageMaker $packagemaker \ --id "$PKGID" \ --info "$CONTENTS.plist" \ --root "$CONTENTS" \ --target 10.5 \ --out "$CONTENTS".pkg hdiutil create "$CONTENTS.dmg" \ -format UDZO -ov \ -volname "$NAME $VERSION" \ -srcfolder $CONTENTS.pkg