
Distribuir paquetes personalizados para el Mac
Los dispositivos Apple son compatibles con la instalación inalámbrica de paquetes personalizados sin pasar por App Store. Hay dos formas de distribuir apps internas propias:
Usanr un servicio de gestión de dispositivos
Mediante un sitio web
Usar un servicio de gestión de dispositivos para distribuir apps
Para usar un servicio de gestión de dispositivos, utiliza un manifiesto con los comandos InstallEnterpriseApplication
(archivo de manifiesto o manifiesto integrado) o InstallApplication
(archivo de manifiesto). Es preferible utilizar el comando InstallEnterpriseApplication
porque es compatible con SHA-256 y la fijación de certificados. Para obtener más información, consulta Comandos de gestión de dispositivos.
Utilizar un sitio web para distribuir apps
Crea un paquete de contenido, como la app, las fuentes y los scripts a instalar en el Mac.
Eres tú quien decides cómo diseñar y alojar el sitio web que se utiliza para distribuir estos paquetes. Asegúrate de autenticar a los usuarios y de que se pueda acceder al sitio web desde la intranet o desde internet en función de tus necesidades. Carga el archivo de paquete (con una extensión de nombre de archivo .pkg) en un área de tu sitio web a la que puedan acceder los usuarios autenticados.
Es posible que tengas que configurar tu servidor web para que el paquete se transmita correctamente. En el caso del servidor, añade el tipo MIME a los ajustes de tipos MIME del servicio web:
application/octet-stream pkg
En el caso de internet Information Server (IIS) de Microsoft, utiliza el administrador de IIS para añadir el tipo MIME a la página de propiedades del servidor:
.pkg/octet-stream
Archivo de manifiesto típico para macOS
A continuación puedes ver un ejemplo de un archivo de manifiesto, que es una lista de propiedades XML (archivo .plist). Son obligatorios los siguientes campos:
URL: URL HTTPS completa del paquete
kind: Tiene que definirse en paquete de software
Los siguientes campos son opcionales para la fragmentación:
md5-size: El tamaño de cada fragmento
md5s: Los hashes de MD5 para cada fragmento
sha256-size: El tamaño de cada fragmento
sha256s: Los hashes de SHA-256 para cada fragmento
Archivo de manifiesto de ejemplo para un paquete de Mac
A continuación, un archivo de manifiesto de ejemplo. Ten en cuenta que en los campos para la fragmentación, si se proporciona información de fragmentación SHA-256 y MD5, SHA-256 tendrá preferencia.
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<!-- array of downloads. -->
<key>items</key>
<array>
<dict>
<!-- an array of assets to download -->
<key>assets</key>
<array>
<dict>
<!-- Required. The asset kind. -->
<key>kind</key>
<string>software-package</string>
<!-- Optional. md5 is used here for chunking every 10 MB; Can also use sha256-size. -->
<key>md5-size</key>
<integer>10485760</integer>
<!-- Array of md5 hashes for each "md5-size" sized chunk; Can also use sha256s. -->
<key>md5s</key>
<array>
<string>41fa64bb7a7cae5a46bfb45821ac8b99</string>
<string>51fa64bb7a7cae5a46bfb45821ac8b98</string>
<string>61fa64bb7a7cae5a46bfb45821ac8b97</string>
</array>
<!-- required. the URL of the package to download. -->
<key>url</key>
<string>https://www.betterbag.com/apps/myapp.pkg</string>
</dict>
</array>
</dict>
</array>
</dict>
</plist>
Generar una firma de código
En la app Terminal, introduce el primer comando (escribiéndolo) y, en la misma línea, la aplicación (arrastrándola desde una ventana del Finder). Por ejemplo:
codesign -display -r - /Aplicaciones/NombreEmpresa\ NombreAplicación.app