67 lines
2.4 KiB
AppleScript
67 lines
2.4 KiB
AppleScript
on run (volumeName)
|
|
tell application "Finder"
|
|
tell disk (volumeName as string)
|
|
open
|
|
|
|
set theXOrigin to @_DMG_WINDOW_X@
|
|
set theYOrigin to @_DMG_WINDOW_Y@
|
|
set theWidth to @_DMG_WINDOW_WIDTH@
|
|
set theHeight to @_DMG_WINDOW_HEIGHT@
|
|
|
|
set theBottomRightX to (theXOrigin + theWidth)
|
|
set theBottomRightY to (theYOrigin + theHeight)
|
|
set dsStore to "\"" & "/Volumes/" & volumeName & "/" & ".DS_STORE\""
|
|
|
|
tell container window
|
|
set current view to icon view
|
|
set toolbar visible to false
|
|
set statusbar visible to false
|
|
set the bounds to {theXOrigin, theYOrigin, theBottomRightX, theBottomRightY}
|
|
set statusbar visible to false
|
|
set position of every item to {theBottomRightX + 100, 100}
|
|
end tell
|
|
|
|
set opts to the icon view options of container window
|
|
tell opts
|
|
set icon size to @_DMG_ICON_SIZE@
|
|
set text size to @_DMG_TEXT_SIZE@
|
|
set arrangement to not arranged
|
|
end tell
|
|
set background picture of opts to file ".background:@CPACK_DMG_BACKGROUND_FILENAME@"
|
|
set position of item "@CPACK_PACKAGE_NAME@.app" to {@_DMG_OBS_X@, @_DMG_OBS_Y@}
|
|
set position of item "Applications" to {@_DMG_APP_LINK_X@, @_DMG_APP_LINK_Y@}
|
|
close
|
|
open
|
|
-- Force saving of the size
|
|
delay 1
|
|
|
|
tell container window
|
|
set statusbar visible to false
|
|
set the bounds to {theXOrigin, theYOrigin, theBottomRightX - 10, theBottomRightY - 10}
|
|
end tell
|
|
end tell
|
|
|
|
delay 1
|
|
|
|
tell disk (volumeName as string)
|
|
tell container window
|
|
set statusbar visible to false
|
|
set the bounds to {theXOrigin, theYOrigin, theBottomRightX, theBottomRightY}
|
|
end tell
|
|
end tell
|
|
|
|
--give the finder some time to write the .DS_Store file
|
|
delay 3
|
|
|
|
set waitTime to 0
|
|
set ejectMe to false
|
|
repeat while ejectMe is false
|
|
delay 1
|
|
set waitTime to waitTime + 1
|
|
|
|
if (do shell script "[ -f " & dsStore & " ]; echo $?") = "0" then set ejectMe to true
|
|
end repeat
|
|
log "waited " & waitTime & " seconds for .DS_STORE to be created."
|
|
end tell
|
|
end run
|