39 lines
No EOL
2.2 KiB
Markdown
39 lines
No EOL
2.2 KiB
Markdown
# Mod file format
|
|
|
|
Mod files are the exception where they are a text-based format. They operate on a series of tags, similar to the format of email:
|
|
|
|
```
|
|
Short-Message: Added documentation
|
|
Author: Arthur Beck <averse.abfun@gmail.com>
|
|
SHA512-Hash: CF83E1357EEFB8BDF1542850D66D8007D620E4050B5715DC83F4A921D36CE9CE47D0D13C5D85F2B0FF8318D2877EEC2F63B931BD47417A81A538327AF927DA3E
|
|
Type: Addition+Documentation
|
|
GPG-Sig: (insert base64 encoded GPG signature here)
|
|
Branch: main
|
|
Objects: cf83e1357eefb8bd182e06194db125d7
|
|
Timestamp: 2025-03-18 18:52:49-05:00
|
|
--BEGIN BODY--
|
|
This mod adds documentation for mods, branches, and objects.
|
|
--END BODY--
|
|
```
|
|
|
|
The format consists of any number of tags and a body, separated by `--BEGIN BODY--` on it's own line. The file is terminated by `--END BODY--` on it's own line. The body can contain any valid UTF-8 except for the end body string. The list of available tags are:
|
|
|
|
- `Objects`: Mandatory. Lists the objects in the mod.
|
|
- `Author`: Also mandatory. Must list at least the name and email of the author. These may be redacted. Additional fields may be specified as author tags:
|
|
- `<(email)>`: Email tag.
|
|
- `<bsky:(domain)>`: Bluesky tag.
|
|
- `<masto:@uname@domain>`: Mastodon tag.
|
|
- `<alter:(tag without brackets)>`: Alternate author tag.
|
|
- `<(website)>`: Website tag.
|
|
- `Branch`: Mandatory. The branch name that the mod is made on.
|
|
- `Timestamp`: Mandatory. The creation time of the mod in RFC3339 format with a precision of seconds.
|
|
- `Type`: Optional but recommended. Contains tags(any UTF-8 string containing characters that match the regex `[0-9a-zA-Z-_]`) for what the mod does separated by `+`s. A list of suggested tags is:
|
|
- `Addition`: This mod adds something
|
|
- `Removal`: This mod removes something
|
|
- `Bugfix`: This mod fixes a bug
|
|
- `Documentation`: This mod changes documentation
|
|
- `Features`: This mod changes features
|
|
- `License`: This mod changes something about licensing
|
|
- `Short-Message`: Optional but recommended. Contains a short message containing any UTF-8 characters except for newline characters.
|
|
- `SHA512-Hash`: Optional. Hash of the mod file itself.
|
|
- `GPG-Sig`: Optional but highly recommended. Base-64 encoded GPG signature of the objects. Same order as the `Objects` tag. |