我有一个带有pkg安装程序的macos应用程序。pkg有一个postinstall.sh和一个preinstall.sh.
在大多数机器上,它运行良好,但对于某些客户,我会收到脚本失败的报告。
我已经要求用户向我发送安装程序日志,但这些日志不包含实际的bash错误,只有这样的内容:
9月14日15:04:16 Filestars Mac Mini-installd[2540]:PackageKit:安装失败:错误域=PKInstallErrorDomain代码=112";从软件包"Filestar21.2.12.0.osx-x64.pkg"运行脚本时出错;UserInfo={NSFilePath=./preinstall,NSURL=file:///Users/filestar/repos/Filestar/Filestar.Installer/macOs/Output/Filestar.21.0.12.0.osx-x64.pkg#Filestar.pkg,PKInstallPackageIdentifier=com.Filetar.pkg.Filestar,NSLocalizedDescription=从软件包"Filestar/21.12.0.osx-x64.pkg"运行脚本时出错。}{NSFilePath="/预安装";;NSLocalizedDescription=";从软件包\U201cFilestar.20.12.0.osx-x64.pkg\U201d运行脚本时出错。";NSURL=";file:///Users/filestar/repos/Filestar/Filestar.Installer/macOs/Output/Filestar.21.0.12.0.osx-x64.pkg#Filestar.pkg";PKInstallPackageIdentifier=";com.Filestar.pkg.Filestar";}
如何获取实际错误?
在执行preinstall.sh
和postinstall.sh
脚本期间,追加到日志文件中。例如,您可以在preinstall.sh
期间rm -rf /var/tmp/Filestar.log
,然后在其中附加任何您认为有趣的内容。对postinstall.sh
执行相同操作。然后,如果用户报告问题,让他们向您发送日志文件。