mac.customize-dmg.applescript.vtl Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of javapackager Show documentation
Show all versions of javapackager Show documentation
Hybrid Maven/Gradle plugin to package Java applications as native Windows, Mac OS X or GNU/Linux executables and create installers for them
The newest version!
-- credits: https://github.com/create-dmg/create-dmg
on run (volumeName)
tell application "Finder"
tell disk (volumeName as string)
open
set theXOrigin to ${info.macConfig.windowX}
set theYOrigin to ${info.macConfig.windowY}
set theWidth to ${info.macConfig.windowWidth}
set theHeight to ${info.macConfig.windowHeight}
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 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 ${info.macConfig.iconSize}
set text size to ${info.macConfig.textSize}
set arrangement to not arranged
end tell
set background picture of opts to file ".background:background.png"
-- Positioning
set position of item "${info.appFile.name}" to {${info.macConfig.iconX}, ${info.macConfig.iconY}}
-- Hiding
set the extension hidden of item "${info.appFile.name}" to true
-- Application
set position of item "Applications" to {${info.macConfig.appsLinkIconX}, ${info.macConfig.appsLinkIconY}}
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