; ############################ ;
; #########  COLORS  ######### ;
; ############################ ;

[colors]
foreground = ${xrdb:color7:#222222}
background = ${xrdb:color0:#111111}

tray-bg = #222222

icon = #555555

good = ${xrdb:color2}
neutral = ${xrdb:color3}
bad = ${xrdb:color1}

active = ${xrdb:color4}
alert = ${xrdb:color1}
bar-bg = ${xrdb:color3}
sysres = ${xrdb:color5}
levels = ${xrdb:color3}
net = ${xrdb:color1}

cpu = ${colors.sysres}
memory = ${colors.sysres}
filesystem = ${colors.sysres}
thermal = ${xrdb:color2}

battery-charging = ${colors.good}
battery-full = ${colors.good}
battery-discharging = ${colors.neutral}
; battery- = ${colors.good}

time = ${colors.foreground}

; ########################### ;
; ##########  BAR  ########## ;
; ########################### ;

[bar/lytedev]
monitor = ${xrdb:polybar.display_monitor:HDMI-1}
width = ${xrdb:polybar.width:100%-200}
height = ${xrdb:polybar.height:40}
offset-x = ${xrdb:polybar.offset_x:100}
offset-y = ${xrdb:polybar.offset_y:100}
radius = 0.0
fixed-center = true
bottom = ${xrdb:polybar.bottom_of_display:true}
dpi = ${xrdb:dpi:92}

background = ${colors.background}
foreground = ${colors.foreground}

line-size = 0
line-color = ${colors.foreground}

border-size = 0
border-color = #00000000

padding-left = 0
padding-right = 0

module-margin-left = 1
module-margin-right = 1

font-0 = ${xrdb:polybar.primary_font}
font-1 = ${xrdb:polybar.secondary_font}

modules-left = bspwm
modules-center = date
modules-right = cpu filesystem memory volume xbacklight xkeyboard temperature battery microphone

tray-position = right
tray-padding = 0
tray-background = ${colors.tray-bg}

wm-restack = bspwm

override-redirect = true

; scroll-up = bspwm-desknext
; scroll-down = bspwm-deskprev

; ############################ ;
; ###########  FS  ########### ;
; ############################ ;

[module/filesystem]
type = internal/fs
interval = 25

mount-0 = ${xrdb:polybar.storage_volume:/}

format = <label-mounted>
label-mounted = %free%
label-mounted-foreground = ${colors.filesystem}
format-mounted-prefix = " "
format-mounted-prefix-foreground = ${colors.icon}

; ########################### ;
; #########  BSPWM  ######### ;
; ########################### ;

[module/bspwm]
; ws-icon-0 = 1;
; ws-icon-1 = 2;
; ws-icon-2 = 3;
; ws-icon-3 = 4;
; ws-icon-4 = 5;
; ws-icon-5 = 6;
; ws-icon-6 = 7;
; ws-icon-7 = 8;
; ws-icon-8 = 9;
; ws-icon-9 = 10;
; ws-icon-default = ♟
; misc icon: 

ws-icon-0 = 1;1
ws-icon-1 = 2;2
ws-icon-2 = 3;3
ws-icon-3 = 4;4
ws-icon-4 = 5;5
ws-icon-5 = 6;6
ws-icon-6 = 7;7
ws-icon-7 = 8;8
ws-icon-8 = 9;9
ws-icon-9 = 10;0
ws-icon-default = -
; misc icon: -

label-focused-font = 1
label-occupied-font = 1
label-urgent-font = 1
label-empty-font = 1

type = internal/bspwm
pin-workspaces = false

label-focused = %icon%
label-focused-background = ${colors.active}
label-focused-foreground = ${colors.background}
label-focused-padding = 2

label-occupied = %icon%
label-occupied-padding = 2

label-urgent = %icon%
label-urgent-background = ${colors.alert}
label-urgent-padding = 2

label-empty = %icon%
label-empty-foreground = ${colors.icon}
label-empty-padding = 2

; ########################### ;
; ##########  MPD  ########## ;
; ########################### ;

[module/mpd]
type = internal/mpd
format-online = <icon-prev> <toggle> <label-song> <icon-stop> <icon-next>

icon-prev = 
icon-stop = 
icon-play = 
icon-pause = 
icon-next = 

label-song-maxlen = 25
label-song-ellipsis = true

; ########################### ;
; #######  BACKLIGHT  ####### ;
; ########################### ;

[module/xbacklight]
type = internal/xbacklight

format = <label> <bar>
format-foreground = ${colors.icon}
label = 

bar-width = 5
bar-indicator = |
bar-indicator-foreground = ${colors.foreground}
bar-indicator-font = 1
bar-fill = ─
; bar-fill = -
bar-fill-font = 1
bar-fill-foreground = ${colors.bar-bg}
bar-empty = ─
; bar-empty = -
bar-empty-font = 1
bar-empty-foreground = ${colors.bar-bg}

; ########################### ;
; ##########  CPU  ########## ;
; ########################### ;

[module/cpu]
type = internal/cpu
interval = 2
format-prefix = " "
format-prefix-foreground = ${colors.icon}
label = %percentage-cores%
label-foreground = ${colors.cpu}

; ########################## ;
; ########  MEMORY  ######## ;
; ########################## ;

[module/memory]
type = internal/memory
interval = 2
format-prefix = " "
format-prefix-foreground = ${colors.icon}
label = %gb_free%
label-foreground = ${colors.memory}

; ########################## ;
; #########  WIFI  ######### ;
; ########################## ;

[module/wifi]
type = internal/network
interface = ${xrdb:polybar.wireless_interface}
interval = 10.0

;format-connected = <ramp-signal> <label-connected>
format-connected-prefix = " "
format-connected-prefix-foreground = ${colors.icon}

format-connected = <label-connected>
label-connected = "%essid% %downspeed% %upspeed%"
label-connected-foreground = ${colors.wifi-connected}

format-disconnected-prefix = " "
format-disconnected-prefix-foreground = ${colors.icon}

format-disconnected = "N/A"
; format-disconnected = <label-disconnected>
; format-disconnected-underline = ${self.format-connected-underline}
; label-disconnected = %ifname% disconnected
; label-disconnected-foreground = ${colors.wifi-disconnected}

ramp-signal-0 = 
ramp-signal-1 = 
ramp-signal-2 = 
ramp-signal-3 = 
ramp-signal-4 = 

[module/eth]
type = internal/network
interface = ${xrdb:polybar.ethernet_interface}
interval = 10.0

format-connected-prefix = " "
format-connected-prefix-foreground = ${colors.icon}
label-connected = %upspeed% %downspeed%
label-connected-foreground = ${colors.eth-connected}

format-disconnected = N/A
; format-disconnected = <label-disconnected>
; format-disconnected-underline = 0
; label-disconnected = %ifname% disconnected
; label-disconnected-foreground = ${colors.eth-disconnected}

; ########################### ;
; #########  CLOCK  ######### ;
; ########################### ;

[module/date]
type = internal/date
interval = 1

date = "%a %Y-%m-%d "
date-alt =

time = %H:%M:%S
time-alt = %H:%M

label-foreground = ${colors.time}
format-prefix = " "
format-prefix-foreground = ${colors.icon}

label = %date%%time%

; ########################## ;
; ########  VOLUME  ######## ;
; ########################## ;

[module/volume]
type = internal/alsa

format-volume = <label-volume> <bar-volume>
label-volume = 
label-volume-foreground = ${colors.icon}

format-muted-prefix = " "
format-muted-foreground = ${colors.icon}
label-muted = M

bar-volume-width = 5
bar-volume-foreground-0 = ${colors.bar-bg}
bar-volume-foreground-1 = ${colors.bar-bg}
bar-volume-foreground-2 = ${colors.bar-bg}
bar-volume-foreground-3 = ${colors.bar-bg}
bar-volume-foreground-4 = ${colors.bar-bg}
bar-volume-foreground-5 = ${colors.bar-bg}
bar-volume-foreground-6 = ${colors.bar-bg}
bar-volume-gradient = false
bar-volume-indicator = |
bar-volume-indicator-font = 1
bar-volume-fill = ─
bar-volume-fill-font = 1
bar-volume-empty = ─
bar-volume-empty-font = 1
bar-volume-empty-foreground = ${colors.icon}

; ######################### ;
; #######  BATTERY  ####### ;
; ######################### ;

[module/battery]
type = internal/battery
battery = BAT0
adapter = ADP1
full-at = 98

label-discharging-foreground = ${colors.battery-discharging}
label-charging-foreground = ${colors.battery-charging}
label-full-foreground = ${colors.battery-full}

format-charging = <animation-charging> <label-charging>

format-discharging-prefix =
format-discharging-prefix-foreground = ${colors.icon}
format-discharging = <ramp-capacity> <label-discharging>

format-charging-prefix =
format-charging-prefix-foreground = ${colors.icon}

format-full-prefix = " "
format-full-prefix-foreground = ${colors.icon}

ramp-capacity-0 = ""
ramp-capacity-1 = ""
ramp-capacity-2 = ""
ramp-capacity-foreground = ${colors.icon}

animation-charging-0 = ""
animation-charging-1 = ""
animation-charging-2 = ""
animation-charging-foreground = ${colors.icon}
animation-charging-framerate = 1000

; ########################## ;
; #######  THERMALS  ####### ;
; ########################## ;

[module/temperature]
type = internal/temperature
thermal-zone = 0
warn-temperature = 60

format = <ramp><label>
format-warn = <ramp> <label-warn>
label-foreground = ${colors.thermal}
format-prefix =
format-prefix-foreground = ${colors.icon}

label = %temperature-c%
label-warn = %temperature-c%
label-warn-foreground = ${colors.icon}

ramp-0 = " "
ramp-1 = " "
ramp-2 = " "
ramp-foreground = ${colors.icon}

; ######################## ;
; ######  SETTINGS  ###### ;
; ######################## ;

[settings]
screenchange-reload = true
pseudo-transparency = false
compositing-background = source
compositing-foreground = source
compositing-border = source

; ######################### ;
; #######  GLOBALS  ####### ;
; ######################### ;

[global/wm]
margin-top = ${xrdb:polybar.margin:0}
margin-bottom = ${xrdb:polybar.margin:0}

[module/microphone]
type = custom/script
exec = $DOTFILES_PATH/apps/de/polybar/mic.sh
tail = true
format = <label>
label-foreground = ${colors.background}
label = %output%
click-left = kill -USR1 %pid%
format-margin = 0