Skip to main content

max / alloy

Correct two stale Containerfile comments: the seed-name derivation gap and the font-guard claim
Author: Max Johnson <me@maxj.phd> · 2026-08-19 18:28 UTC
Signed with PGP, not checked
Commit: 55f0a4797eb96fe5b94bd36e94f74463aadf298a
Parent: 3df81c1
1 file changed, +17 insertions, -6 deletions
M Containerfile +17 -6
@@ -290,8 +290,16 @@
290 290 # percent-encoded, and a count cannot tell a complete seed from one file. So the
291 291 # names are derived from the checkout's own `bases/pins.toml`, which is the same
292 292 # file the tool reads: base id, base version and the leaf of each pinned url,
293 - # joined the way `Face::cache_name` joins them, plus the `-LICENSE.txt` a
294 - # file-pinned base caches and the `.zip` an archive-pinned one caches instead.
293 + # joined the way `Face::cache_name` joins them, plus the `.zip` an archive-pinned
294 + # base caches and the `-LICENSE.txt` a `license_url` caches.
295 + #
296 + # THE ARCHIVE BRANCH NAMES ONLY THE ZIP, and that is a gap rather than the rule.
297 + # `license_text()` in quasi-type caches `<id>-<ver>-LICENSE.txt` for any base
298 + # declaring a `license_url`, archive-pinned or not, and reads the licence out of
299 + # the zip only when there is no such url. So an archive-pinned base that also
300 + # declares a `license_url` wants a file this derivation does not name, and a seed
301 + # built to it would be one file short. Neither base is in that shape today, which
302 + # is why nothing has failed; fix the derivation on the day one is.
295 303 # Derived rather than listed here because a list would be a second copy of the
296 304 # pin, and it would go stale the first time QUASI_TYPE_REV moved to a base with
297 305 # a new version in its file names.
@@ -3521,10 +3529,13 @@
3521 3529 # `crates/alloy/tests/font_profile.rs`, so a fourth font package added up there
3522 3530 # fails the test rather than sliding past this branch.
3523 3531 #
3524 - # What would settle it properly is installing fontconfig on `server` to ask the
3525 - # charset question, and that is the payload this whole change exists to drop,
3526 - # for 784 KiB of tools to answer a question about a machine that rasterises
3527 - # nothing. Not measured here, because it cannot be: the tools are gone. The
3532 + # What would settle the charset half properly is installing fontconfig on
3533 + # `server` to ask the charset question, and that is the payload this whole
3534 + # change exists to drop, for 784 KiB of tools to answer a question about a
3535 + # machine that rasterises nothing. So it is not asked here. Only that half is
3536 + # out of reach, though: a face dropped into /usr/share/fonts by something that
3537 + # is not a package is a directory listing away and needs no fontconfig, which
3538 + # is the cheap check to reach for before wanting the tools back. The
3528 3539 # claim these queries do support is the one that matters, that this profile
3529 3540 # installs no font package at all, so the only faces on it are the base's own.
3530 3541 #