Skip to content

The project name is still the default

A new project ships with KEYSTONE_PROJECT set to keystone, and the build says so once per run until it is changed.

What it looks like

WARN: the project name is still the default "keystone"
  Set KEYSTONE_PROJECT, in project.conf or your environment, to name your own
  output.
  See https://keystone.knight-owl.dev/errors/default-project-name/

What it means

The book is unaffected. What carries the default is the name of the file it lands under: keystone-book-20260101.pdf rather than my-project-book-20260101.pdf.

It is raised before the first stage, so under strict mode it is often the first thing a build reports.

Name the project once

KEYSTONE_PROJECT=my-project in project.conf settles it for every build. The name is the project's — the title on the cover is title: in pandoc.yaml, and the two need not match.

It also names the containers

KEYSTONE_DOCKER_COMPOSE_PROJECT derives from it, so two projects left at keystone share one Docker namespace. A build in either one reuses the other's containers and volumes, and make down or make reset in either reaches both.