Linux

Where Does pywal Store Generated Color Schemes?

pywal generates color schemes into ~/.cache/wal with colors.sh, sequences, and per terminal templates applied from your wallpaper.

Last updated

pywal reads a wallpaper and writes a full terminal palette into ~/.cache/wal. The headline files are colors.sh for shells, sequences for live terminal recoloring, and colors.json for scripts. Templates for specific programs render from the same source.

Everything downstream is a copy, so the cache folder is the single place to inspect or back up. Deleting it just reverts terminals to defaults until wal runs again. Version 3.3 changed some file layouts, so old blog snippets may reference retired names.

Where pywal stores this, by platform

Linux
~/.cache/wal

Generated palette: colors.sh, sequences, colors.json, and rendered templates. Source colors.sh from shell rc. Regenerate with wal -i after wallpaper changes.

Frequently asked questions

How do I change my pywal theme?

Run wal -i with a new image path to regenerate everything at once. The cache files update together so terminals stay consistent. Add the command to your startup scripts for persistent theming across reboots.

How do I use pywal colors in my shell?

Source ~/.cache/wal/colors.sh in your shell rc to export wallpaper, background, foreground, and color0 through color15 as variables. New shells pick them up automatically. Terminal templates consume the same files.

Notice an outdated path? Let us know.