Support mirrors within

This commit is contained in:
fosslinux 2024-12-27 16:04:03 +11:00
parent 88ea21dfc9
commit df1c9e9aba
39 changed files with 159 additions and 83 deletions

View file

@ -84,3 +84,31 @@ libraries that are compiled and installed.
- Patches are licensed under the license of the project which they are
patching.
- All files (excluding files within submodules) must comply with REUSE v3.0.
## `sources` file
The format of the sources file for a HTTP source file is:
```
<url> <checksum> [filename]
```
For a Git repository snapshot:
```
<git url> <URL to HTTP snapshot> <checksum> [filename]
```
The format of a git url must always be `git://<path to repository>~<reference>`.
`reference` is, for instance, a commit, tag or branch. Always use
Git protocol path, except for GitHub, in which `git://` is automagically
changed to `https://`.
The URL to HTTP snapshot may be `_` (a single underscore) if no HTTP snapshot
exists. In this case, the filename is compulsory. The checksum is of the Git
snapshot, generated with `git archive`. See `mirror.sh` for more detailed rules.
Some specific helpful things:
- prefer `.tar.gz`
- For GitHub, all snpashots are generated with long commit IDs, so use long
commit IDs.