如此处https://github.com/LinusU/node-appdmg所述,以创建dmg。
我没有为“代码签名”添加任何示例。
有人用它来创建dmg谁可以帮助我知道在这两个占位符中提供什么?我仍然想知道第二个是可选的。
{
"title": "My App",
"icon": "app.icns",
"icon-size": 108,
"background": "Resources/SplashScreen/dmg-background.png",
"contents": [
{ "x": 450, "y": 150, "type": "link", "path": "/Applications" },
{ "x": 150, "y": 150, "type": "file", "path": "/My App.app" }
],
"code-sign": [
{ "signing-identity" : ""},
{ "identifier" : ""}
]
}
答案 0 :(得分:0)
好吧,我从未使用过node-appdmg
,但是文档中说:
代码签名(对象,可选)-对DMG进行代码签名的选项 signing-identity(字符串,必填)-用于对生成的DMG进行签名的身份
identifier(字符串,可选)-明确设置嵌入在代码签名中的唯一标识符字符串
您可以使用以下命令列出代码签名身份:
security find-identity -v -p codesigning
1) 4E8D512C8480FAC679947D6E50190AE9BAB3E825 "3rd Party Mac Developer Application: Developer Name (DUCNFCN445)"
2) 8B0EBBAE7E7230BB6AF5D69CA09B769663BC844D "Mac Developer: Developer Name (DUCNFCN445)"
3) 4E8D512C8480AAC67995D69CA09B769663BC844D "iPhone Developer: App Developer (DUCNFCN445)"
4) 65E24CDAF5B3E1E1480818CA4656210871214337 "Developer ID Application: App Developer (DUCNFCN445)"
4 valid identities found
因此您可以指定这样的身份:
{ "signing-identity" : "Developer ID Application: App Developer (DUCNFCN445)"},
对于“标识符”,您可以参考此technical note。它说:
签名标识符也嵌入在DR中,如果未明确提供,则默认使用Info.plist中的CFBundleIdentifier。就代码签名而言,该标识符没有任何意义,除了作为使DR唯一的手段之外。
您的.dmg将没有捆绑包标识符。就我而言,它似乎默认为.dmg的名称(因此,我的.dmg为myproduct.dmg
,默认标识符为myproduct
)。
签名后,您可以像这样查看签名:
codesign -dv /path/to/myproduct.dmg
您将看到标识符:
Executable = / path / to / myproduct.dmg
Identifier = myproduct
Format =磁盘映像
...等等
答案 1 :(得分:0)
格式错误,应该是:
{
"title": "My App",
"icon": "app.icns",
"icon-size": 108,
"background": "Resources/SplashScreen/dmg-background.png",
"contents": [
{ "x": 450, "y": 150, "type": "link", "path": "/Applications" },
{ "x": 150, "y": 150, "type": "file", "path": "/My App.app" }
],
"code-sign": {
"signing-identity" : "Developer ID Application: xxx",
"identifier" : "<Your BundleID>"
}
}