为Mac OS X创建漂亮的dmg"安装程序"

xx7*_*aBs 76 macos installation dmg

我已经为Mac OS X制作了我的第一个Qt应用程序.现在我想创建一个很好的.dmg文件,允许用户轻松安装它.我在想像firefox这样的东西(见图): 在此输入图像描述

我完全是新手,所以我甚至不知道从哪里开始.

Lin*_*äck 83

通过提供这个答案,使这个问题更新.

appdmg是一个简单易用的开源命令行程序,它从简单的json规范创建dmg文件.看看官方网站上的自述文件:

https://github.com/LinusU/node-appdmg

快速举例:

  1. 安装appdmg

    npm install -g appdmg
    
    Run Code Online (Sandbox Code Playgroud)
  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" }
      ]
    }
    
    Run Code Online (Sandbox Code Playgroud)
  3. 运行程序

    appdmg spec.json test.dmg
    
    Run Code Online (Sandbox Code Playgroud)

(免责声明.我是appdmg的创造者)

  • @MarkMiles大部分代码都是用Javascript编写的,因此不符合.Npm将负责编译所有必要的源文件(C,Objective-C).让一切运行的最简单方法是1)安装brew(http://brew.sh)2)安装Node.js(`brew install node`),它也捆绑了`npm`.3)按照答案中的"快速示例" (4认同)

Sim*_*nek 19

这很简单 - 基本的想法是你使用磁盘工具创建一个空白图像(使它足够大,至少可以保存你的东西 - 确切大小无关紧要),使用Finder打开图像,把你的东西放进去安排它你想要它的方式(使用右键单击和显示视图选项来设置图标大小或背景图像).这几乎是它-这一切仍然是给R/W图像转换成压缩图像:弹出并使用转换磁盘工具将其转换成压缩图像.


Jos*_*phH 9

现有的答案都没有真正为我做过; 一个答案是手动的,另外两个选项 - iDMG和node-appdmg - 都涉及使用不太理想的取景器.

作为自动构建步骤执行此操作的最佳方法是创建一个看起来完全符合您需要的template.dmg(遵循正常说明,例如Simon Urbanek的答案,但不执行压缩它的最后一步),然后在您的构建中脚本:

  1. 使用hdiutil附加图像
  2. 使用cp等将应用程序复制到已安装的映像中
  3. hdiutil detach
  4. 压缩图像:hdiutil convert"in.dmg"-quiet -format UDZO -imagekey zlib-level = 9 -o"MyApp-0.3.dmg"

https://github.com/remko/fancy-dmg/上有一个包含这些步骤的makefile .

  • 我们正在努力放弃 AppleScript 并带来 node-appdmg 跨平台。如果你想关注工作,请看这里:https://github.com/LinusU/node-appdmg/issues?milestone=1&state=open (2认同)