26 votos

Pueden Mac App Store instala y actualizaciones de ser automatizado?

¿Cómo puedo secuencia de comandos de instalación y actualización de aplicaciones de la Mac App Store? Prefiero herramientas de línea de comandos, pero AppleScript o de alguna otra API, sería suficiente.

Pertinentes de piezas del puzzle:

  • installer: nota especialmente la -store de la bandera que se utiliza para simular la App Store instala el paquete para desarrolladores.
  • systemupdate: capaz de manejar las actualizaciones de apps de Apple, banderas -i instala y -a dice que para instalar todas las actualizaciones disponibles

12voto

Oskar Puntos1242

Hasta hace poco, la respuesta fue que no, pero no son de código abierto esfuerzos para replicar la Mac App Store en una línea de comando herramienta basada en:

Para instalar:

brew install argon/mas/mas 

Una vez colocado, puede actualizar todas las aplicaciones que están disponibles con:

mas upgrade

Si usted no quiere a la confianza de software de terceros con tu ID de Apple, también se puede automatizar su interfaz de usuario y puede almacenar el nombre de la cuenta y la contraseña usando el llavero.

La solución de Apple para los no-Almacén de la Aplicación de parches de seguridad y actualizaciones, es ejecutar el softwareupdate herramienta desde la línea de comandos para actualizar todo el software que Apple tiene la intención de ser instalado sin la intervención del usuario o pasando por la Tienda de aplicaciones de interfaz de usuario.

Actualmente en Lion y Mountain Lion - esto significa que el Mac llegará a un local de OS X server que es el almacenamiento en caché de descargas de las actualizaciones del sistema y el software instalado fuera de la App store. Si usted no tiene un local del servidor de actualización de software, por supuesto, descargar los archivos directamente desde Apple.

Para Mountain Lion 10.8.2 y menor, - todo lo que sigue, viene a través de la App Store - para que el software de Apple como las actualizaciones de OS X es totalmente secuencias de comandos uso de esta herramienta para las actualizaciones y no de la App Store actualiza sólo.

Lo que no está de secuencias de comandos (sin embargo, o tal vez nunca) son aplicaciones que se instalan desde la App Store como Xcode y las Páginas y aplicaciones de terceros. Esto significa que usted simplemente no puede tener una herramienta para la actualización de todo el software sin necesidad de abrir la App de la app Store y la introducción de una contraseña en la pantalla de interfaz de usuario.

Lo que puedes hacer es descargar las aplicaciones de una sola vez y, a continuación, copiar la aplicación a múltiples macs tan largo como el ID de Apple utiliza para descargar la primera copia de la aplicación también se utiliza en todos los equipos que va a ejecutar la aplicación.

Sé de varias instituciones que comprar una copia de cada aplicación para un laboratorio de 20 computadoras para obtener una licencia para cada asiento, pero, a continuación, implementar un archivo a todos los Macs de modo que una vez que uno se descarga de la actualización se lleva a cabo, con una herramienta como el Apple Remote Desktop o Caspar o una casa hecha de herramienta como scp o rsync se utiliza para mover la versión actualizada de la aplicación para todos los Macs en el laboratorio.

Si usted va la ruta de individuo ID de Apple para cada máquina, usted no será capaz de secuencia de comandos de la instalación de las actualizaciones de la Aplicación, ya que cada pedirá la contraseña para cada cuenta, a menos que usted se sienta cómodo sabiendo que todas las contraseñas y la realización de secuencias de comandos de interfaz de usuario donde AppleScript puede introducir el nombre de usuario correcto y la contraseña a través de programación y, a continuación, haga clic en el botón para comenzar el proceso de descarga para cada máquina actualizaciones. La forma en que las aplicaciones de la app store son de código firmado hace que sea difícil de diapositivas en una actualización sin invalidar el paquete o alguna manera de ingeniería inversa / jailbreak toda la app store proceso y dejando de lado el flujo normal de dejar el app installer hacer su trabajo.

5voto

argon Puntos141

Esto es posible mediante el uso de la fuente abierta mas utilidad de línea de comandos:

mas-cli

Una simple interfaz de línea de comandos para la Mac App Store. Diseñado para secuencias de comandos y automatización.

Divulgación: yo soy el creador de mas

3voto

TrinitronX Puntos515

Es posible que desee comprobar fuera de brotar envoltura y solista. Usted puede instalar OSX paquetes de un uri mediante la dmg_package proveedor. Echa un vistazo a algunas de las recetas en brotar para citar algunos ejemplos.

Para actualizar automáticamente las actualizaciones de seguridad, uso de la pivotal_workstation::osx_updates receta. (Tenga en cuenta que este utiliza softwareupdate)

Para Homebrew aplicaciones, brew el proveedor tiene un upgrade de acción.

Que yo sepa, no hay ningún proveedor de actualización automática de aplicaciones de la App Store. Sin embargo, usted puede ser capaz de utilizar el construido en función de actualización automática de algunas aplicaciones dentro de un execute o bash proveedor de bloque. Usted también puede ser capaz de utilizar AppleScript dentro de una receta del chef para automatizar la Aplicación de la app Store. Para algunos ejemplos de la utilización en línea de AppleScript, echa un vistazo a la brotar-osx-configuración::function_keys receta. (Algunos otros ejemplos: sprout-osx-configuración::remove_expose_keyboard_shortcuts, sprout-osx-configuración::set_finder_show_user_home_in_sidebar)

1voto

Alan Storm Puntos506

No estoy seguro acerca de un AppleScript tipo de solución, pero hay herramientas para la gestión de un gran número de sistemas OS X.

El que estoy más familiarizado con es radmind (que comenzó en UMich para la gestión de sus laboratorios (antiguo sitio)).

radmind es realmente orientados hacia la implementación de un estándar de OS plantilla a un montón de máquinas y mantenerlo actualizado, por lo que para un sitio pequeño, puede ser un poco demasiado trabajo. El flujo de trabajo básico es:

  • Hacer una limpia "construir la máquina" e instalar radmind y todo su software estándar.
  • Crear radmind las transcripciones de que construir la máquina.
  • Instalar radmind en los equipos cliente y pull/aplicar las transcripciones para instalarlos.
  • Para las actualizaciones, actualizar el servidor de compilación y hacer una actualización/revisión de la transcripción, a continuación, aplicar a los clientes.

...Por lo que en sentido estricto no es automatizar la instalación, pero usted sólo tiene que hacer el interactivo poco una vez y, a continuación, distribuir el sistema operativo actualizado a sus clientes.

Obviamente, esto funciona mejor si usted puede instalar un conjunto estándar de software en todas partes - Si sus clientes son especiales y únicos, esto podría no ser una gran solución.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by: