我发现自己处于一个独特的场景中——它必须如此,因为我所做的任何搜索似乎都没有找到任何答案。但也许那里有一位 MacOS X 大师可以为我解答这个问题?
我正在使用 PackageMaker 为我公司的应用程序创建安装过程。这是一个跨平台的应用程序,我的基地是 Linux 和 Windows,所以请原谅我的 MacOS X 不聪明。
我们有两个软件包——呃,应用程序。一个是 Other.app,它是由我们正在“捆绑”我们的软件的外部公司开发的。我们的应用是 Stats.app。我们的应用程序将作为启动代理运行,因此我有一个 .plist 文件,当我在终端中手动安装时该文件可以工作。
我的安装过程目标是这样的:
- 将 Other.app 安装到 /Applications
- 将 Stats.app 安装到 /Users/<user>/Applications(见注)
- 将 Stats.plist 安装到 /Users/<user>/Library/LaunchAgents
后处理 Stats.plist 以修改“ProgramArguments”键,使路径正确:
<array>
<string>%{HOME}/Applications/Stats.app/Contents/MacOS/Stats</string>
</array>后执行一些简单的命令:
/Application/Other.app/Contents/MacOS/Other --configure=config.txt
检查退出代码,如果一切正常,告诉用户我们完成了。
我希望——不……祈祷!- 有人知道如何做到这一点的信息。
澄清一下,Stats.app 不需要位于用户主目录中。Launch 代理必须位于主目录中,因为 Stats.app 需要运行中的 Carbon 才能运行。