为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

快速示例:

  1. 安装appdmg

     npm install -g appdmg 
  2. 写一个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" } ] } 
  3. 运行程序

     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脚本:

  1. 使用hdiutil附加图像
  2. 使用cp等将应用程序复制到安装的映像中
  3. hdiutil分离
  4. 压缩图像:hdiutil转换“in.dmg” – 静音格式UDZO -imagekey zlib-level = 9 -o“MyApp-0.3.dmg”

https://github.com/remko/fancy-dmg/上有一个makefile,其中包含这些步骤。;

这个脚本使DMG的生成变得非常简单: https : //github.com/andreyvit/create-dmg

也没有节点依赖:-)

你可以用Finder做到这一点:

  1. 下载并解压缩这个空的DMG文件 (我是创build并上传它的人)
  2. 将DMG文件调整为适当的大小(适当的大小通常是其当前大小加上.app文件的大小)。 为此,请打开磁盘实用程序(如果您不知道如何执行此操作,请在Launchpad中searchdisk utility )。 然后点击菜单栏中的“图像”,然后select“resize…”。 你会得到一个窗口来打开一个文件,打开空的DMG文件。
  3. 双击DMG文件进行安装。 应该出现名为Untitled的桌面上的设备。 将它重命名为你想要的名字(你可能想给它和你的程序同名)。
  4. 打开该设备。 你应该看到这样的东西:

    在这里输入图像说明

    如果除了“应用程序”文件夹的快捷方式外,其他所有内容都是白色的,请按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文件重新挂载以查看更改。 根据您在图像中放置的内容,您可能还需要将快捷方式移至“应用程序”文件夹,以适应新的背景图像。

  5. 将你的.app文件拖到窗口中箭头的开头,DMG文件中的设备打开,看起来像这样:

    在这里输入图像说明

    您可能会收到一个错误,说没有足够的可用空间。 如果是这种情况,请返回步骤2并将DMG文件调整为较大的尺寸。

  6. 通过单击Finder中设备名称旁边的箭头卸载设备:

    在这里输入图像说明

  7. 将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文件(或其他名称,您在上面使用),这是所需的文件。