43 lines
1.1 KiB
Bash
Executable File
43 lines
1.1 KiB
Bash
Executable File
# Copyright: Ankitects Pty Ltd and contributors
|
|
# License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
|
|
|
|
set -e
|
|
|
|
# base folder with Anki.app in it
|
|
dist=$1
|
|
dmg_path=$2
|
|
script_folder=$(dirname $0)
|
|
|
|
if [ -d "/Volumes/Anki" ]
|
|
then
|
|
echo "You already have one Anki mounted, unmount it first!"
|
|
exit 1
|
|
fi
|
|
|
|
echo "bundling..."
|
|
ln -s /Applications $dist/Applications
|
|
mkdir $dist/.background
|
|
cp ${script_folder}/anki-logo-bg.png $dist/.background
|
|
cp ${script_folder}/dmg_ds_store $dist/.DS_Store
|
|
|
|
# create a writable dmg first, and modify its layout with AppleScript
|
|
hdiutil create -attach -ov -format UDRW -fs HFS+ -volname Anki -srcfolder $dist -o /tmp/Anki-rw.dmg
|
|
# announce before making the window appear
|
|
say "applescript"
|
|
open /tmp/Anki-rw.dmg
|
|
sleep 2
|
|
open ${script_folder}/set-dmg-settings.app
|
|
sleep 2
|
|
hdiutil detach "/Volumes/Anki" || (sleep 3; hdiutil detach /Volumes/Anki)
|
|
sleep 1
|
|
if [ -d "/Volumes/Anki" ]
|
|
then
|
|
echo "drive did not detach"
|
|
exit 1
|
|
fi
|
|
|
|
# convert it to a read-only image
|
|
rm -rf $dmg_path
|
|
hdiutil convert /tmp/Anki-rw.dmg -ov -format ULFO -o $dmg_path
|
|
rm -rf /tmp/Anki-rw.dmg $dist
|