Skip to content

Generate license agreements for macOS .dmg files

License

Notifications You must be signed in to change notification settings

argv-minus-one/dmg-license

Repository files navigation

dmg-license

A TypeScript/JavaScript library and command-line tool for attaching license agreements to macOS .dmg files, which the user must accept before mounting the disk image. Doing this correctly is surprisingly complicated, so this package is here to automate it.

Warning: Attaching license agreements to disk images may become impossible in future versions of macOS. It is done using the hdiutil udifrez command, which is deprecated as of macOS 12 with no apparent replacement. See issue #11 for details.

Contents

License

dmg-license itself is provided under the terms of the MIT license. You can find the text of the MIT license in the LICENSE file.

Command Line Usage

Although this package is mainly intended for use by .dmg-generating tools like node-appdmg, it can also be used by itself from the command line, to attach a license agreement to an existing .dmg file.

Installation

You can install this package and use the command-line tool by running npm install --global dmg-license. This will add a dmg-license command to your system.

Alternatively, you can run it without installing, using npx dmg-license. Note that running it this way is relatively slow.

Command Syntax

Usage: dmg-license [options…] json-path dmg-path

Parameters

json-path
Path to a JSON license specification file.
dmg-path
Path to a disk image (`.dmg`) file.

Options

-v, --verbose
Show stack traces for warnings and errors.
-q, --quiet
Don't show warnings at all.
-h, -?, --help
Show help, without doing anything else.
-V, --version
Show version.

API

API documentation is in the docs/api folder.