arptool
is a CLI wrapper for libarp. More information will be added soon.
arptool <verb> [args] <source path>
Valid verbs are pack
, unpack
, list
, and help
.
The semantics of the source path argument vary between verbs, but the given path will always be used as input to the program of some kind.
Name | Description |
---|---|
pack |
Creates a new package, using the source path as input. |
unpack |
Unpacks the package located at the source path. |
list |
Lists the resources contained by the package located at the source path. |
Shorthand | Longhand | Description | Default |
---|---|---|---|
-? , -h |
--help |
Prints help information for the program or the provided verb if applicable. | N/A |
-o <path> |
--output=<path> |
The path to direct output files to. This must be a directory if it already exists. | The current working directory. |
The following parameters are valid only for the pack
verb.
Shorthand | Longhand | Description | Default |
---|---|---|---|
-c <type> |
--compression=<type> |
Compression type. Currently, the only supported values are deflate and none . |
none |
N/A | --deflate |
Shorthand for -c deflate . |
N/A |
-f <name> |
--name=<name> |
The name to use when generating package files. | The base name of the source directory. |
-m <path> |
--mappings=<path> |
Path to a CSV file providing supplemental media type mappings (see below for details). | (empty) |
-n <name> |
--namespace=<name> |
The namespace of the generated package. | The package name as specified by the -f flag. |
-p <size> |
--part-size=<size> |
The maximum size in bytes for part files. The value (if provided) must be at least 4096 bytes. | 0 (unlimited) |
The following parameters are valid only for the unpack
verb.
Shorthand | Longhand | Description | Default |
---|---|---|---|
-r <path> |
--resource=<path> |
Extracts a specific resource from the source package. | (empty) |
To build arptool, first clone the repository recursively and then build with CMake.
git clone --recurse-submodules https://github.com/caseif/arptool.git
cd arptool
mkdir build
cd build
cmake ..
cmake --build .
Per the specification of libarp, arptool
provides a means for user-defined media type mappings to be
supplied when creating a package. These mappings are to be defined in a 2-column headerless CSV, with the first column
containing file extensions and the second containing media types as defined by the libarp spec.
An example CSV is provided in the examples
directory of this repository.
arptool is made available under the MIT License.
libarp, the foundation of arptool, is also made available under the MIT License.
The ARP specification, which libarp implements, is made available under the Apache License, Version 2.0.