Используя PackageMaker для установки почтового плагина? - PullRequest
0 голосов
/ 06 января 2011

Я пытаюсь создать пакет установщика для созданного мной плагина Mail.app. Это должно сделать две вещи: 1. Установите .mailbundle (это просто папка) в ~ / Library / Mail / Bundles 2. Запустите две команды терминала, чтобы включить почтовые пакеты

Суть проблемы, кажется, связана с тем, что я пытаюсь установить ее в домашнюю папку пользователя, поскольку приложение PackageMaker, похоже, не имеет переменной «пользователь, вошедший в систему», поэтому, когда я указываю, кто должен быть владельцем файла. Прямо сейчас я сам указал в качестве владельца, думая, что PackageMaker разумно воспримет это как «текущий пользователь», но это не так; когда я пытаюсь установить пакет на компьютере другого человека, владельцем папки является неизвестный пользователь (вероятно, я), а сценарий postinstall, который включает почтовые пакеты, кажется, не вступает в силу (вероятно, потому что Installer запускается от имени пользователя root , что предотвращает запись программой по умолчанию в файл настроек почты текущего пользователя).

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

Еще одна вещь, которую я хотел бы сделать, это проверить, работает ли Mail во время установки, и предложить пользователю выйти из программы. Прямо сейчас я могу тихо выйти из программы, но я бы предпочел, чтобы пользователь сам вышел, просто чтобы быть в безопасности. Я знаю, что это возможно, потому что обновление iTunes сделает это, но я не вижу простого способа сделать это в PackageMaker, поэтому я предполагаю, что потребуется более креативное решение.

Есть идеи?

1 Ответ

0 голосов
/ 02 марта 2011

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

...