为Mac OS X创build漂亮的dmg“安装程序”
我已经为Mac OS X创build了我的第一个Qt应用程序。现在我想创build一个漂亮的.dmg文件,以便用户轻松地安装它。 我正在考虑像Firefox这样的东西(见图片):
我完全是新的,所以我甚至不知道从哪里开始。
你可以检查这个 ( http://codevarium.gameka.com.br/how-to-create-your-own-beautiful-dmg-files/ )教程。 它一步步展示如何使用iDMG(这是一个免费软件),Finder和terminal来创build漂亮的DMG。 它很容易。
更新:
上面的链接现在已经死了sozme时间。
这是互联网档案的最新副本
通过提供这个答案来回答这个问题。
appdmg
是一个简单易用的开源命令行程序,可以从简单的json规范创builddmg文件。 看看官方网站上的自述文件:
https://github.com/LinusU/node-appdmg
快速示例:
-
安装appdmg
npm install -g appdmg
-
写一个json文件(
spec.json
){ "title": "Test Title", "background": "background.png", "icon-size": 80, "contents": [ { "x": 192, "y": 344, "type": "file", "path": "TestApp.app" }, { "x": 448, "y": 344, "type": "link", "path": "/Applications" } ] }
-
运行程序
appdmg spec.json test.dmg
(免责声明我是appdmg的创造者)
这很容易 – 基本的想法是,你使用磁盘工具创build一个空白的图像(足够大,至less保持你的东西 – 确切的大小无关紧要),使用Finder打开该图像,把你的东西,并安排它你想要的方式(使用右键单击并显示视图选项设置图标大小或背景图像的东西)。 这几乎就是它 – 所有剩下的就是把这个r / w图像转换成一个压缩的图像:将其popup并使用Convert in Disk Utility将其转换成压缩图像。
现有的答案没有一个是真的为我做的。 一个答案是手动的,而另外两个选项 – iDMG和node-appdmg – 都涉及到applescripting finder,这是不理想的。
将其作为自动生成步骤的最好方法是创build一个看起来完全如何的template.dmg(遵循正常的说明,例如Simon Urbanek的回答,但不进行压缩的最后一步),然后在构build脚本:
- 使用hdiutil附加图像
- 使用cp等将应用程序复制到安装的映像中
- hdiutil分离
- 压缩图像:hdiutil转换“in.dmg” – 静音格式UDZO -imagekey zlib-level = 9 -o“MyApp-0.3.dmg”
这个脚本使DMG的生成变得非常简单: https : //github.com/andreyvit/create-dmg
也没有节点依赖:-)
你可以用Finder做到这一点:
- 下载并解压缩这个空的DMG文件 (我是创build并上传它的人)
- 将DMG文件调整为适当的大小(适当的大小通常是其当前大小加上.app文件的大小)。 为此,请打开磁盘实用程序(如果您不知道如何执行此操作,请在Launchpad中search
disk utility
)。 然后点击菜单栏中的“图像”,然后select“resize…”。 你会得到一个窗口来打开一个文件,打开空的DMG文件。 - 双击DMG文件进行安装。 应该出现名为
Untitled
的桌面上的设备。 将它重命名为你想要的名字(你可能想给它和你的程序同名)。 -
打开该设备。 你应该看到这样的东西:
如果除了“应用程序”文件夹的快捷方式外,其他所有内容都是白色的,请按Cmd + J并打开一个窗口。 在该窗口的底部,有一个标有“在此处拖动图像”的正方形。 点击那个方块打开一个打开的对话框。 在该对话框中,按Cmd + Shift + G键入
/Volumes/ (whatever you called the device in step 3) /.image
并selectimage.png。除了“应用程序”文件夹的快捷方式之外,所有内容都只是一个背景图片 您可能需要更改背景图像(其中包含背景颜色和箭头)。 为此,在图像编辑器中打开文件
/Volumes/ (whatever you called the device in step 3) /.image/image.png
.image//Volumes/ (whatever you called the device in step 3) /.image/image.png
并将其编辑为任何您想要的。 完成此操作后,可能需要卸载设备并通过打开DMG文件重新挂载以查看更改。 根据您在图像中放置的内容,您可能还需要将快捷方式移至“应用程序”文件夹,以适应新的背景图像。 -
将你的.app文件拖到窗口中箭头的开头,DMG文件中的设备打开,看起来像这样:
您可能会收到一个错误,说没有足够的可用空间。 如果是这种情况,请返回步骤2并将DMG文件调整为较大的尺寸。
-
通过单击Finder中设备名称旁边的箭头卸载设备:
-
将DMG文件转换为只读。 为此,打开terminal并input(用DMG文件的名称replace
/path/to/dmg/file
到DMG文件的path和nameOfDmgFile.dmg
):cd /path/to/dmg/file hdiutil convert -format UDZO -o newNameOfDmgFile.dmg nameOfDmgFile.dmg
这将创build一个名为
newNameOfDmgFile.dmg
的新DMG文件(或其他名称,您在上面使用),这是所需的文件。