Getting Pelican to Play Nice With Keybase
I use Keybase prove my online identiy. Of course, when I
moved my website over to pelican, I accidentally nuked my proof-of-ownership
token. Keybase requires you to host you to host a file:
.well-known/keybase.txt
. This way the world knows that the person claiming to
be me on, say, Twitter also owns www.blaschke.science. Recently I broke that by
copying my pelican-generated website into my webroot (pelican recommends using
rsync
with the --delete
option to remove unused files.).
This presents a new problem: how do I host static content without linking to
it? The answer is to pretend it's a template. I store my keybase.txt
in
/content/resources/keybase.txt
(root means pelican's root dir). And then I
add it to my TEMPLATE_PAGES
:
ARTICLE_EXCLUDES = ['resources']
TEMPLATE_PAGES = {
'resources/keybase.txt': '.well-known/keybase.txt'
}
the code above assumes you're not using ARTICLE_EXCLUDES
and
TEMPLATE_PAGES
already, if you are, then you need to append the code above
This causes the /content/resources
folder to be ignored when searching for
articles, and adding your keybase.txt
as a template. The idea here is that
your keybase.txt
is a template mapping its entire contents (unchanged) to
/output/.well_known/keybase.txt
.