【问题标题】:How to Force install location from OSX .pkg如何从 OSX .pkg 强制安装位置
【发布时间】:2014-10-22 16:18:14
【问题描述】:

我正在尝试为我们的产品创建软件包安装程序。以前我们使用 .dmg 安装,过程只是将其拖到 /Applications 文件夹。现在我们希望它安装到 /Application/Company/Suite/product。

问题是:如果我们在之前安装了我们的产品的系统上使用 .pkg 安装程序,它会创建文件夹,但会在旧位置安装产品。

如何让 pkg 安装程序执行以下操作:

  1. 删除旧版本
  2. 将新版本安装到适当的位置

我对 OSX 的经验很少 - 所以也许我只是遗漏了一些东西?还要查看应用程序文件夹-似乎没有将其他任何东西安装到子目录中,以这种方式做事是否不寻常? 谢谢!

编辑: 我正在寻找位于此处OSX .pkg installer sometimes does not install .app file 的答案,不同措辞的问题 - 但答案可能正是我所需要的。

EDIT2:OSX .pkg installer sometimes does not install .app file 不适用。我们没有使用任何包管理器安装 - 所以没有以前的条目。

EDIT3:我们以前使用 dmg,但现在正在迁移到 pkg

【问题讨论】:

  • 这很不寻常。除非您有情有可原,否则请仅分发应用程序,并可能拖到应用程序 .dmg 东西。
  • 决定权在我之上,但如果 OSX 真的不这样做 - 我会传递这些信息。

标签: macos osx-mavericks pkgbuild


【解决方案1】:

所以我找到了答案。

为了将其安装到新位置: 应用程序包(product.app/Contents/Info.plist)内的plist有一个标识符“CFBundleIdentifier”,这些需要与旧应用程序不同。例如我们的是“Company.Product-Name”,我将其更改为“Company.Product.Name”。这将允许新安装转到新位置。

为了删除旧的安装: 我只是将这一行添加到预安装脚本中: "sudo rm -Rf '/应用程序/产品名称.app'"

感谢您的帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-08-12
    • 2016-05-10
    • 2018-01-08
    • 1970-01-01
    • 2013-10-17
    • 2010-12-15
    • 2012-01-07
    • 2017-07-21
    相关资源
    最近更新 更多