Estoy intentando configurar mi pc hackintosh para que se encienda cada vez que salga el sol y para que ejecute iTunes al arrancar el MacOS usando bash o AppleScript sin aplicaciones de terceros. He llegado a un punto en mi script en el que necesito ayuda para que iTunes se ejecute automáticamente con el arranque del sistema sólo después de la hora de salida del sol, pero no con cualquier otro arranque o reinicio. Para ello tengo la variable de la hora del amanecer en bash script y me gustaría intentar enlazarlo con el trabajo cron o encontrar cualquier otra solución para ejecutar iTunes cada vez que cambie la hora del amanecer.
Aquí está mi código script, que actualiza la hora del amanecer desde el sitio web específico cada hora y funciona bien con el despertar / encender mi hackintosh a la hora del amanecer:
#!/bin/bash
# Downloading webpage which contains the current sunrise time for my timezone
curl -L timezone.ru/suncalc.php?tid=193 > ~/sunrise-time &&
# Parsing the sunrise time stamp from the downloaded file
sunrise=$(grep 'Восход</b>: ' ~/sunrise-time | grep -o '[0-9]:[0-9][0-9]:[0-9][0-9]') &&
# Setting mac wake-up/turinng-on time reading variable from the previous line
echo "SYSTEMPASSWORD" | sudo -S /usr/bin/pmset -a repeat wakeorpoweron MTWRFSU $sunrise
Todo lo que necesito ahora, como dije, es ejecutar iTunes sólo cuando mi hackintosh arranca después de la hora del amanecer, pero no necesito ejecutarlo en ningún otro momento cuando el sistema arranca o se reinicia.
Intenté utilizar lo ofrecido por l0b0 at
con algunos atributos pero sin suerte, tal vez no entendí el uso correcto del mismo.
Gracias por su ayuda.
2 votos
Si está dispuesto a considerar una herramienta de terceros, Power Manager puede encender su Mac al amanecer y ejecutar AppleScripts.
1 votos
¿Puede añadir el
at
comando que has probado?0 votos
No estoy seguro de haber utilizado los argumentos correctos y de que la ejecución de comandos 'at' esté activada por defecto en MacOS. ¿Es posible dirigir la salida con la variable $ al comando 'at', quizás añadiendo algunos minutos de retraso después de la hora de salida del sol? Gracias.
0 votos
Dudo que exista esa opción en las últimas versiones de Power Management
0 votos
Probablemente configuraría mi Mac para que arrancara todas las mañanas a las 4 (o a la hora que sea ligeramente anterior a la salida del sol más temprana del año), haría que se ejecutara una tarea cron/launchd cada 10 minutos para comprobar si ha pasado el amanecer y lanzaría iTunes desde ahí. La versión de lujo de la tarea se reprogramaría automáticamente para el día siguiente, por lo que no sería necesario ejecutarla cada 10 minutos.
1 votos
Además, ¿supone que
at
o PowerManager no funcionan, ¿o lo has intentado?