PackageMaker para criar pacotes MAC no Windows/Linux
-
22-09-2019 - |
Pergunta
Precisamos criar pacotes MAC em tempo real e seria conveniente se houver uma maneira de criar o mesmo na plataforma Windows ou Linux em vez de usar o PackageMaker no Mac. Alguma ideia?
Solução
Não, você não pode. Você pode fazer um login SSH com script e dispará -lo usando osscript para poder automatizar toda a construção de outro lugar, mas só pode criar um Mac em um Mac.
Você poderia fazer tudo As construções em um Mac, no entanto. É muito mais fácil assim.
Outras dicas
Não concordo que isso seja impossível. Você certamente poderia fazer todas as coisas que o PackageMaker faz no OSX em outro sistema operacional. É apenas uma questão de criar esses arquivos:
Contents/
Archive.bom
Archive.pax.gz
Info.plist
PkgInfo
Resources/
TokenDefinitions.plist
package_version
en.lproj/
Description.plist
Os arquivos .plist podem ser facilmente criados em python com Plistlib que agora é padrão em Python. O .bom e .pax.gz são um pouco mais complicados, mas o restante são todos os arquivos de texto.
A parte .gz do arquivo .pax.gz significa que é compactado com GZIP. Isso está disponível no Windows e Linux.
De acordo com Página do homem Pax Um arquivo PAX pode realmente estar em vários formatos de arquivo diferentes, incluindo CPIO e alcatrão, também é fácil de fazer no Linux ou no Windows. PackageMaker parece criar comprimido CPIO arquivos, pelo menos em 10.6.
O arquivo .bom é uma lista de todos os arquivos no pacote e seus tamanhos. É provavelmente a parte mais difícil de criar fora do OSX. BOM significa Bill of Materials e vem do próximo sistema operacional. Não consegui encontrar muita informação sobre o formato bom, mas aqui estão algumas pistas: Página Nextstep Bom Man, Página do Man Bom OSX
Edit: eu agora implementei uma versão de lsbom que eu coloquei em domínio público. O código pode ser encontrado na subversão aqui: https://cauldrondevelment.com/svn/osxbom/trunk
Talvez alguém também possa implementar mkbom e depois haverá uma solução completa. Veja o arquivo de cabeçalho Bom.H No código acima, para uma descrição um tanto completa do formato do arquivo BOM.
Edit 2: uma versão de trabalho de mkbom já foi implementado e pode ser encontrado aqui:https://github.com/hogliux/bomutils
Juntamente com um tutorial detalhado sobre como criar um instalador no Linux:http://hogliux.github.io/bomutils/tutorial.html
Veja também a pergunta Como construir-se-nativo-MAC-OS-X-INSTALLER-A-A-NON-MAC-PLATFORM.