Как я могу создать установщик .pkg для своего двоичного файла?

У меня есть бинарный файл, . Создан с использованием vercel/pkg.

Я хотел бы связать это с установщиком для Mac; А.pkgустановочный файл.

Он должен установить двоичный файл в/usr/local/bin/foo.

Пытаться:

      $ cd Desktop // <--- foo binary is here
$ pkgbuild --identifier com.foo.pkg --install-location ./usr/local/bin/ --root ./ foo.pkg

Это создает файл .pkg: на моем рабочем столе. И когда я запускаю, он устанавливаетfooдвоичный файл правильно, за исключением того, что он также уходит.

Как сделатьpkgbuildизбегать уходаfoo.pkgвнутри/usr/local/bin?


ОБНОВЛЯТЬ:

Основываясь на этой теме , я думаю, что это сработает, если я установлюBundleIsRelocatableк ложному. Но я не могу понять, как это делается.

1 ответ

Когда вы проходите, он берет все в этой папке и запекает в пакет. Вы работаете в корне, который вы создаете — очень вероятно, что у вас есть копия на вашем рабочем столе, которая была создана более ранним запуском . Когда вы запустите его снова, старыйfoo.pkgтеперь встроен в новый пакет.

Вместо этого укажите--rootв каталоге , содержащем только те файлы, которые вы хотите упаковать.

В противном случае используйте--analyzeдля создания списка компонентов вашего корневого каталога. При необходимости настройте полученный .plist (указав файлы, которые вы хотите включить, и связанные с ними параметры), а затем верните его вpkgbuildс--component-plist.

Вы должны прочитать справочную страницу , если вы еще этого не сделали.

Другие вопросы по тегам