dotfiles/dot_config/sketchybar/executable_sketchybarrc

133 lines
2.9 KiB
Bash

#!/usr/bin/env bash
# vim:fileencoding=utf-8:foldmethod=marker
PLUGIN_DIR="$HOME/.config/sketchybar/plugins"
## bar appearance {{{
sketchybar --bar \
height=32 \
blur_radius=10 \
position=top \
padding_left=0 \
padding_right=4
# colors are managed seperately in the colordummy,
# which listens to theme_changed events,
# to swap between Catppuccin Mocha and Latte
sketchybar -m --add event theme_changed AppleInterfaceThemeChangedNotification
sketchybar \
--add item colordummy left \
--set colordummy \
drawing=off \
script="$PLUGIN_DIR/colordummy.sh" \
--subscribe colordummy theme_changed
##### Changing Defaults #####
sketchybar --default \
updates=when_shown \
drawing=on \
icon.font="Symbols Nerd Font:2048-em:18.0" \
label.font="Inter:Regular:16.0" \
label.padding_left=1 \
label.padding_right=1 \
icon.padding_left=8 \
icon.padding_right=8
# }}}
## left side of the bar {{{
# spaces for yabai wm
SPACE_ICONS=(
" "
" "
" "
" "
" "
" "
" "
" "
" "
" "
)
for i in "${!SPACE_ICONS[@]}"
do
sketchybar \
--add space "space.$i" left \
--set "space.$i" associated_space=$((i+1)) \
icon="${SPACE_ICONS[i]}" \
icon.padding_left=8 \
icon.padding_right=8 \
background.padding_left=1 \
background.padding_right=1 \
background.height=32 \
label.drawing=off \
script="$PLUGIN_DIR/space.sh" \
click_script="yabai -m space --focus $((i+1))"
done
# window title
sketchybar \
--add item window_title left \
--set window_title \
background.padding_left=8 \
script="$PLUGIN_DIR/window_title.sh" \
--subscribe window_title front_app_switched
## }}}
## middle of the bar {{{
# Apple Music Status
sketchybar -m --add event song_update com.apple.Music.playerInfo
sketchybar \
--add item music center \
--set music \
label.font="Victor Mono:Bold Italic:16.0" \
script="$PLUGIN_DIR/music.sh" \
--subscribe music song_update
# }}}
## right side of the bar {{{
# this starts at the rightmost item
# items should be self explanatory by their name, and are separated by a blank line
sketchybar \
\
--add item clock right \
--set clock \
script="$PLUGIN_DIR/clock.sh" \
update_freq=10 \
lazy=true \
\
--add item date right \
--set date \
script="$PLUGIN_DIR/ddate.sh" \
update_freq=60 \
lazy=true \
\
--add item mullvad right \
--set mullvad \
script="$PLUGIN_DIR/mullvad.sh" \
\
--add item battery right \
--set battery \
update_freq=30 \
script="$PLUGIN_DIR/battery.sh" \
lazy=true \
--subscribe battery system_woke \
\
--add item sound right \
--set sound \
script="$PLUGIN_DIR/sound.sh" \
update_freq=5 \
lazy=true \
\
--add item mail right \
--set mail \
script="$PLUGIN_DIR/mailIndicator.sh" \
update_freq=10 \
lazy=true \
\
--add item tasks right \
--set tasks \
script="$PLUGIN_DIR/tasks.sh" \
update_freq=10 \
lazy=true
##### fin #####
sketchybar --update