Conversation
feat: add Arc themes with both light and dark versions
Add additional Monokai Pro filters
Add Guezwhoz theme
Implement Wezterm support in apply-colors.sh using Dynamic Color Escape Sequences.
Add Wezterm terminal support
YAML does not allow tabs.
fix atelier themes
Used an LLM to refactor gogh.sh to display theme names the same way on macos and linux.
refactors script to consistently display theme names
Fix Acme colour theme
✨ (theme): Add Tiwahu Dark theme configuration
…ample A personal access token raises the 60/hour unauthenticated limit to 5,000/hour for the same endpoint.
Was mistakenly tacked onto Interactive Mode's step 2; it's a separate install path, not part of the interactive flow. Now its own section between Install and Install (Non-Interactive Mode), added to the index.
…on selector Same ⚙️ emoji as Pre-Install and Install (Non-Interactive Mode), both of which correctly encode it as %EF%B8%8F -- Install was the only one using a plain hyphen instead.
Split the 20-item flat index into two grouped columns (Getting Started / Themes & Data, Help & Contributing / Project) instead of one long list -- cuts the vertical height roughly in half. Dropped the fragile invisible-spacer-image table hack in favor of valign/width on the cells. Swapped the stale themes.gif for gogh-demo.gif, which wasn't used anywhere else in the README.
Recorded fresh screenshots of the live site's Detailed view for 20 popular themes (Dracula, Nord, Gruvbox Dark, Solarized Dark, Monokai, Tokyo Night, Rose Pine, One Dark, Ayu Dark, Everforest Dark Hard, Kanagawa, Horizon Dark, Synthwave Everything, Cyberpunk Neon, GitHub Dark, Material, Palenight, Nightfly, Oceanic Next, Snazzy) via Playwright in Docker, and assembled them into a slideshow gif (1252x760 source, ~1.3s per theme, 954KB). Replaces the stale themes.gif that used to sit next to the index -- this one lives in the Themes section instead, next to the "Browse themes" link.
Keeps the index itself text-only/compact, with the new showcase gif as a visual right below it instead of inside the Themes section.
…ct it A user hit "error: unsupported SysV option" from the ps -h -o comm -p $PPID call used to walk up the process tree and detect TERMINAL when it's not already set. -h triggers BSD-vs-SysV personality detection in procps-ng that some versions reject outright when combined with -o/-p, even though it works fine on others (confirmed fine on procps-ng 4.0.4 here, but not on whatever the reporter has). Switched to the -o field= (empty header) form instead, which suppresses the header without needing -h at all. That in turn surfaced a second, real bug while testing: -o ppid= right-pads the numeric field to its column width, so a short pid can come back with a leading space; the existing code then feeds that quoted, whitespace-and-all, into the next -p "$pid" call, which errors with "improper list". Trimmed it. Verified the fixed loop end-to-end through 4 nested parent-shell layers (bash -> sh -> sh -> zsh -> real process), walking up correctly with no errors. Applied in both gogh.sh and apply-colors.sh (duplicated logic in both), plus updated apply-colors.sh's own "try this" hint message to match. task test passes (shellcheck, bats, bash -n).
Adds tests/docker/, three suites that need a real installed terminal
package/ps build/dconf session that task test can't provide, run
entirely inside disposable containers (never the host -- see the
README's "Why Docker, never the host" section, which documents why
after this project once leaked a dconf write into a real desktop
session trying to sandbox it on the host):
- run-ps-compat.sh: the ps -o comm=/-o ppid= calls used for TERMINAL
auto-detection, against procps-ng 3.3.17/4.0.2/Alpine's build.
Confirmed this regression-tests the ppid= trim fix specifically
(reproducibly breaks with "improper list" without it, on all three).
- run-gtk-terminals.sh: GNOME Terminal, MATE Terminal, Tilix -- the real
apply-colors.sh end to end via installs/dracula.sh, against real
installed gsettings schemas in a fresh dbus-run-session.
- run-file-terminals.sh: xfce4-terminal, foot, Konsole, kitty, kmscon,
Termux, Linux vt, and mintty's config-writing logic, checking the
written config file for the expected color.
Building the GTK suite surfaced a real bug: apply_gtk() had its own
pre-flight check (dconf list "${BASE_DIR%:}" non-empty) separate from
the DEFAULT_SLUG gsettings fallback from #351/#386/#552, and it happened
to keep passing for GNOME Terminal/Tilix only because their
PROFILE_LIST_KEY is a direct child of BASE_DIR -- MATE's lives under a
sibling .../global/ subtree, so the exact fresh-install case the other
fix resolved still failed this second, redundant check. Fixed by
checking DEFAULT_SLUG directly instead.
Building the file-terminals suite surfaced a second bug: apply_konsole()
never created ~/.local/share/konsole/ before writing into it -- the
touch/echo calls failed silently (no set -e in this codebase) and the
script still exited 0, so a fresh install would silently do nothing.
Fixed with a mkdir --parents.
Added `task test:docker` (bash tests/docker/run-all.sh) -- deliberately
not part of `task test`/CI: these are slower (image builds, apt-get)
and need Docker, which isn't guaranteed everywhere task test runs. Run
by hand after touching ps/dconf/gsettings/terminal-config-writing logic.
tests/docker/README.md documents what's covered, what isn't and why
(Guake, Alacritty/Terminator, Wezterm, Ghostty, Pantheon/elementary,
iTerm2), and the two bugs above as the reason this exists.
Same *.md blanket-ignore pattern caught this like it caught the docs/ files earlier -- add the same explicit exception.
Extends the Docker integration suites to the remaining terminals that can realistically be tested this way. Alacritty and Terminator go through their Python helpers (now installed via requirements.txt in the file-terminals image); Ghostty just needs its config file checked, no package required; Guake gets its own check in gtk-terminals since it writes straight into guake.style.font instead of a profile list. Building the Terminator case surfaced a real bug: apply-terminator.py's backup_conf() unconditionally copies the existing config to back it up, but crashes with an unhandled FileNotFoundError when Terminator has never been launched before and no config file exists yet. Fixed by skipping the backup when there's nothing to back up. Updates the README's Docker test column and tests/docker/README.md accordingly.
The Docker suites in tests/docker/ only ever exercise the Dracula theme against each terminal, so a bug specific to another theme's installs/*.sh (missing var, unusual value) would go unnoticed. Adds a lightweight bats check (dracula, aci, 1984-dark, cobalt2, min-dark) against foot only, since apply_foot() creates its own config from scratch with no dconf and no external package required -- runs safely on the host, no Docker needed. Each assertion compares against that theme's own COLOR_01/BACKGROUND_COLOR value (not a hardcoded needle), so it fails the same way regardless of which theme's pipeline breaks.
The website now lives in its own repo (Gogh-Co/gogh-website) with a self-contained deploy workflow, so this is no longer called by anyone.
gogh-co.github.io/Gogh was frozen on its last build after the deploy workflow moved to gogh-website. Replace it with a minimal page that redirects visitors to gogh.website.
…tor, Ubuntu 24.04, WSL, xfce4-terminal, and Debian uuid-runtime Document only actionable, command-oriented resolutions from issues not previously covered. Omit issues already fixed on master with no remaining troubleshooting step.
…tor, Ubuntu 24.04, WSL, xfce4-terminal, and Debian uuid-runtime Document only actionable, command-oriented resolutions from issues not previously covered. Omit issues already fixed on master with no remaining troubleshooting step.
SilkCircuit is a design system that shares one palette across Neovim, VS Code, Chrome, and terminals. These five files are its terminal ANSI schemes. Neon, Vibrant, and Soft step down in saturation, Glow is the ultra-dark variant for OLED and low light, and Dawn is the light one. Values match the Ghostty and Kitty configs shipped by the upstream project, with hex uppercased to fit the validator. Only themes/ is touched; generated output is left to CI. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01WAKpAw1biNtpxi3VEb37Nw
Ubuntu 22.04's apt bats (1.2.1) predates BATS_TEST_TMPDIR, so the variable expands empty and mktemp/mkfifo templates resolve to the filesystem root, failing with permission denied.
theme: Add SilkCircuit
…ss/silkcircuit" Source commit: 7298609
Vaporwave Control Room: A terminal theme for when the LLM is confidently not listening.
theme: add Cyan Day and Cyan Night
…lej/improve-vaporwave-control-room" Source commit: e420eca
theme: Add X theme family (12 palettes)
…r/x-theme-family" Source commit: 02e013b
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
See Commits and Changes for more details.
Created by
pull[bot] (v2.0.0-alpha.4)
Can you help keep this open source service alive? 💖 Please sponsor : )