Project Icon

create-dmg

用于创建精美 DMG 文件的 Shell 脚本工具

create-dmg 是一个创建 DMG 文件的 Shell 脚本工具。它支持自定义 DMG 外观,如设置卷名、图标、背景图片、窗口大小和位置等。该工具具备加密、代码签名和公证功能,适用于 macOS 应用程序分发。create-dmg 安装简便,选项丰富,可满足多样化的打包需求,适合 macOS 开发者使用。

create-dmg

一个用于构建精美DMG镜像的shell脚本。

状态和贡献政策

Create-dmg主要由@aonez和提交拉取请求的贡献者维护。 项目主页是https://github.com/create-dmg/create-dmg

我们会合并任何添加有用功能且不破坏现有功能的拉取请求。

如果你是活跃用户并想成为维护者,或者只是想聊聊天,请在Gitter上ping我们,地址是gitter.im/create-dmg/Lobby,或者直接给Andrew发邮件

Create-dmg最初由Andrey Tarantsov创建。 2020年5月,Andrew Janke对项目做出了巨大贡献。

安装

  • 你可以使用Homebrew安装这个脚本:

    brew install create-dmg
    
  • 你可以下载最新版本并从那里安装:

    make install
    
  • 你也可以克隆整个仓库并在本地运行:

    git clone https://github.com/create-dmg/create-dmg.git
    

使用方法

create-dmg [选项 ...] <输出文件名.dmg> <源文件夹>

源文件夹的所有内容都将被复制到磁盘镜像中。

选项:

  • --volname <名称>: 设置卷名(显示在 Finder 侧边栏和窗口标题中)
  • --volicon <图标.icns>: 设置卷图标
  • --background <图片.png>: 设置文件夹背景图片(支持 png、gif、jpg 格式)
  • --window-pos 设置文件夹窗口的位置
  • --window-size <宽度> <高度>: 设置文件夹窗口的大小
  • --text-size <文本大小>: 设置窗口文本大小(10-16)
  • --icon-size <图标大小>: 设置窗口图标大小(最大 128)
  • --icon <文件名> 设置文件图标的位置
  • --hide-extension <文件名>: 隐藏文件的扩展名
  • --app-drop-link 在 x、y 位置创建指向"应用程序"文件夹的拖放链接
  • --ql-drop-link 在 x、y 位置创建指向 /Library/QuickLook 的拖放链接
  • --eula <许可文件>: 将许可文件附加到 DMG
  • --rez <rez路径>: 指定用于包含许可文件的 Rez 工具的自定义路径
  • --no-internet-enable: 禁用自动挂载和复制
  • --format: 指定最终镜像格式(UDZO|UDBZ|ULFO|ULMO)(默认为 UDZO)
  • --filesystem: 指定镜像文件系统(HFS+|APFS)(默认为 HFS+,APFS 支持 macOS 10.13 或更高版本)
  • --encrypt: 为生成的磁盘镜像启用加密(AES-256 - 将提示输入密码)
  • --encrypt-aes128: 为生成的磁盘镜像启用加密(AES-128 - 将提示输入密码)
  • --add-file <目标名称> <文件|文件夹> 添加额外的文件或文件夹(可多次使用)
  • --disk-image-size 手动将磁盘镜像大小设置为 x MB
  • --hdiutil-verbose: 以详细模式执行 hdiutil
  • --hdiutil-quiet: 以安静模式执行 hdiutil
  • --bless: 为挂载文件夹执行 bless 操作(已弃用,需要 macOS 12.2.1 或更早版本,#127
  • --codesign <签名>: 使用指定签名为磁盘镜像进行代码签名
  • --notarize <凭证>: 对磁盘镜像进行公证(等待并装订)使用钥匙串存储的凭证 更多信息请查看苹果官方文档
  • --skip-jenkins: 跳过美化 Finder 的 AppleScript,在沙盒和非 GUI 环境中很有用,#72
  • --sandbox-safe: 使用沙盒兼容的 hdiutil,不执行 bless 操作和装饰性 AppleScript(不支持 APFS 磁盘镜像)
  • --version: 显示工具版本号
  • -h, --help: 显示帮助信息 加密

hdiutil 支持使用 AES-256(较慢但更强大)或 AES-128(较快但较弱)进行原生磁盘映像加密。通过 create-dmg 启用磁盘映像加密将需要在过程中间(压缩阶段)输入密码。请注意正确输入密码,因为 hdiutil 不会提示第二次确认密码。

示例

#!/bin/sh
test -f Application-Installer.dmg && rm Application-Installer.dmg
create-dmg \
  --volname "应用程序安装器" \
  --volicon "application_icon.icns" \
  --background "installer_background.png" \
  --window-pos 200 120 \
  --window-size 800 400 \
  --icon-size 100 \
  --icon "Application.app" 200 190 \
  --hide-extension "Application.app" \
  --app-drop-link 600 185 \
  "Application-Installer.dmg" \
  "source_folder/"

更多示例请查看源代码树中的 examples 文件夹。

要求

除了标准的 macOS/OS X 安装外,不需要其他任何东西。

我们认为这在 OS X 10.6 Snow Leopard 及更高版本中可以正常工作。

我们希望能够在尽可能多的版本中保持其可用性,但遗憾的是,我们没有运行旧版 OS X 的测试机器来实现这一点。开发和测试主要在最近 3-5 年的 macOS 版本中进行;截至 2020 年,这意味着 macOS 10.12 及更高版本。

但如果你在旧版本中发现了bug,请随时报告!我们会尝试与你合作解决问题。

如果你运行的是 OS X 10.5 或更早版本,那就没办法了。在 2023 年处理这些版本实在太困难了。;)

替代方案

项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

吐司

探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

Project Cover

美间AI

美间AI创意设计平台,利用前沿AI技术,为设计师和营销人员提供一站式设计解决方案。从智能海报到3D效果图,再到文案生成,美间让创意设计更简单、更高效。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号