Macos 使用自定义资源和脚本创建平面.pkg文件的可编写脚本的方法
我使用PackageMaker 3.0.6在10.7上创建了一个平面.pkg文件,其中包含以下选项:Macos 使用自定义资源和脚本创建平面.pkg文件的可编写脚本的方法,macos,packagemaker,xar,Macos,Packagemaker,Xar,我使用PackageMaker 3.0.6在10.7上创建了一个平面.pkg文件,其中包含以下选项: /Applications/PackageMaker.app/Contents/MacOS/Package --root ./myroot \ --id com.myroot.pkg --title "My Root" --scripts ./scripts --target 10.5 \ --verbose --resources ./resources --root-volume-onl
/Applications/PackageMaker.app/Contents/MacOS/Package --root ./myroot \
--id com.myroot.pkg --title "My Root" --scripts ./scripts --target 10.5 \
--verbose --resources ./resources --root-volume-only --domain system \
--no-relocate --versio 1.0 --certificate "My Cert Name"
在resources
文件夹中,我有background.png
,Welcome.rtf
和License.rtf
,在scripts
文件夹中,我有飞行前
,飞行后
以及这些脚本的各种支持文件。生成的.pkg似乎功能齐全,只是安装程序没有显示我的背景、欢迎或许可证
如何将自定义背景、欢迎和许可添加到平面软件包中?
据我所知,.pkg中的发行版文件缺少对后台文件、欢迎文件和许可文件的引用
作为一种解决方法,我尝试使用xar
。如果我像这样用xar解包:
xar -xf ./myroot.pkg -C work
并为这些文件添加3个标记,然后使用xar再次打包:
cd work && xar -cf ../myroot2.pkg *
我得到了一个安装包,可以使用我的背景等开始安装,但是当需要安装我的.app时,我会收到以下错误(来自/var/log/install.log
):
我也尝试过扁平包编辑器:打开myroot.pkg,拖出发行版,编辑它,拖回,删除旧发行版,保存。与xar的问题相同
我更希望有一个完全可编写脚本的解决方案,而不是使用GUI
Edit:我还尝试使用pkgutil
来扩展、编辑发行版,并在一个扁平的包中刷新。这将在安装程序中获取图标和自述文件,但安装程序随后无法解压缩有效负载。如果我使用平面软件包编辑器
刷新,则相同。我也尝试过在没有PackageMaker的情况下创建一个扩展包(除了在10.8上,它可以正常工作),但当我尝试用pkgutil将其展平时,结果又是一个损坏的包。PackageMaker始终是buggy has hell,并被Mac OS X 10.6 Snow Leopard弃用
你应该使用。PackageMaker一直是buggy has hell,并被Mac OS X 10.6 Snow Leopard弃用
您应该使用。这有一些关于Packagemaker的有用帖子,包括有关用法和常见问题解决方案的详细信息。希望能有所帮助。这里有一些关于Packagemaker的有用帖子,包括关于用法和常见问题解决方案的详细信息。希望它能有所帮助。请查看-这是一个Makefile帮助文件,可以让您使用sane Makefiles创建OS X软件包。免责声明:我是它的原始作者,尽管现在有很多其他人的贡献。请查看-这是一个Makefile帮助文件,允许您使用sane Makefiles创建OS X软件包。免责声明:我是它的原始作者,尽管现在有很多其他人的贡献。到目前为止,我对pkgbuild的运气更差。我想如果我不能让这种方法发挥作用,我需要再试一次。如果你描述一下你在pkgbuild中遇到的问题,我会尽力帮助你。可能会更新问题或开始一个新的问题与更多的细节。你有没有一步一步地跟踪我的链接?如果是这样的话,麻烦是从哪里开始的……尽管这并没有解决我的问题,但它基本上等同于“它不可能做到(至少不是那样)”,这本身就很有用。因此,将此作为答案。到目前为止,我在pkgbuild方面的运气更差。我想如果我不能让这种方法发挥作用,我需要再试一次。如果你描述一下你在pkgbuild中遇到的问题,我会尽力帮助你。可能会更新问题或开始一个新的问题与更多的细节。你有没有一步一步地跟踪我的链接?如果是这样的话,麻烦是从哪里开始的……尽管这并没有解决我的问题,但它基本上等同于“它不可能做到(至少不是那样)”,这本身就很有用。因此,我们将此作为答案。
run preupgrade script for myroot
Could not create task for action: run preupgrade script for myroot2
Install failed: The Installer could not extract files from the package for myroot2. Contact the software manufacturer for assistance.
IFDInstallController 863170 state = 7