Tengo un script que genera un archivo dmg desde mi paquete de aplicaciones. Esto se genera cada noche desde nuestro repositorio de subversión.
Sería interesante poder configurar cosas como el tamaño de la ventana del DMG, la imagen de fondo, etc, directamente desde el script. Actualmente la única forma que conozco de hacerlo es usando osascript y llamando a la funcionalidad applescript de Finder.
El problema es que este script se ejecuta desde crontab, por lo que no hay ninguna sesión gráfica abierta - obviamente nunca encontrará un Finder abierto.
He copiado este fragmento de aquí: http://asmaloney.com/2013/07/howto/packaging-a-mac-os-x-application-using-a-dmg/
# tell the Finder to resize the window, set the background,
# change the icon size, place the icons in the right position, etc.
echo '
tell application "Finder"
tell disk "'${VOL_NAME}'"
open
set current view of container window to icon view
set toolbar visible of container window to false
set statusbar visible of container window to false
set the bounds of container window to {400, 100, 920, 440}
set viewOptions to the icon view options of container window
set arrangement of viewOptions to not arranged
set icon size of viewOptions to 72
set background picture of viewOptions to file ".background:'${DMG_BACKGROUND_IMG}'"
set position of item "'${APP_NAME}'.app" of container window to {160, 205}
set position of item "Applications" of container window to {360, 205}
close
open
update without registering applications
delay 2
end tell
end tell
' | osascript
Entonces, ¿hay alguna forma de lanzar el finder sin que haya una sesión gráfica activa abierta (es decir, alguien conectado a la máquina)? ¿O hay una manera de realizar lo mismo, sin usar applescript y Finder?