SamuelGalaxys's picture
Upload 1921 files
e4a10af
# 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](https://github.com/argv-minus-one/dmg-license/issues/11) for details.
## Contents
* [License](#license)
* [Command Line Usage](#command-line-usage)
* [Installation](#installation)
* [Command Syntax](#command-syntax)
* [API](#api)
## 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](LICENSE) file.
## Command Line Usage
Although this package is mainly intended for use by `.dmg`-generating tools like [node-appdmg](https://github.com/LinusU/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: <kbd>dmg-license [<var>options…</var>] <var>json-path</var> <var>dmg-path</var></kbd>
#### Parameters
<dl>
<dt><kbd><var>json-path</var></kbd></dt>
<dd>Path to a <a href="docs/License%20Specifications.md">JSON license specification</a> file.</dd>
<dt><kbd><var>dmg-path</var></kbd></dt>
<dd>Path to a disk image (`.dmg`) file.</dd>
</dl>
#### Options
<dl>
<dt><kbd>-v</kbd>, <kbd>--verbose</kbd></dt>
<dd>Show stack traces for warnings and errors.</dd>
<dt><kbd>-q</kbd>, <kbd>--quiet</kbd></dt>
<dd>Don't show warnings at all.</dd>
<dt><kbd>-h</kbd>, <kbd>-?</kbd>, <kbd>--help</kbd></dt>
<dd>Show help, without doing anything else.</dd>
<dt><kbd>-V</kbd>, <kbd>--version</kbd></dt>
<dd>Show version.</dd>
</dl>
## API
[API documentation is in the `docs/api` folder.](docs/api/index.md)