flake: Add a 'production' package
The production package will be what actually goes live on
https://aasg.name. At the moment, the two differences from the default
package are the inclusion of Matrix-related well-known links (which only
make sense on the live domain) and the Brotli compression of HTML/CSS/JS
files. No more changes should happen aside from more well-known links.
haunt: Copy over anything in the static directory
Rather than specify directories individually in haunt.scm and risk
forgetting to update it when we add a new subdirectory in the future,
just scoop it up as a whole.
pages/dn42: Remove mention of Charybdis as IPv4-only
Since nixos-configurations@c00b0c7c8c3f, we're now using Oracle Cloud's
just-announced IPv6 support instead of Hurricane Electric's tunnel,
which means peers can now connect over IPv6 without first travelling
Set post dates in UTC
There was some confusion as to whether to tag post dates in UTC
or in the local timezone. After reading Guile's SRFI-19 docs
and experimenting on the REPL, I've determined that Haunt will
read post dates in the local timezone by default, but since that's
UTC in the Nix build environment, our post dates too must be in UTC.
New post: lri-log-2021w14
pages/dn42: Add host 'chernava'
posts/lri-log-2021w13: Fix caddy-reimport.path
The path unit as written is not started on boot and does not trigger
on symlink changes. Fix both issues.
haunt: Reword license statement in the footer
Now that we have a work name, we can follow the Creative Commons default
text more closely.
haunt: Link to source commit in the site footer
New post: lri-log-2021w13
css: Unfix the header bar from the viewport
Fixing its interaction with direct section links, and how the fix
interacts with links in the paragraph before a heading, wasn't worth
the total effort that would be spent on it. Maybe if I someday add one
of those reading trackers for long-form articles (of which I have none)
I'll revisit this.
New post: lri-log-2021w12
flake: Provide an empty install phase
If `dontInstall` is enabled, the install hooks are not run. We'll be
needing those elsewhere so provide an install phase that just run the
flake: Run build phase hooks
Despite [RFC 32] being accepted, it doesn't seem to have been
implemented yet, so we need to call the pre- and post-build hooks
[RFC 32]: https://github.com/NixOS/rfcs/blob/master/rfcs/0032-run-phase-changes-for-better-nix-shell-use.md
posts/dn42: Document ULA peer addresses
It's possible we'll have to define a per-router suffix hextet to avoid
collisions later on, as the addresses are globally routable, but until
we peer using ULA addresses with a single network in more than one
place, `:1` will suffice.
css: Lay out definition lists horizontally on large screens
posts/dn42: Note new deterministic port range policy
For ASNs in the 4242420000 to 4242423999 range (dn42's currently active
range), peers can use ports 50000 to 53999 respectively. I'll be moving
my current peers away from the 545xx range and into the new one so that
it can be used for cases not covered by the policy.
ci: Perform DNS updates via TCP
We're using HAProxy to provide IPv4 connectivity towards ns1.aasg.name,
and it does not support UDP.
This is enabled by sourcehut:~aasg/nixos-configurations@deba8a94a886.
flake: Make output deterministic
Patch timestamps to align with the timestamp of the latest commit, and
fix a namespace-like URL to not include a random UUID.
I considered using libfaketime but it made reuse hang, and with just two
timestamps it may have been too heavy-handed anyway.
self.rev is not available when the Git worktree is dirty, but that
should not be a problem for published builds.
posts/dn42: Update host link width and note IPv4/IPv6 support