Skip to content

Add Wezterm auto-theming support#6104

Open
AndrewGaspar wants to merge 1 commit into
basecamp:devfrom
AndrewGaspar:wezterm-theming
Open

Add Wezterm auto-theming support#6104
AndrewGaspar wants to merge 1 commit into
basecamp:devfrom
AndrewGaspar:wezterm-theming

Conversation

@AndrewGaspar

@AndrewGaspar AndrewGaspar commented Jun 16, 2026

Copy link
Copy Markdown

Wire Wezterm into Omarchy's theming pipeline alongside alacritty, kitty, ghostty, and foot.

Wezterm is a terminal emulator which notably supports mux-ed pane and window remoting over a single ssh or et connection, allowing for a tmux-like experience that is fully integrated into the user's window manager.

  • config/wezterm/wezterm.lua: base config that loads the current theme's colors via dofile from ~/.config/omarchy/current/theme/wezterm.lua, with the tab bar enabled (retro tab bar so themed colors apply fully)
  • default/themed/wezterm.lua.tpl: theme template emitting a config.colors table (including a themed tab_bar) from the shared colors.toml tokens, auto-rendered by the existing omarchy-theme-set-templates glob
  • omarchy-restart-terminal: touch wezterm.lua to trigger Wezterm's config auto-reload (it has no external reload signal like kitty/ghostty)

This implementation currently requires the user to opt-in by either copying ~/.local/share/omarchy/wezterm to ~/.config/wezterm, or adding this line to their existing wezterm config:

local theme = wezterm.home_dir .. '/.config/omarchy/current/theme/wezterm.lua'

Wezterm packaging for Arch is currently quite dated, so I wouldn't recommend including Wezterm as a second-class installable terminal from Omarchy -> Install -> Terminal at this time.

EDIT:
Demo Video

screenrecording-2026-06-16_17-50-18.mp4

Wire Wezterm into Omarchy's theming pipeline alongside alacritty, kitty,
ghostty, and foot.

- config/wezterm/wezterm.lua: base config that loads the current theme's
  colors via dofile from ~/.config/omarchy/current/theme/wezterm.lua, with
  the tab bar enabled (retro tab bar so themed colors apply fully)
- default/themed/wezterm.lua.tpl: theme template emitting a config.colors
  table (including a themed tab_bar) from the shared colors.toml tokens,
  auto-rendered by the existing omarchy-theme-set-templates glob
- omarchy-restart-terminal: touch wezterm.lua to trigger Wezterm's config
  auto-reload (it has no external reload signal like kitty/ghostty)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings June 16, 2026 23:48

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Note

Copilot was unable to run its full agentic suite in this review.

Adds WezTerm integration for Omarchy by introducing a theme template + a WezTerm config that loads the generated colors, and updates the terminal-restart helper to trigger WezTerm reloads.

Changes:

  • Add a WezTerm color scheme template for Omarchy themes
  • Add a WezTerm config that dynamically loads the generated theme file
  • Update restart script to trigger WezTerm configuration reload via file mtime change

Reviewed changes

Copilot reviewed 2 out of 3 changed files in this pull request and generated 1 comment.

File Description
default/themed/wezterm.lua.tpl New template that emits a WezTerm colors table from Omarchy theme variables
config/wezterm/wezterm.lua New WezTerm config that loads the generated theme file and applies it to config.colors
bin/omarchy-restart-terminal Touches WezTerm config to prompt a live reload after theme changes

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.


-- Dynamic Omarchy theme colors (regenerated on every `omarchy theme set`)
local theme = wezterm.home_dir .. '/.config/omarchy/current/theme/wezterm.lua'
local ok, colors = pcall(dofile, theme)

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

take a look at the configs for alacritty, foot, and kitty and see if they use something other than dofile

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