Distribuição de pacotes personalizados para Mac
Os dispositivos Apple oferecem suporte à instalação, via conexão sem fio, de pacotes personalizados sem acessar a App Store. Há duas maneiras de distribuir apps proprietários desenvolvidos internamente:
Usando MDM
Usando um site
Uso do MDM para distribuir apps
Para usar o MDM, use um manifesto com os comandos InstallEnterpriseApplication
(arquivo de manifesto ou manifesto incorporado) ou InstallApplication
(arquivo de manifesto). Prefira o uso do comando InstallEnterpriseApplication
porque ele é compatível com sha256 e fixação de certificados. Para obter mais informações, consulte Comandos do MDM.
Uso de um site para distribuir apps
Crie um pacote que contenha conteúdo, como o app, fontes e scripts a serem instalados no Mac.
Cabe a você projetar e hospedar o site usado para distribuir esses pacotes. Certifique-se de que os usuários sejam autenticados e que o site possa ser acessado da intranet ou da internet, dependendo das suas necessidades. Envie o arquivo de pacote (com extensão de nome de arquivo .pkg) para uma área do site que os usuários autenticados possam acessar.
Pode ser necessário configurar o servidor web para que o pacote seja transmitido corretamente. No servidor, adicione este tipo MIME aos ajustes de tipos MIME do serviço web:
application/octet-stream pkg
No Internet Information Server (IIS) da Microsoft, use o IIS Manager para adicionar o tipo MIME na página de Propriedades do servidor:
.pkg/octet-stream
Um arquivo de manifesto típico para macOS
Abaixo, encontra-se um exemplo de manifesto ou arquivo de manifesto, que é uma lista de propriedades em XML (arquivo .plist). Os campos a seguir são necessários:
URL: o URL HTTPS totalmente qualificado do pacote
kind: deve ser definido como software-package
Os campos a seguir são opcionais para segmentação:
md5-size: o tamanho de cada segmento
md5s: hashes md5 para cada segmentação
sha256-size: o tamanho de cada segmento
sha256s: hashes sha256 para cada segmentação
Um exemplo de arquivo de manifesto para um pacote do Mac
Abaixo, encontra-se um exemplo de arquivo de manifesto. Observe que nos campos para segmentação, se ambas as informações de segmentação sha256 e md5 forem fornecidas, sha256 tem a preferência.
<!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>
Gere uma Assinatura de Código
No app Terminal, digite o comando e, na mesma linha, arraste o app de uma janela do Finder. Por exemplo:
codesign -display -r - /Applications/CompanyName\ ApplicationName.app