问题标签 [pkgbuild]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
macos - 在 Mac 上安装包时运行 postflight 脚本
我正在尝试从脚本构建一个 mac 包安装程序,并且我想运行 postinstall 和 postflight 脚本。我构建包的脚本如下所示:
我已将安装后脚本放在 Scripts 中,并且它正在成功执行。不过,我在运行 postflight 脚本时遇到问题。它被放置在 Resources 目录中并且不会被执行。这还不足以指定它的路径吗?我找不到这个问题的答案,如果我错过了,我很抱歉。
PS:我的 postflight 脚本没有什么特别的 - 现在它尝试在主目录中创建一个文件:
macos - 如何区分 pkgbuild 和 productbuild 中的 OS X 版本
在安装 PKG 期间是否可以区分当前的 OS X 版本。比如:如果操作系统 >= 10.9.0 安装 pkg_for_mavericks.pgk 否则如果 < 10.9.0 安装 pgk_not_for_mavericks.pgk
过去,使用传统的 PackageMaker,可以将要求映射到所需的大小、目标 OS X 版本等包。
我没有找到任何使用命令行实用程序 pkgmaker 和 productbuild 样式创建新 PKG 文件的示例
有什么建议么 ?
macos - 带有 pkgbuild 的 Mac 安装程序:在降级的情况下不要执行安装前和安装后脚本
我用 pkgbuild 做了一个包。在 info.plist 中,BundleIsVersionChecked 设置为 true。我的包在脚本文件夹中包含一个安装前和安装后脚本。
确实可以防止我的应用程序包降级。但是即使未安装应用程序包,也会始终运行预安装和安装后脚本。
当降级发生时,如何告诉 pkgbuild 不要执行 preinstall 和 postinstall 脚本?
ios - 为什么 Pkgbuild 重新定位 .app
谁能帮我..........
我尝试使用 pkgbuild 创建一个包。它会正确创建包并且安装也可以正常工作,但是当我们看到安装位置时,除了 .app 之外的所有内容都被复制了。
显示的安装日志 .app 重新定位到某个“xxxxxx”文件。
如果我们删除“xxxxxx”文件夹并安装它会显示 .app 重新定位到某个“yyyyyy”文件夹。
当我们手动制作包时,我们取消选中 .app 的“允许重定位”选项。我坚持通过 pkgbuild 命令做同样的事情。
pkgbuild - pkgbuild 窗口可以做得更大吗?
我们的 pkgbuild 安装程序正确显示“安装失败”。发生错误时的窗口。但在该标题上方出现了较小的 Apple 文本行
“安装出现错误。你可能想试试”
但其余部分被窗口边缘切断。有没有办法让 pkgbuild 窗口更大,所以它不会被切断?还是有其他解决方案?
谢谢!
macos - .pkg 可以用不同的名称替换应用程序包吗?
在我们软件以前的 Mac 版本中,我们愚蠢地将主要版本号放在应用程序包名称中:/Applications/CellProfiler2.0.app
现在我们即将发布 2.1 版。是否可以pkgbuild
制作一个.pkg
安装新版本/Applications/CellProfiler.app
但删除旧版本的软件包/Applications/CellProfiler2.0.app
?
macos - 以非管理员权限从 Mac .pkg 启动新安装的应用程序
我正在使用 pkgbuild 和 productbuild 构建一个 Mac 安装程序包 (.pkg)。我能够安装我的应用程序包,但我想在安装结束时启动它。我添加了
到安装后脚本。这会启动我的应用程序,但它具有不同的权限,或者与用户在完成安装后手动启动的应用程序不同。安装程序需要管理员权限,因为它将应用程序包复制到 /Applications,但这似乎会在安装后脚本启动时干扰应用程序的功能。一个例子是我的应用程序中的一个 applescript 命令应该复制具有管理员权限的文件失败。
有没有办法以用户的正常权限启动应用程序?
macos - Mac OSX 安装程序 pkg 忽略 Applications 文件夹中请求的应用程序显示名称,改用 bundle .app name stem
我的应用程序在 Mac OSX 上显示的应用程序名称有问题,安装后,不是我想要的。这适用于在应用商店之外作为 pkg 文件分发的应用。除了显示在 Mac 的“应用程序”文件夹中的应用程序名称外,一切正常。无论我做什么,显示的始终是包名称(不带 .app)。我原以为它会使用我在Info.plist
文件中给出的名称。
这就是我正在做的事情。
我为我的应用程序创建了一个包,其中包含一个定义包显示名称的 Info.plist,如下所示:
它实际上是一个基于 Qt 的应用程序,我使用 qmake/make/macdeployqt 构建而不使用 Xcode。但这应该与我的问题无关,我认为。在我的Info.plist
文件中,我有:
我为该应用程序构建了一个安装程序包,如下所示:
如您所见,我的构建过程创建了一个myapp.app
捆绑文件夹,并从中创建了一个.pkg
usingpkgbuild
和productbuild
. 但是嵌入在最终产品包中的组件包中的是它的Info.plist
文件,该文件说明(我想要)显示的名称是什么 - "My Application"
。
我可以从 Finder 中运行 .pkg 文件,而且一切似乎都安装好了。
但是当我打开我的应用程序文件夹(使用任务栏中的“A”图标)时,它在那里但没有被调用'My Application'
,而是被调用'myapp'
,这是应用程序包的名称。它运行良好,只是显示的名称总是错误的。
所以...问题是我想控制用户看到的名称,但由于它包含空格,我不能将其用作 bundle.app 中的名称。
那么......如何让应用程序名称在 /Applications 文件夹和任务栏图标上显示为我想要的?
谢谢
macos - Package a command line script in a Mac OS X pkg
I have a program (created by a colleague, ported from Linux but successfully compiles on Mac) that I need to deploy to lots of Mac workstations. Currently we do so by pushing out pkg files (not ones we created).
My general question (that others may find the answers to useful) is how do I go about packaging a command line program/script into a pkg file that installs the program? The usual method to package an .app file seems documented well enough, but there is scant details about taking an arbitrary program and wrapping it in a pkg installer.
The man pages for pkgbuild (etc) make a lot of assumptions - that you've already built an app with xcode, that you're intending to use an .app and can generate plists, etc. All we want to do is let the mac server install a non-app program, and it wants to use pkgs.
It would be best if the solution were scriptable so that every time we update the program we can easily create a new pkg file. If a decent resource already explaining this process can be linked that of course would also work great. The question here: Making OS X Installer Packages like a Pro - Xcode Developer ID ready pkg doesn't match the need to simply install a basic cli program.
macos - 您如何在使用 pkgbuild/productbuild 构建的 OS X 安装程序中向用户提问?
我正在使用 pkgbuild 和 productbuild 构建安装程序,并且我希望该过程的一部分涉及向用户询问一些简单的问题。这些问题可以通过复选框(是/否)或一个小的单行文本输入字段来回答。
一旦提出这些问题,我想将它们提供给安装后脚本。
对于更多上下文,我的产品是一组命令行工具,它们将位于 /usr/local/X 中,其中 X 是我的产品的名称。然后,运行一个简单的安装后脚本来最初设置一些东西。pkgbuild 已经很好地处理了这个问题。我真正想要的是为安装后脚本提供我的问题的答案,也许在环境变量中,因此它可以相应地进行设置。