No description
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Paul Provost ff63dc7043 Add casty role: install the cashmeredev fork globally via npm
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-25 09:58:23 -04:00
defaults Add casty role: install the cashmeredev fork globally via npm 2026-10-25 09:58:23 -04:00
meta Add casty role: install the cashmeredev fork globally via npm 2026-10-25 09:58:23 -04:00
tasks Add casty role: install the cashmeredev fork globally via npm 2026-10-25 09:58:23 -04:00
.gitignore Add casty role: install the cashmeredev fork globally via npm 2026-10-25 09:58:23 -04:00
README.md Add casty role: install the cashmeredev fork globally via npm 2026-10-25 09:58:23 -04:00

casty

Installs casty, a real Chrome browser in the terminal (Kitty graphics protocol), from the cashmeredev fork. The fork adds the embed mode kitty-graphics.el uses; upstream is @sanohiro/casty on npm.

The repo is cloned to ~/.local/src/casty, its dependencies are installed there, and it is then installed globally with npm install -g from that folder. Installing straight from the git URL would symlink the global package into npm's temporary cache clone, which breaks when the cache is cleaned. Chrome Headless Shell itself is downloaded by casty to ~/.casty/browsers/ on first run.

Requirements

  • Node.js >= 18 and npm on the host (e.g. node from Homebrew).
  • community.general collection.
  • git, and unzip for casty's Chrome download.

Role Variables

Variable Default Description
casty_repo https://github.com/cashmeredev/casty.git Repository to clone.
casty_version main Branch, tag or commit.
casty_src ~/.local/src/casty Checkout location.
casty_npm npm npm executable.
casty_path Homebrew, /usr/local and system bin dirs PATH npm runs with, so node and sh resolve.
casty_global_become false Set true when the global npm prefix is root-owned (typical on Linux without Homebrew).

Example Playbook

- hosts: anubis
  roles:
    - role: casty

Notes

  • The global install runs only when npm ls -g doesn't list casty. To pick up new commits, re-run after the clone updates; the global link points at the checkout, so no reinstall is needed.
  • Dependencies are installed with --production.