An open API service indexing awesome lists of open source software.

https://github.com/insidegui/dmgdist

Automate the process of creating, uploading and notarizing the DMG of a Mac app.
https://github.com/insidegui/dmgdist

Last synced: 10 months ago
JSON representation

Automate the process of creating, uploading and notarizing the DMG of a Mac app.

Awesome Lists containing this project

README

          

# dmgdist

Automate the process of creating, uploading and notarizing the DMG of a Mac app.

## Building / installing

**`dmgdist` requires `create-dmg` to be installed in order to generate a DMG from the app. [Learn more about create-dmg and get the installation instructions here](https://github.com/sindresorhus/create-dmg).**

To build dmgdist, open the project in Xcode and build. You can also archive it and export the binary, then copy it to somewhere in your `$PATH`.

There's also a pre-built binary available in the project's Github releases.

## Usage

```
USAGE: dmg-dist [--verbose] [--check-request-id ]

ARGUMENTS:
Path to the developer ID signed .app (doesn't have to be notarized)
Your code signing identity, such as "Developer ID Application: John Doe (XXXX123YY)"
Your App Store Connect provider ID (same as your developer's team ID)
Your App Store Connect e-mail
Your App Store Connect app-specific password, or the identifier for a keychain item in the format
@keychain:ITEMNAME

OPTIONS:
--verbose Verbose output
--check-request-id
A notarization request id. If provided, the script will skip creating the DMG and uploading it for
notarization and just keep checking for the notarization status.
-h, --help Show help information.
```

Example:

```
dmgdist ./My.app "Developer ID Application: JOHN DOE (123456ABCD)" "123456ABCD" "johndoe@gmail.com" "@keychain:JOHNDOEAPPSPECIFICPWD"
```

## Contributing

This tool is very simple and is designed to automate the process of creating, uploading and stapling a DMG for a Mac app. If you find any issues, feel free to open a pull request with the fix.

I don't plan on adding any additional features to it, so if it doesn't do something you need, feel free to fork and maintain your own copy.