Skip to content

feat: keep iTerm2-Color-Schemes in sync #32

@andreihh

Description

@andreihh

The https://github.com/mbadolato/iTerm2-Color-Schemes repository is the official source of color schemes bundled with iTerm2 (and other terminals as well, such as Ghostty). A catppuccin port was included there as part of #8.

However, there have been changes to this color scheme, which left iTerm2-Color-Schemes out of sync, and the cursor text unintelligible (see mbadolato/iTerm2-Color-Schemes#560). Although it is possible to download the canonical color scheme from this repo, it certainly feels superfluous when catppuccin is a builtin color scheme.

Ideally, there should be a CI workflow to create a pull request to iTerm2-Color-Schemes on every merged pull request to this repository.

I created mbadolato/iTerm2-Color-Schemes#560 by running the following commands locally, which could be adapted for an automated CI workflow:

git clone https://github.com/mbadolato/iTerm2-Color-Schemes
git clone https://github.com/catppuccin/iterm
cp -rf iterm/colors/catppuccin-* iTerm2-Color-Schemes/schemes/
cd iTerm2-Color-Schemes
pyenv install
pyenv virtualenv venv-iterm
pyenv activate venv-iterm
pip install -r requirements.txt
python3 tools/p3tosRGB.py schemes/catppuccin-latte.itermcolors
python3 tools/p3tosRGB.py schemes/catppuccin-frappe.itermcolors
python3 tools/p3tosRGB.py schemes/catppuccin-macchiato.itermcolors
python3 tools/p3tosRGB.py schemes/catppuccin-moccha.itermcolors
make
git checkout -b catppuccin
git add .
git commit -m "fix(catppuccin): sync catppuccin with canonical repo"

Alternatively, add contribution instructions and add syncing with iTerm2-Color-Schemes as a required step.

One of the big advantages of syncing with iTerm2-Color-Schemes is that by maintaining only one repo, we get color schemes for all popular terminals (iTerm2, Alacritty, Ghostty, XTerm, Foot, Kitty, Wezterm, etc.) "for free".

Another option would be to maintain the iterm color scheme directly in iTerm2-Color-Schemes, and either deprecate the catppuccin repos, or set up CI workflows to pull changes from iTerm2-Color-Schemes automatically, which would significantly reduce maintenance burden.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions