我有一个使用pkgbuild和packagebuild组合构建的OSX平面包。我需要在UI中添加一个新页面,用于从用户收集少量数据 - 一个键。而且我不完全确定如何实现这一目标。
我读过较旧的文章/主题,讨论使用基于Cocoa的安装程序插件,链接到早已消失的示例代码,并提供有关使用PackageMaker实现此目的的指示,这个工具已经失宠了。我还没有找到关于如何使用pkgbuild和/或packagebuild捆绑插件的任何讨论。
我可以使用Xcode构建安装程序插件。这似乎工作正常。但是我不确定如何在它构建之后将它放入包中。有谁知道如何实现这一目标?
值得注意的是,我需要一种可编写脚本的方法(对于CI)。
答案 0 :(得分:4)
我找到了解决方案。如果有人知道更好的方法,请告诉我。我是这样做的......
首先使用pkgutil扩展包,如此...
pkgutil --expand mypackage.pkg mypackage
这会将包内容爆炸到“mypackage”文件夹中。在此文件夹内,创建一个名为“Plugins”的新文件夹。在此内容中,您将放置插件包以及插件的InstallerSections.plist文件。 InstallerSections.plist文件很重要。没有它,插件就不会出现。
更新目录结构后,您可以将其展平为扁平包装,如此...
pkgutil --flatten mypackage mypackage.pkg
这对我有用。