使用PackageMaker上运行安装脚本
-
22-07-2019 - |
题
我有一个应用程序,我需要创建一个安装程序,所有的安装程序需要做的(除了复制APP)是运行脚本(或可执行文件)不是程序本身的一部分。我如何能做到这一点任何帮助吗?我在要求标签看到有一个的脚本的结果作用,并且也有在预安装操作在操作标签,其具有打开文件动作。要么这些做的工作或我应该寻找其他地方?
解决方案
这里是一个很好的操作方法
有7种类型的脚本比可以在安装过程期间被启动的:
<强> InstallationCheck:强> 这个脚本在安装过程开始启动(甚至在验证步骤)。它可以用来检查该包可以在该计算机上进行安装。
<强> VolumeCheck:强> 此脚本在“选择目标”的步骤展开。它被用来确定在其体积可以被安装在封装
<强>预检:强> 这个脚本启动用户点击“安装”按钮之后。
<强>预安装/预升级:强> 如果有一个(在一个单一的包安装的情况下),该脚本将在飞行前的脚本后启动;否则用户点击了“安装”按钮之后。
正如你看到的,还有这里的2种类型的脚本。当包从未安装(从一个角度Installer.app点)的预安装一个启动,已安装包时,升级前一个被启动。要确定是否一个包已经安装与否,Installer.app是有一个看看下面的目录内容:/库/收益。如果有一个在它命名PackageName.pkg文件,然后包已经安装,否则它是第一个安装。
<强>安装后/升级后:强> 在包中的文件已被安装之后,该脚本将启动。见(预安装/预升级)以查看哪个被启动。
<强>飞行后:强> 已被安装在封装时,该脚本被安装后/升级后脚本之后启动或
其他提示
我只是设法包括一个shell脚本来我的包,我PackageMaker做。我需要安装后我的应用程序添加到登录物品,所以我做了一个脚本调用postflight.sh
,放入一个文件夹。 (似乎它适用于任何位置)
然后在我的包,我有应用。在内容,包装:应用程序,在脚本选项卡,我选择在飞行后的部分postflight.sh
。而已。
我postflight.sh
以
#!/bin/bash
,然后它有一些脚本把应用到登录项目。当我没有说,我可以做的包,但安装失败。希望这是有帮助的。
这 PackageMaker如何对的文章是过时的,但它有大约一半一路下滑脚本一些非常有用的信息。寻找表示命令行变量表作为从壳和perl,再加上一些有用的退出状态值看出。