Как я могу собрать пакет Mac на Linux?(Проблема файла спецификации) - PullRequest
8 голосов
/ 19 августа 2011

Я управляю бизнесом, где мы создаем почтовые принадлежности для людей. У нас есть некоторые пользователи Mac, которые в настоящее время должны загрузить zip-файл и вручную скопировать его в каталог своих почтовых канцелярских принадлежностей.

Я хочу автоматизировать этот процесс и позволить пользователям Mac напрямую загружать пакет, который будет автоматически копировать эти файлы.

Я создал пример пакета с PackageMaker, создал скрипт, который заменит Archive.pax.gz на клиентские бланки, но с ошибкой. Я понял, что не предоставил обязательный файл спецификации. Как я могу создать его на платформе не Mac? Или, если я не могу, есть ли другой способ создать установщик Mac на платформе не Mac?

Ответы [ 4 ]

3 голосов
/ 29 июля 2013

Теперь возможно создавать файлы спецификации (спецификации) в linux. Кто-то создал версию mkbom с открытым исходным кодом по адресу:

http://hogliux.github.io/bomutils

На веб-сайте также есть простое пошаговое руководство по созданию установщика Mac OS X в Linux (http://hogliux.github.io/bomutils/tutorial.html).

Моя компания регулярно собирает установщики Mac OS X для Linux с помощью этого метода, и до сих пор у нас не было серьезных проблем.

1 голос
/ 25 августа 2011

Либо вы можете найти пакет этой утилиты для Linux: http://www.unix.com/man-page/All/8/mkbom/, либо вы можете попробовать написать его самостоятельно, учитывая информацию, доступную на веб-сайте Apple в спецификации.

0 голосов
/ 01 февраля 2012

Я создал некоторый код, который может перечислить спецификацию из Linux.Для написания спецификации требуется еще немного работы.

https://cauldrondevelopment.com/svn/osxbom/trunk

Формат спецификации совсем не интуитивенДействительно противный на самом деле.Если вы посмотрите на мой код, вы сможете получить представление о формате.Я заметил, что GNUStep покончил с форматом спецификации NEXTStep, который, по-видимому, и был у Apple.

0 голосов
/ 01 сентября 2011

Наконец-то я создал postflight hook, который выполняет весь процесс установки

...