Skip to content

feat(herdr): add Noctalia theme template - #80

Merged
ItsLemmy merged 1 commit into
noctalia-dev:mainfrom
mdj2812:feat/herdr-template
Aug 26, 2026
Merged

feat(herdr): add Noctalia theme template#80
ItsLemmy merged 1 commit into
noctalia-dev:mainfrom
mdj2812:feat/herdr-template

Conversation

@mdj2812

@mdj2812 mdj2812 commented Aug 12, 2026

Copy link
Copy Markdown
Contributor

Summary

  • add a community template that maps Noctalia colors onto herdr's complete custom UI palette
  • safely merge managed colors into [theme.custom] while preserving the user's remaining configuration
  • reload a running herdr server after palette changes and document initial setup

Template

  • App: herdr
  • Template id (directory): herdr
  • New template
  • Update to an existing template

What it themes

Renders Noctalia's surface, text, accent, and terminal status colors to $XDG_CONFIG_HOME/herdr/noctalia-colors.toml. The hook merges those values into herdr's [theme.custom] table so panels, selections, labels, and agent states follow the active Noctalia palette.

Test plan

  • App version tested: herdr 0.8.0
  • Validated all 47 template manifests
  • Tested configs with and without an existing [theme.custom] section
  • Confirmed existing settings and unknown custom keys are preserved
  • Confirmed repeated hook application is idempotent
  • Confirmed malformed inline custom tables fail without modifying the config
  • Applied locally as a Noctalia user template and confirmed herdr picked it up
  • Applied both a dark and light theme and visually confirmed each

Screenshots

image image

Hooks

  • What the hook does: merges rendered colors into [theme.custom], preserves unrelated settings, and asks a running herdr server to reload its config.
  • It is idempotent: running it twice does not duplicate lines or corrupt the config.
  • It fails loudly (non-zero exit, message on stderr) when the app's config is missing.
  • It downloads nothing and executes nothing it did not ship in this directory.
  • It touches only this app's own config.

Checklist

  • The directory name matches the [catalog.<id>] id in template.toml.
  • category is an allowed category.
  • Every input_path names a file that exists in this directory.
  • No generated output or app-specific personal config is committed.

Made with Cursor

Co-authored-by: Cursor <cursoragent@cursor.com>
@mdj2812
mdj2812 marked this pull request as ready for review August 12, 2026 03:44
@kurtlieber kurtlieber mentioned this pull request Aug 15, 2026
13 tasks
@ItsLemmy
ItsLemmy merged commit 8c66fb1 into noctalia-dev:main Aug 26, 2026
@mdj2812
mdj2812 deleted the feat/herdr-template branch August 27, 2026 01:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants