sites/flux.vision
randogoth 4efe975599 fix: recover one hotlinked image, retire the other eleven
Twelve images across seven articles were hotlinked from servers that no longer
exist, so they were broken on the live sites. Checked every one against the
Wayback Machine, patiently enough to trust the answer: an earlier pass appeared
to find seven, but that was a test treating an empty response as a hit.

One survives. visualberlin.org's p1010789, a 2011 capture of the projector set
up against Mannheim city hall during the Flimmerkiste wildscreening, is now a
local asset in flux.vision/content/library/ and the reference points at it.

The other eleven were never captured. Both dead domains are archived, so this is
not a gap in coverage: of 8,438 visualberlin.org URLs and 204 for mutanten.org,
only that one image is there. mutanten.org's archive does not reach back to its
fp-content era at all, which is where the Logan's Run stills lived.

So lostimages.py learns about dead hosts, which it matches rather than fetching,
because a build must not depend on the network and a dead host is a fact about
the world rather than about the document. The references stay in the Markdown,
as the existing ones do: the reference records what was there.

It matters more on the capsule than on the web. A browser shows a broken image
as a silent gap, but gemtext has no inline images, so every one becomes a
visible => link line and the page would advertise a dead host as somewhere worth
going. smolnet.py therefore strips them too, reading the same host list, since
it works on the Markdown source and never sees Pelican's output.

lostimages.py moves to the repo-level plugins/ directory beside smolnet. It was
shared already, with flux.vision reaching into tobias.raayoni-last.com for it,
and randogoth.com now needs it too; a shared plugin living inside one site was
the wrong shape for three consumers.

Left alone deliberately: the two mutanten.org links in mutantenkino-website.md.
That entry is about having built the site, so the link is its subject rather
than decoration, and a dead link does not make the record wrong.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-10-06 11:04:28 +03:00
..
content fix: recover one hotlinked image, retire the other eleven 2026-10-06 11:04:28 +03:00
flux feat: add favicons for all three sites 2026-10-06 09:04:50 +03:00
plugins Three sites, one directory each 2026-10-05 20:54:45 +03:00
pelicanconf.py fix: recover one hotlinked image, retire the other eleven 2026-10-06 11:04:28 +03:00
README.md Three sites, one directory each 2026-10-05 20:54:45 +03:00

flux.vision, Kiritan Flux

The VJ and media-art career, 2003-2021, under the name Kiritan Flux. A closed body of work: maintained, not updated. See REFACTOR.md §B in the working material.

Recovered from the Wayback Machine, since no local copy survived (checked and ruled out on the cargo backup SSD). 89 articles and 232 images are in; the date-bounded CDX query and the curl -sL gotcha are documented in REFACTOR.md §B.

Only the media-arts half lives here. Client and commercial credits went to ../tobias.raayoni-last.com/.

Building

uv run --quiet --with pelican --with markdown -- pelican content -o output -s pelicanconf.py

pelicanconf.py reproduces the original URL scheme exactly, so archived and inbound links resolve rather than 404: flat {slug}.html articles, /section/, /tag/, /info/.

Sections

veejay 28 · performance 18 · installation 18 · blog 15 · curation 9 · sound 1

blog is excluded from the work listings (WORK_EXCLUDE) and has its own nav item, because those entries are reports and essays rather than engagements.

kiritanflux.md publishes as /signing-off.html, since Pelican derives the slug from the title. It is the closing post and carries the full 114-entry gig history, 2003 to 2021, across 11 countries.

Plugins

Plugin Does
tileweight.py sizes each timeline tile from the entry itself: images, video, word count
lostimages.py drops <img> and wrapping links whose file did not survive, leaving a comment naming it
assetcheck.py flags Thumb:/Background: whose file is missing, so templates render a typographic card

assetcheck.py is shared from ../tobias.raayoni-last.com/plugins/.

What did not survive

78 images are gone for good and Wayback holds no capture of them: 15 camera originals on an offline drive, 16 client logos, 21 Bild-NN.png screenshots, and the rest one-offs. The Markdown keeps the original references, because the reference records what was there. 19 tiles therefore show static rather than a thumbnail, and 22 in-article images are stripped at build time.

content/images/ is empty, so anything referencing /images/ is among the losses.

Theme notes

Three layout traps, all of which fail silently:

  • The gutter must not use vw. overflow-y: scroll always shows a scrollbar, vw counts it, and anything full-bleed then overflows by the scrollbar width and the page scrolls sideways.
  • Direct children of .container must set padding with the -top/-bottom longhand. A padding: shorthand has the same specificity as the gutter rule and comes later in the file, so it resets the gutter to zero and text sits flush against the screen edge.
  • The nav panel occupies one corner, so it gets a lane on one side only. Symmetric gutters large enough for the panel crush the column at tablet widths.