feat: add optional Spicetify Material You theming for Spotify#80
Open
yukazakiri wants to merge 12 commits intosnowarch:mainfrom
Open
feat: add optional Spicetify Material You theming for Spotify#80yukazakiri wants to merge 12 commits intosnowarch:mainfrom
yukazakiri wants to merge 12 commits intosnowarch:mainfrom
Conversation
… swap Instead of dealing with missing/dynamic kitty sockets (/tmp/kitty-<PID>) and missing --configured flags on 'kitty @ set-colors' (which caused new tabs to spawn with the old theme), we now use Kitty's native config reload mechanism via SIGUSR1. Sending SIGUSR1 to all kitty processes forces them to reload kitty.conf, which seamlessly re-evaluates 'include current-theme.conf', instantly updating both running windows and the tab bar, and correctly updating the internal palette so future tabs/windows inherit the new theme. To eliminate race conditions when Kitty reads the file exactly as it is being written, we write the config to a secondary file and perform an atomic mv on a symlink swap. Additionally, --signal SIGUSR1 is explicitly used in the pkill command for maximal portability.
fix(kitty): update tab bar colors live via SIGUSR1 config reload
- add `enableSpicetify` config flag (default off) - expose Spotify theming toggle in both settings UIs - generate/apply Spicetify theme from wallpaper colors in color pipeline
- Move declare -A COLORS to global scope (fixes undefined variable bug) - Remove redundant local declaration in generate_color_ini - Ensures colors are properly read from colors.json and applied to theme
- Changed THEME_NAME from 'Sleek' to 'Inir' - Updated log messages to reflect new theme name - CSS still downloaded from Sleek as base (provides styling foundation) - Theme directory now: ~/.config/spicetify/Themes/Inir/
Contributor
Author
|
Ohh Shoot sorry it sseems my merge from my branch was inclulded XD, feel free to check if you like it, and just cherry pick it anyway im satisfied on my spotify now |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
enableSpicetifyconfig flag (default off) for opt-in Spotify themingspicetify watch -s- no Spotify restarts on wallpaper changeMotivation
Spotify's default theming doesn't integrate with system color schemes. This PR enables automatic Material You color theming for Spotify via Spicetify, with live updates when wallpaper changes without restarting Spotify. Uses custom "Inir" theme for brand consistency.
here is the result
compressO-recording_2026-03-10_20.20.28.mp4
Testing Steps to verify this works:
enableSpicetify: truein config.json~/.config/spicetify/Themes/Inir/color.iniis generatedpgrep -f "spicetify watch"Checklist
~/.local/state/quickshell/user/generated/spicetify_theme.logRelated
Implements Spicetify theming integration requested by users wanting consistent Material You colors across all desktop applications.