A simple cli tool for applying wal generated colors to spicetify. I built this purely for personal use.
I haven't done any testing but it works on my machine (i use arch btw)...
Built in rust
pywal-spicetify
is called inside my waypaper config.
post_command = wal -i $wallpaper && pywal-spicetify text && killall -SIGUSR2 waybar
2024-07-26.09-32-19.mp4
pywal-spicetify
requires a fork of pywal calledpywal-16-colors
Here is the repo. Support for defaultpywal
may be added later. (I created an issue for this but I probably won't ever get to it)- Obviously you will need `spicetify' installed with at least one theme.
To install rom the AUR run:
yay -S pywal-spicetify
From Source
git clone https://github.com/jhideki/pywal-spicetify
cd pywal-spicetify
cargo build --release
cp target/release/bin/pywal-spicetify <wherever you want to save the progra>
export PATH=$PATH:<where you saved pywal-spicetify>
Usage: pywal-spicetify [OPTIONS] <theme>
Arguments:
<theme>
Options:
-r, --reset
-h, --help Print help
-V, --version Print version
E.g. to apply wal colors to the Dribblish theme run:,
pywal-spicetify Dribbblish
-r
or --reset
will delete colors-spicetify.ini
and remove the configuration from .config/spicetify/Themes/<theme>/colors.ini
pywal-spicetify is meant to be called whenever you change wallpapers. Here is how it is set up with waypaper
and the text theme
[Settings]
language = en
folder = ~/dotfiles/wallpapers
wallpaper = ~/dotfiles/wallpapers/wp5089612-scenery-anime-wallpapers.jpg
post_command = wal -i $wallpaper && pywal-spicetify text && killall -SIGUSR2 waybar
Colors can be configured from .confiig/wal/templates/colors-spicetify.ini
colors-spicetify.ini
will be auto-generated upon running pywal-spicetify
or the first time.
accent = {color0.strip}
accent-active = {color2.strip}
accent-inactive = {color3.strip}
banner = {color4.strip}
border-active = {foreground.strip}
border-inactive = {foreground.strip}
header = {foreground.strip}
highlight = {color6.strip}
main = {background.strip}
notification = {color7.strip}
notification-error = {color8.strip}
subtext = {cursor.strip}
text = {cursor.strip}