Files
jcoffey-dev 81adcf107b
ci / publish (pull_request) Skipped
ci / docker-build (pull_request) Successful in 16m39s
Add the coffeylabs theme and the image build
The coffeylabs theme brings coffeylabs.org's palette, type and blueprint
grid to Mastodon. It loads the stock stylesheet and then overrides
Mastodon's color tokens for both color schemes, adds Bricolage Grotesque
and JetBrains Mono (OFL, served from the instance), and replaces the
navigation wordmark. The default theme stays available to users.

Small upstream changes, each with a modification notice: themes.yml
registers the theme, themes.rb sets the dark browser-bar color, and the
Dockerfile takes SOURCE_BASE_URL and SOURCE_TAG so "View source code"
points at this repository, as the AGPL expects.

Upstream's GitHub workflows are removed. .gitea/workflows/ci.yml builds
the image on every change and publishes it, with a release, from tags
named v<upstream>-coffeylabs.<n>. COFFEYLABS.md lists every change.
2026-10-05 22:07:52 -07:00

1.8 KiB

Coffey Labs build of Mastodon

This repository is Mastodon with one addition: the coffeylabs theme, the palette, type and blueprint grid of coffeylabs.org. It is what runs on linuxexpert.org. Everything else is upstream Mastodon, unchanged, under the same license (AGPL-3.0, see LICENSE).

How it tracks upstream

Upstream releases come in as snapshots, not as a merged history: the upstream branch holds one unmodified "Import Mastodon vX.Y.Z" commit per release, and each import is merged into main through a pull request.

What is changed

Added (new files, Coffey Labs, 2026-10-06):

  • app/javascript/styles/coffeylabs.scss and app/javascript/styles/coffeylabs/ -- the theme. It loads the stock stylesheet, then overrides Mastodon's color tokens and adds the fonts and surfaces. Users can still pick Mastodon's default theme in their appearance preferences.
  • app/javascript/fonts/coffeylabs/ -- Bricolage Grotesque and JetBrains Mono, both under the SIL Open Font License (license files alongside).
  • .gitea/workflows/ci.yml -- builds the image on every change and publishes it from release tags.
  • This file.

Modified (each carries a notice at the top):

  • config/themes.yml -- registers the coffeylabs theme.
  • app/lib/themes.rb -- the dark browser-bar color matches the theme.
  • Dockerfile -- SOURCE_BASE_URL and SOURCE_TAG build arguments, so the "View source code" link points at this repository.

Removed: upstream's .github/workflows, which run upstream's own CI.

Releases

A tag named v<upstream>-coffeylabs.<n> (e.g. v4.7.3-coffeylabs.1) publishes the mastodon image for linux/amd64 to this repository's packages. The streaming server is unchanged, so use upstream's mastodon-streaming image at the same upstream version.