Skip to main content

Your terminal, but make it cozy. One command to install a curated, Catppuccin-themed dev setup — Ghostty, Starship, eza, tmux, NeoVim, and more.

Project description

cosyTerm

Your whole terminal stack, themed in one command.
Ghostty, your shell, Starship, eza, tmux, NeoVim — all Catppuccin Mocha, fully reversible.

PyPI CI License Platform

cosyTerm screenshot


Install

pip install cosyterm
cosyterm

Launches an interactive wizard. Pick which tools to install, choose your font and shell, then review every shell command that will run before a single thing happens. One final Enter executes the whole plan. About two minutes. Existing configs are moved to a timestamped backup first, so cosyterm restore --latest reverses the whole run.

Prefer the old step-by-step prompts (or running in a non-TTY environment like CI)? cosyterm --classic.

What you get

Tool What it does
Nerd Font 10 patched fonts — JetBrains Mono, Commit Mono, Cascadia Code, and more
Ghostty GPU-accelerated terminal emulator by Mitchell Hashimoto
Fish or Zsh Fish (recommended) or Zsh (POSIX-compatible)
Starship Cross-shell prompt — git, language versions, right-aligned and clean
eza ls with icons, colors, git status, and tree views
tmux Terminal multiplexer with pastel status bar at top
NeoVim + LazyVim IDE-grade editor, pre-configured, zero setup

Changing your font

Pick any of the 10 bundled Nerd Fonts at install time, or switch later.

Switch to a different bundled font

cosyterm install font

Re-runs just the font step. Select a new one from the menu; cosyterm installs it and rewrites the font-family line in ~/.config/ghostty/config automatically. Restart Ghostty to pick it up.

Use a font you installed yourself

Edit ~/.config/ghostty/config and change the font-family line to your font's family name (the same string Ghostty expects — e.g. font-family = MyFont Nerd Font Mono). Restart Ghostty.

Scripted / non-interactive

COSYTERM_FONT_CHOICE=0xProto COSYTERM_YES=1 cosyterm install font

Valid keys: JetBrainsMono, CommitMono, CascadiaCode, Hack, FiraCode, 0xProto, Monofur, OpenDyslexic, Agave, Hasklig, or skip.

Docs

  • Safety model — every command that runs, every URL fetched, every sudo — plus backups and blast-radius guarantees.
  • Recoverycosyterm doctor, cosyterm restore, and the --dry-run preview.
  • Automation — scripted installs (COSYTERM_YES=1, COSYTERM_NVIM_CHOICE), re-running a single step, and the Python API.
  • Design philosophy — why cosyTerm is opinionated and what it won't add.

Try it. If it's not for you, cosyterm restore --latest puts everything back.

Requirements

macOS or Linux · Python 3.8+ · bash · git · Homebrew (macOS) or apt/dnf/pacman (Linux)

Contributing

Open source contributions are welcome. Before adding a new tool or feature, open an issue to discuss it — see CONTRIBUTING.md.

Credits

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cosyterm-0.5.0.tar.gz (44.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cosyterm-0.5.0-py3-none-any.whl (45.9 kB view details)

Uploaded Python 3

File details

Details for the file cosyterm-0.5.0.tar.gz.

File metadata

  • Download URL: cosyterm-0.5.0.tar.gz
  • Upload date:
  • Size: 44.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for cosyterm-0.5.0.tar.gz
Algorithm Hash digest
SHA256 9a1301ab775bbdb39ff6edd21d38c7a5256b7d4235189be84a4a8aab1d6efb56
MD5 53f2b65205fabae0edffbe895d5e0df5
BLAKE2b-256 4d989c61a1c1618212770ef145aca003057e2990be5f1628698b69eb433110f3

See more details on using hashes here.

File details

Details for the file cosyterm-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: cosyterm-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 45.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for cosyterm-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 33754c0bb67b38fa3162c558b56906bd8599975ab1287a8a18165d65e76f5eea
MD5 a8137a1671c0b1af1d45978d6a108049
BLAKE2b-256 b89c83f50a915c2baf32872209572fa455b2f1f7f38edf6ddae51b107bcb0396

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page