Keeping what matters

※ harddisk spinning

The Booklet has been running Rime for a while now, serving this site mostly without complaint, and for a long time that was the whole job. Lately that's changed, and it isn't just serving the site anymore; it's where the site gets made.

The disk underneath it was never encrypted, which was fine when the machine was a testbed, but stopped being fine once it started holding work I'd rather not lose or share. Rime grew an encrypted filesystem, which meant the Booklet's disk had to be repartitioned, reformatted, and encrypted before anything could be moved back onto it, all of it from Rime itself. Done carefully, because there's only one copy of anything that matters.

$ cryptvol status /Device/Disk0/Partition1
Cipher:      Adiantum-XChaCha12-AES
Data area:   sectors 2048 to 234289151, 114398 MB
Generation:  1
Slot 0:      Argon2id, 32768 KB, 2 passes, 1 lanes
Slot 1:      Argon2id, 32768 KB, 2 passes, 1 lanes
Slot 2:      free
Slot 3:      free

Rime's sshd speaks mlkem768x25519-sha256 now, which is the same instinct as everything else here: keep the machine current where it matters, and leave the rest alone.

Rime also grew a small tool called webstats, which reads the webserver's log and prints what's in it: requests, response codes, timing, the shape of the traffic. Most of what it finds is bots, scrapers, scanners, the usual noise that finds every server eventually, and the log exists either way. Looking at it is how the webserver gets better, which is the only reason to look.

It reads the log, prints what's there, and forgets.

webstats: 08 Oct 2026 - 14 Oct 2026 (UTC), 7 days, 1 file
leaving out 1 address

  Requests         891    Visitors       221    Sent        2.2 MiB
  Pages            179    Bots            90    Only errors 90 (likely scanners)
  Response  508 ms average, 10,021 ms slowest    Incomplete 1
  Over      HTTPS 398, HTTP 493

Daily                                      requests  visitors
  Thu 08 Oct                                        0         0
  Fri 09 Oct                                        0         0
  Sat 10 Oct                                        0         0
  Sun 11 Oct                                        0         0
  Mon 12 Oct                                        0         0
  Tue 13 Oct  ###########                         225        89
  Wed 14 Oct  ##############################      666       132

Status
  1xx 0  2xx 253  3xx 5  4xx 633  5xx 0

Browsers (by visitor)
  Bot              55  24.9%  #######
  Chrome           47  21.3%  ######
  Other            45  20.4%  ######
  None             26  11.8%  ####
  Safari           16   7.2%  ##
  Firefox          11   5.0%  #
  Edge              9   4.1%  #
  Tool              9   4.1%  #
  Opera             2   0.9%
  IE                1   0.5%

Systems (by visitor)
  Other           124  56.1%  #################
  Windows          40  18.1%  #####
  Android          18   8.1%  ##
  Linux            15   6.8%  ##
  iOS              14   6.3%  ##
  macOS            10   4.5%  #

Nordr builds the site in about twenty seconds now, from the Booklet, and it runs wherever Bash does, which is part of why it fits here. The number matters less than what it means: the loop is short enough to live in, and when a build takes long enough to walk away from, you stop making small changes.

So most days the workflow is this. Open Codeine, write in Markdown, save the file under nordr's project directory, run nordr build, which calls cmark on each page and drops the HTML into the webserver's public directory, where the webserver picks them up without being asked. No preview server, no deploy step, no push. The machine that serves the site is the machine that makes it.

Written by framling on Oct 14, 2026.

Text may be shared, with credit, and not for commercial use (CC BY-NC-SA).

A chapter of the Building Rime fragment.