Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@ on: {pull_request: {}}
permissions: {contents: read}
jobs:
check:
uses: katoptra/lib/.github/workflows/check.yml@e18ef7d810f0a239a7f6908f55060d8e0f40ce2c # v2.6.1
uses: katoptra/lib/.github/workflows/check.yml@fbe4a0d42066b9f50a2ce5a4938889dd2c52d0f7 # v2.8.0
2 changes: 1 addition & 1 deletion .github/workflows/sync.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,6 @@ permissions:
concurrency: {group: sync, cancel-in-progress: false}
jobs:
sync:
uses: katoptra/lib/.github/workflows/sync.yml@e18ef7d810f0a239a7f6908f55060d8e0f40ce2c # v2.6.1
uses: katoptra/lib/.github/workflows/sync.yml@fbe4a0d42066b9f50a2ce5a4938889dd2c52d0f7 # v2.8.0
with: {vars: '${{ inputs.vars }}'}
secrets: inherit
7 changes: 3 additions & 4 deletions CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,10 +34,9 @@ a run did the last reconcile.
- **GNU's mirror guidelines are applicable to each page that the mirror serves.** Text must
be "as short as possible, and strictly explanatory". Images and logos are not permitted.
The only permitted link is a link for bug reports.
- **`PAGE_FOOT` is the only text that the mirror adds.** The pages in the bucket show a
change to `PAGE_FOOT` only after the engine makes all the pages again. To make all the
pages again, run `aws s3 rm s3://gnu/.state/indexed.txt.xz`. The next run then sends
approximately 2,600 PutObjects.
- **The footer is the only text that the mirror adds.** The engine makes it from `UPSTREAM`
and `HOST`. Do not set `PAGE_FOOT`. A change to `UPSTREAM` or `HOST` gets to each page at
the next run. That run sends approximately 2,600 PutObjects.
- **The bug-report link is `mailto:gnu@katoptra.org`.** That address must receive e-mail.
The mail records of the zone are not in this repository. They are in the same location as
the zone rules.
Expand Down
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -74,10 +74,9 @@ flowchart LR
moves a file. If a listing does not have more than 40,000 lines (`LIST_FLOOR`), the run
also stops. A short listing is not full, and the engine must not delete files because of
it.
- **Directory pages.** When `INDEX` has a value, the engine makes a page for each
directory. `PAGE_FOOT` is the last line of each page. This line identifies the mirror and
tells how frequently the mirror gets an update. It also gives an address for problem
reports.
- **Directory pages.** When `INDEX` has a value, the engine makes a page for each directory
of upstream, also for a directory with no file. The footer of each page gives the same
directory on ftp.gnu.org (`UPSTREAM`) as text, and an address for problem reports.
`INDEX_FILES` is `index.html index.htm`. In a directory with one of these files, the URL
of the directory serves that file, as on ftp.gnu.org.
- **The canary.** `CANARY` is `aspell/dict/0index.html`. This file has plain `http://`
Expand All @@ -102,7 +101,8 @@ example:
### 1. Fork it

1. Fork [katoptra/gnu](https://github.com/katoptra/gnu).
2. Change `HOST`, `BUCKET` and the e-mail address in `PAGE_FOOT` to your values.
2. Change `HOST` and `BUCKET` to your values. The engine makes the e-mail address for
problem reports from `HOST`. If that address does not receive e-mail, set `CONTACT`.
3. Keep `SOURCE`, or set it to a secondary mirror. GNU recommends a secondary mirror, to
decrease the load on `ftp.gnu.org`. Use an rsync address from
[GNU's mirror page](https://www.gnu.org/server/mirror.html). That mirror must have the
Expand Down
14 changes: 8 additions & 6 deletions Taskfile.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
# The values in this file are for this mirror only:
# - SOURCE, HOST and BUCKET identify the mirror.
# - CEILING_GB and LIST_FLOOR are the limits for a run.
# - INDEX and PAGE_FOOT are for the directory pages.
# - INDEX and UPSTREAM are for the directory pages.
# - CANARY and FRESH_KEY are for the checks at the end of each run. The engine also sends
# the FRESH_KEY file to the bucket last.
# - NAME and DESC are for the menu.
Expand All @@ -21,7 +21,7 @@ vars:
# SOURCE is ftp.gnu.org, the primary site of GNU. A secondary mirror gets a change
# approximately 2 h after ftp.gnu.org.
SOURCE: rsync://ftp.gnu.org/gnu/
HOST: gnu.katoptra.org # A fork changes this line and the address in PAGE_FOOT.
HOST: gnu.katoptra.org # A fork changes this line.
# BUCKET is the name of the bucket. The objects are at its root, and their keys are GNU's
# paths.
BUCKET: gnu
Expand All @@ -38,10 +38,12 @@ vars:
# INDEX_FILES are the upstream index files, in sequence. The page key of a directory with
# such a file is a copy of that file. Thus, the URL of that directory serves the file.
INDEX_FILES: index.html index.htm
# PAGE_FOOT is the last line of each directory page. In GNU's mirror guidelines, text
# must be short and "strictly explanatory". The only link that is permitted is a link for
# bug reports. That link is an email address, which must receive mail.
PAGE_FOOT: 'A mirror of https://ftp.gnu.org/gnu/, updated twice a day. Sizes in bytes, times as upstream lists them. Report a problem to <a href="mailto:gnu@katoptra.org">gnu@katoptra.org</a>.'
# UPSTREAM is the URL of this tree on ftp.gnu.org. The footer of each directory page gives
# it as text, with the path of the directory. In GNU's mirror guidelines, text must be
# short and "strictly explanatory". The only link that is permitted is a link for bug
# reports. The engine makes that link from HOST: gnu@katoptra.org, which must receive
# mail.
UPSTREAM: https://ftp.gnu.org/gnu/
# CANARY is a file with 8 http:// links. If the zone uses an HTML rewriter, the rewriter
# can change these links.
CANARY: aspell/dict/0index.html
Expand Down
Loading
Loading