; All globally used variables should be stored here ; State (defvar window_state_powermenu "closed") (defvar window_state_control-center "closed") (defvar window_state_floating-notifications "closed") (defvar window_state_bar "closed") (defvar window_state_volume-control "closed") (defvar window_state_calendar-window "closed") (defvar window_state_volume-popup "closed") (defvar window_state_floating-media "closed") ; Listeners (deflisten json_notifications :initial "[]" `sh scripts/notification-handler.sh`) (deflisten json_volume :initial `{ "output": 60, "source": 80 }` `sh scripts/get-volume-watch.sh`) (deflisten literal_workspaces :initial "" `sh scripts/workspaces.sh`) (deflisten json_media :initial "{}" `python3 scripts/mediaplayer.py`) (deflisten active_window :initial `{ "title": "null", "class": "null" }` `sh scripts/active-window.sh`) ; Polls (defpoll day-name :interval "5s" `date +"%A"`) (defpoll day :interval "5s" `date +"%d"`) (defpoll month :interval "5s" `date +"%m"`) (defpoll month-name :interval "5s" `date +"%B"`) (defpoll year :interval "5s" `date +"%Y"`) (defpoll time :interval "5s" `date +"%H:%M"`) (defpoll hostname :initial "GNU/Linux" :interval "24h" `cat /etc/hostname`) (defpoll uptime_info :interval "50s" `uptime -p | sed -e 's/^up //'`) (defpoll network_status :interval "2s" `nmcli n c`) (defpoll bluetooth_powered :interval "2s" `bluetoothctl show | grep Powered | awk '{ print $2 }'`) (defpoll notification_modes :interval "1s" `makoctl mode | xargs`) ; Variables (defvar hold_volume_popup false)