This repository is meant to work with base16 from Tinted Theming. It provides a hook and template that can be used to dynamically load base16 color schemes in sway.
Clone the repository:
git clone https://github.com/freddiehaddad/base16-sway.git ~/.config/base16-sway
Copy the hook to your base16-shell hooks directory:
cp ~/.config/base16-sway/hooks/20_sway.sh ~/.config/base16-shell/hooks
Re-run your base16 theme to execute the hook:
base16_tokyo-night-dark
Verify the hook created the symbolic link to the correct template:
sway.base16.conf ⇒ /home/.../.config/base16-sway/themes/base16-tokyo-night-dark.config
In your sway configuration file (near the top), import the theme:
include $HOME/.config/tinted-theming/sway.base16.conf
Then, below the color scheme import, set the colors:
# Basic color configuration using the Base16 variables for windows and borders.
# Property Name Border BG Text Indicator Child Border
client.focused $base05 $base0D $base00 $base0D $base0D
client.focused_inactive $base01 $base01 $base05 $base03 $base01
client.unfocused $base01 $base00 $base05 $base01 $base01
client.urgent $base08 $base08 $base00 $base08 $base08
client.placeholder $base00 $base00 $base05 $base00 $base00
client.background $base07
If you use a statusbar, paste following block in the bar section in your config:
colors {
background $base00
separator $base01
statusline $base04
# State Border BG Text
focused_workspace $base05 $base0D $base00
active_workspace $base05 $base03 $base00
inactive_workspace $base03 $base01 $base05
urgent_workspace $base08 $base08 $base00
binding_mode $base00 $base0A $base00
}
If sway is running, the hook will send the message swaymsg reload
to update
the theme.
If you're also using base16-waybar, make sure the waybar hook runs first. Otherwise, sway might reload the config before waybar is updated.