我需要为Mac应用程序创建一个很好的安装程序。我希望它是一个磁盘映像(DMG),具有预定义的大小、布局和背景图像。
我需要在一个脚本中以编程方式做到这一点,将其集成到现有的构建系统中(实际上更多的是一个包系统,因为它只创建安装程序。构建是单独完成的)。
我已经用“hdiutil”完成了DMG的创建,我还没有发现的是如何制作图标布局和指定背景位图。
我需要为Mac应用程序创建一个很好的安装程序。我希望它是一个磁盘映像(DMG),具有预定义的大小、布局和背景图像。
我需要在一个脚本中以编程方式做到这一点,将其集成到现有的构建系统中(实际上更多的是一个包系统,因为它只创建安装程序。构建是单独完成的)。
我已经用“hdiutil”完成了DMG的创建,我还没有发现的是如何制作图标布局和指定背景位图。
当前回答
如果你想设置自定义卷图标,那么使用下面的命令
/*Add a drive icon*/
cp "/Volumes/customIcon.icns" "/Volumes/dmgName/.VolumeIcon.icns"
/*SetFile -c icnC will change the creator of the file to icnC*/
SetFile -c icnC /<your path>/.VolumeIcon.icns
现在创建读/写dmg
/*to set custom icon attribute*/
SetFile -a C /Volumes/dmgName
其他回答
有一个叫做create-dmg的Bash小脚本,它可以构建具有自定义背景、自定义图标定位和卷名的花哨dmg。
这是我多年前为我当时经营的公司建造的;从那时起,它就依靠其他人的贡献而生存,据报道,它运行良好。
还有node-appdmg,它看起来更现代,更活跃,基于Node.js;也来看看吧。
我找到了这个很棒的mac应用程序来自动化这个过程- http://www.araelium.com/dmgcanvas/ 如果你正在为你的MAC应用程序创建DMG安装程序,你必须看看
我的应用,DropDMG,是一个简单的方法来创建磁盘图像的背景图片,图标布局,自定义卷图标,和软件许可协议。它可以通过“dropdmg”命令行工具或AppleScript从构建系统中控制。如果需要,图片和许可证RTF文件可以存储在您的版本控制系统下。
对于那些对这个话题感兴趣的人,我应该提到我是如何创建DMG的:
hdiutil create XXX.dmg -volname "YYY" -fs HFS+ -srcfolder "ZZZ"
在哪里
XXX == disk image file name (duh!)
YYY == window title displayed when DMG is opened
ZZZ == Path to a folder containing the files that will be copied into the DMG
. ds_store文件存储Mac中的windows设置。windows设置包括图标布局,窗口背景,窗口大小等。为挂载图像创建窗口时需要. ds_store文件,以保存文件和窗口背景的排列。
一旦你创建了. ds_store文件,你可以把它复制到你创建的安装程序(DMG)。