问题标签 [packagemaker]
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 安装程序脚本
我尝试使用 packagemaker 编写安装程序,它在安装过程中运行 shell 脚本。我想在静默模式安装期间将一些参数传递给 shell 脚本。类似的东西
我能想到的两个选择是,
- 设置环境变量并从脚本中读取。但这似乎不起作用。
- 将此数据写入某个文件并在安装期间从中读取。但这样做的方式非常丑陋,而且对我的安装程序的用户来说也不方便。
有没有更好的方法来使用命令行参数或环境来做到这一点?
macos - Mac OS X 中名为 install_name_tool 的命令生成的“格式错误的对象”是什么意思?
我正在尝试install_name_tool
在 Mac OS X 中使用,并且有奇怪的错误消息,例如:
谁能解释“格式错误的对象”是什么意思,以及如何摆脱该消息?
macos - Mac 安装程序包 - 如何以 root 或管理员身份运行脚本?(飞行后)
我创建了 Mac 包以安装我的一些东西。我有 postflight 脚本,它应该将一些数据复制到 /Library/Application Support/Apple/Mail/Stationery/Apple/Contents/Resources/Stationery/Contents/Resources/ - 并且出于此处提到的原因:我如何构建linux上的Mac包?(BOM 文件问题)它需要是飞行后脚本。
但是它不起作用(它只是下载一个 zip 文件,将其解压缩并 cp 到提到的位置)。所以我通过将 2> 添加到 cp 来检查错误,这就是发生的事情:
cp:/Library/Application Support/Apple/Mail/Stationery/Apple/Contents/Resources/Stationery/Contents/Resources/:权限被拒绝
我仔细检查了我的 Info.plist 并且看起来保留了正确的设置:
但是脚本仍然没有权限。我试过“whoami”,它返回了当前登录的用户。更奇怪的是,安装程序实际上要求管理员身份验证。你们有什么想法我应该怎么做才能让这个脚本以root/admin/拥有更大权限的人身份运行?
objective-c - 如何在 Mac OS X 上自动或以编程方式更改系统偏好设置
我试图弄清楚如何以编程方式更改 Mac OS X 上的系统偏好设置。如果不可能,请创建一些安装后自动化脚本(使用 Apple 脚本或其他方式)并将其作为安装程序的一部分运行。我对更改“语言和文本”设置特别感兴趣,这些设置是“系统偏好设置”中“个人”设置的一部分。
这是我的问题的更多描述:
我正在尝试为我为 Mac OS X 编写的自定义键盘布局创建安装程序。键盘布局基本上允许人们将 ASCII keboard 输入音译为外文字母。Mac OSX* 上不存在外语。我能够使用 Apple 的 PackageMaker 创建一个基本安装程序,将所有必要的文件(.keylayout 文件、图标和自定义字体)转储到目标计算机的各自目录中。但是在选择和使用键盘布局之前,需要在系统偏好设置中配置一些个人设置。我想在安装过程中为用户自动配置这些“一次性”设置。是否可以使用 Cocoa/Objective-C 更改设置。如果不,我希望您能帮助我了解如何使用 Apple Script 来自动化配置。如果可能,请包含一些示例代码或指向示例的指针。谢谢你。
以下是需要在系统偏好设置中配置的设置
- 选择系统偏好设置 --> 语言和文本 -- 输入源
- 从列表中选择“语言名称”
- 单击“键盘快捷键”并启用“选择上一个输入源”和“在输入菜单中选择下一个源”。
- 双击快捷键组合“⌘空格”并将它们更改为“⌘ L”用于“选择上一个输入源”和“ctrl⌘L”用于“在输入菜单中选择下一个源”
- 退出系统偏好。完毕
注意: *系统语言无需更改。只有输入源(键盘布局)。
python - 使用 easy_install 在 Cocoa 应用程序中捆绑 python 工具
我的 Cocoa 应用程序需要使用 easy_install 在用户系统上安装 Python 命令行工具。理想情况下,我想将一个 bash 文件与我的应用程序捆绑在一起,然后我可以运行它。但据我所知,这是不可能的,因为软件包安装在 Python 的“site-packages”目录中。
有没有办法创建这些文件的“包”?如果没有,我应该如何运行 easy_install 安装?我想将一个 .pkg 文件与我的应用程序捆绑在一起,然后我可以在必要时打开它,但我不能让这个安装包只运行一个脚本。
如果您对如何解决此问题有任何想法,我会很高兴。
亲切的问候,法比安
python - 在 OS X 中创建包安装程序 - 安装 Python、NumPy 和其他依赖项
我想创建一个本地 Mac OS X 包安装程序,包的创建并不是真正的问题,真正的问题是必须安装的依赖项;我需要安装 Python、NumPy 和 Matplotlib(仅在尚未安装所需版本的情况下)。
我听说过关于 Package Maker 应用程序的非常糟糕的事情,我已经阅读了一些内容,甚至已经找到了一个不错的教程,尽管它已经过时了。作为参考,这里是 Apple 的参考指南。
我想我将不得不使用这三个项目中的每一个提供的未编译源。
查看用于创建官方 Python 安装程序的 PackageMaker 文件真的会帮助我,如果这样的文件在某处可用,请指出它。
反正:
最好的方法是什么?为此目的使用 PackageMaker 是愚蠢的吗?还有其他文献可以帮助我吗?
额外的:
测试我的安装程序的最简单方法是什么?
macos - 为我的 Mac 应用程序创建安装程序
我有这个由 2 个文件组成的 Mac 应用程序:
- 第一个文件.tst
- 第二个文件
我想把它们放在:
- ~/图书馆/音频/MyProg/
- ~/库/应用程序支持/MyProg/
我还希望安装程序看起来像他们喜欢的 DMG 安装程序(如 Skype 的)。现在,我是 Mac 的新手,但我愿意学习任何需要的东西。
我知道 dmg 安装程序实际上是拖放;这是否意味着如果我的应用程序不包含真正的应用程序(它是一个插件 - 没有快捷方式可以放入 Applications 文件夹),那么我不能这样做?
我正在考虑调用左侧 MyProg 上的图标和右侧 COMP_NAME 上的图标,并将 MyProg 拖到 COMP_NAME 只需将我描述的 2 个文件放在我为它们描述的位置。
有什么方法可以实现这一点,还是我应该使用 PackageMaker 并放弃花哨的 dmg 想法(我真的很喜欢花哨的安装程序)?
谢谢。
python - 如何从支持多个 OSX 版本的 python 创建 Mac .pkg
我正在尝试为 python 应用程序(特别是 Spyderlib)创建一个 .pkg 安装程序。这不是一个应用程序,而是一个 python 包和一个必须复制到特定位置的命令行可执行文件。
但是,该位置取决于 OSX 的版本。我只针对 10.6 和 10.7,但它们带有不同版本的 python(2.6 和 2.7),因此安装路径不同。
使用 bdist_mpkg 我能够在 10.7 中创建一个 Mac mpkg,它可以正确安装并且可以使用 PackageMaker 进行编辑。现在我想知道如何编辑这个包,以便它检测 OSX 的版本并正确设置安装目标路径。
我知道我可以使用 shell 脚本来执行安装前和安装后的工作,但是我无法找到如何执行此操作的示例以及脚本如何用于设置 mpkg 中文件的安装目标.
或者,可能可以直接从 PackageMaker 执行此操作,但我无法看到任何有关此效果的内容(并且文档似乎很肤浅)。
所以我想知道如何做到这一点。查看其他软件包的一些示例也将非常有帮助。
macos - 来自 Shell 脚本的 Package Maker 检查错误
我需要为我的 Mac 应用程序创建一个包,我正在使用 PackageMaker
我需要检查 JVM 版本,如果它小于 10.6,那么我将中止安装并要求用户首先安装 JVM,
因为我正在使用以下 shell 脚本
并且在包装制造商中,我已经通过检查,但在所有情况下,它都达到了失败条件,即书面类型不正确,任何人都可以帮助我,用“什么是正确的返回值形式的 shell 脚本”那个包maker 可以了解其脚本通过或失败。
macos - Package Maker 运行预安装脚本
我必须使用包制造商制作安装程序,包制造商版本是版本 3.0.4 (179)
在我们的包中,在安装之前,我们需要运行一个脚本,(预安装脚本),它应该检查 JAVA 版本,
如果版本低于 1.6 那么它应该告诉用户更新 JVM 并且安装应该退出而不安装应用程序,
我做了以下操作,在分发中,单击预安装操作并添加了此脚本,
添加了必要的操作,失败时应显示什么消息,
它在我的机器上工作正常,但是当我尝试在安装了 JVM1.6 的其他机器上运行时,包失败,
经过大量调查后,我在Raw-Editing-mode中得到了以下代码
这意味着它在预定义的路径上搜索,并且似乎由于它没有在该路径上获得脚本而失败。
看来,包期望脚本出现在该路径中,或者我在提供路径时犯了任何错误,我在那里检查过,没有绝对/相对路径。
是否有任何解决方法,谷歌搜索说,有预检脚本,但我没有得到任何文档。
提前致谢