如何使用pkgbuild为$ HOME指定默认安装位置?

问题描述 投票:5回答:2

我正在将我们的安装程序从PackageMaker移植到pkgbuild,并且我尝试将默认安装位置设置为当前用户的主目录,并且仍允许用户在系统范围内安装。

在我的分发文件中,我有enable_currentUserHome =“true”和enable_localSystem =“true”,它正确地允许用户“为这台计算机的所有用户安装”或“仅为我安装”。但是,我希望默认情况下选择“仅为我安装”。

pkgbuild有一个“--install-location”的命令行选项,手册页中指的是默认位置,但是没有提到如何指定主目录。我试过“〜”和“$ HOME”但没有运气。有一些我不知道的宏吗?

有没有人知道如何告诉pkgbuild默认安装在当前用户的主目录下?

提前致谢!

-Owen

macos installer pkgbuild
2个回答
5
投票

pkgbuild为您生成组件包。虽然组件包可以单独安装,但它通常包含在产品存档中。在产品存档中,您可以设置安装域,如localSystem和home。

例如,如果选择本地系统域,pkgbuild --install-location /Application会按预期将其安装到/ Application中;如果选择了家庭安装,则将其安装到$ HOME / Application中。

也就是说,我强烈反对使用安装程序进行主文件夹安装。它只是在现实世界中不起作用。

请参阅Known Issues and Workarounds中的Making OS X Installer Packages部分以及Installer Problems and Solutions


0
投票

一种解决方法是将分发文件设置为params,如下所示:

enable_localSystem="false" 
enable_anywhere="true" 
enable_currentUserHome="true"

默认情况下将选择主页安装,因为它是启用的第一个选项。

通过选择Install on a specific disk... - > Macintosh HD,用户仍然可以在系统范围内安装它。缺点:用户不像直接选择那样容易:Install for all users of this computer

© www.soinside.com 2019 - 2024. All rights reserved.