;==========================================================
;
;
;   ██████╗  ██████╗ ██╗  ██╗   ██╗██████╗  █████╗ ██████╗
;   ██╔══██╗██╔═══██╗██║  ╚██╗ ██╔╝██╔══██╗██╔══██╗██╔══██╗
;   ██████╔╝██║   ██║██║   ╚████╔╝ ██████╔╝███████║██████╔╝
;   ██╔═══╝ ██║   ██║██║    ╚██╔╝  ██╔══██╗██╔══██║██╔══██╗
;   ██║     ╚██████╔╝███████╗██║   ██████╔╝██║  ██║██║  ██║
;   ╚═╝      ╚═════╝ ╚══════╝╚═╝   ╚═════╝ ╚═╝  ╚═╝╚═╝  ╚═╝
;
;
;   To learn more about how to configure Polybar
;   go to https://github.com/polybar/polybar
;
;   The README contains a lot of information
;
;==========================================================

[colors]
background = #171520
background-alt = #130f23
foreground = #dfdfdf
foreground-alt = #555
primary = #ffb52a
secondary = #e60053
alert = #bd2c40
;systray-bg = #0063ff
;systray-bg = #232627
;systray-bg = #bd93f9
;systray-bg = #ff79c6
systray-bg = #282a36

ws-active-fg = #ffffff
ws-active-bg = #d33682
ws-active-ul = #d33682

ws-occupied-fg = #268bd2
ws-occupied-bg = #130f23
ws-occupied-ul = #130f23

ws-empty-fg = #02fc45
ws-empty-bg = ${colors.background}
ws-empty-ul = ${colors.background}

time-bg = #9aedfe
time-fg = #232627

ethernet-bg = #ff92d0
ethernet-fg = #232627

wifi-bg = #caa9fa
wifi-fg = #232627

temp-bg = #f4f99d
temp-fg = #232627

cpu-bg = ${colors.temp-bg}
cpu-fg = ${colors.temp-fg}

mem-bg = #5af78e
mem-fg = #232627

vol-bg = #ff6e67
vol-fg = #232627
vol-fg-alt = ${colors.foreground-alt}

[bar/mybar]
;monitor = ${env:MONITOR:eDP-1-1}
enable-ipc = true
width = 100%
height = 32
offset-x = 0%
offset-y = 0%
radius = 0
fixed-center = false
bottom = 0

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

line-size = 0
line-color = #f00

border-size = 0
border-color = #00000000

padding-left = 0
padding-right = 0

module-margin-left = 0
module-margin-right = 0

font-0 = "Sauce Code Pro:size=12;3"
font-1 = "Source Han Sans JP Normal:size=12;2"
font-2 = "RobotoMono Nerd Font Mono:size=22;5"
font-3 = fixed:pixelsize=10;1
font-4 = unifont:fontformat=truetype:size=8:antialias=false;0
font-5 = siji:pixelsize=10;1

modules-left = ewmh xwindow
modules-right = vol-arrow pulseaudio mem-arrow memory cpu-arrow cpu temperature wifi-arrow wlan ethernet-arrow eth date-arrow date systray-arrow

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

;wm-restack = bspwm
;wm-restack = i3

override-redirect = true

cursor-click = pointer
cursor-scroll = ns-resize

[bar/mybar-bspwm]
;monitor = ${env:MONITOR:HDMI-1}
width = 100%
height = 35
offset-x = 0%
offset-y = 0%
radius = 0
fixed-center = false
bottom = 0

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

line-size = 3
line-color = #f00

border-size = 0
border-color = #00000000

padding-left = 0
padding-right = 2

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

font-0 = "Sauce Code Pro:size=12"
font-1 = "Source Han Sans JP Normal:size=12"
font-2 = fixed:pixelsize=10;1
font-3 = unifont:fontformat=truetype:size=8:antialias=false;0
font-4 = siji:pixelsize=10;1

modules-left = bspwm xwindow
modules-right = pulseaudio memory cpu temperature xkeyboard wlan eth date

tray-position = right
tray-padding = 2
tray-background = #0063ff

;wm-restack = bspwm
;wm-restack = i3

override-redirect = true

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

cursor-click = pointer
cursor-scroll = ns-resize

[module/xwindow]
type = internal/xwindow
label = %title:0:50:...%

[module/xkeyboard]
type = internal/xkeyboard
;blacklist-0 = num lock

format-prefix = ""
format-prefix-foreground = ${colors.foreground-alt}
format-prefix-underline = ${colors.secondary}

label-layout = %layout%
label-layout-underline = ${colors.secondary}

label-indicator-padding = 2
label-indicator-margin = 1
label-indicator-background = ${colors.secondary}
label-indicator-underline = ${colors.secondary}

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

mount-0 = /
mount-1 = /home
;mount-2 = /mnt

label-mounted = %{F#0a81f5}%mountpoint%%{F-}: %percentage_used%%
label-unmounted = %mountpoint% not mounted
label-unmounted-foreground = ${colors.foreground-alt}

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

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

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

bar-width = 10
bar-indicator = |
bar-indicator-foreground = #fff
bar-indicator-font = 2
bar-fill = ─
bar-fill-font = 2
bar-fill-foreground = #9f78e1
bar-empty = ─
bar-empty-font = 2
bar-empty-foreground = ${colors.foreground-alt}

[module/cpu]
type = internal/cpu
interval = 2
label = "CPU: %percentage:2%%"
label-background = ${colors.cpu-bg}
label-foreground = ${colors.cpu-fg}

[module/cpu-arrow]
type = custom/text
content = ""
content-foreground = ${colors.cpu-bg}
content-background = ${colors.mem-bg}

[module/memory]
type = internal/memory
interval = 2

label-background = ${colors.mem-bg}
label-foreground = ${colors.mem-fg}
label = "MEM: %percentage_used%% "

[module/mem-arrow]
type = custom/text
content = ""
content-foreground = ${colors.mem-bg}
content-background = ${colors.vol-bg}

[module/wlan]
type = internal/network
interface = wlo1
interval = 3.0

format-connected = <ramp-signal> <label-connected>
format-connected-background = ${colors.wifi-bg}
format-connected-foreground = ${colors.wifi-fg}
label-connected = "%essid% "

label-disconnected = "WiFi Disconnected "
label-disconnected-foreground = ${colors.foreground-alt}
label-disconnected-background = ${colors.wifi-bg}

ramp-signal-0 =
ramp-signal-1 =
ramp-signal-2 =
ramp-signal-3 =
ramp-signal-4 =
ramp-signal-foreground = ${colors.foreground-alt}

[module/wifi-arrow]
type = custom/text
content = ""
content-foreground = ${colors.wifi-bg}
content-background = ${colors.cpu-bg}

[module/eth]
type = internal/network
interface = eno1
interval = 3.0

label-connected-background = ${colors.ethernet-bg}
label-connected-foreground = ${colors.ethernet-fg}

format-connected-underline = #55aa55
format-connected-prefix = ""
format-connected-prefix-foreground = ${colors.foreground-alt}
label-connected = "%local_ip% "

format-disconnected =
;format-disconnected = <label-disconnected>
;format-disconnected-underline = ${self.format-connected-underline}
;label-disconnected = %ifname% disconnected
;label-disconnected-foreground = ${colors.foreground-alt}

[module/ethernet-arrow]
type = custom/text
content = ""
content-foreground = ${colors.ethernet-bg}
content-background = ${colors.wifi-bg}

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

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

time = "%I:%M %p "
time-alt = "%d %B %Y (%A) %H:%M:%S "

format-foreground = ${colors.time-fg}
format-background = ${colors.time-bg}

label = %time%

[module/date-arrow]
type = custom/text
content = ""
;content-font = 2
content-foreground = ${colors.time-bg}
content-background = ${colors.ethernet-bg}

[module/systray-arrow]
type = custom/text
content = ""
content-foreground = ${colors.systray-bg}
content-background = ${colors.time-bg}

[module/pulseaudio]
type = internal/pulseaudio
format-volume = <label-volume>
label-volume = "VOL %percentage%% "
label-volume-background = ${colors.vol-bg}
label-volume-foreground = ${colors.vol-fg}

label-muted = "muted "
label-muted-foreground = ${colors.vol-fg-alt}
label-muted-background = ${colors.vol-bg}

[module/vol-arrow]
type = custom/text
content = ""
content-foreground = ${colors.vol-bg}
content-background = ${colors.background}

[module/alsa]
type = internal/alsa

format-volume = <label-volume> <bar-volume>
label-volume = VOL
label-volume-foreground = ${root.foreground}

format-muted-prefix = " "
format-muted-foreground = ${colors.foreground-alt}
label-muted = sound muted

bar-volume-width = 10
bar-volume-foreground-0 = #55aa55
bar-volume-foreground-1 = #55aa55
bar-volume-foreground-2 = #55aa55
bar-volume-foreground-3 = #55aa55
bar-volume-foreground-4 = #55aa55
bar-volume-foreground-5 = #f5a70a
bar-volume-foreground-6 = #ff5555
bar-volume-gradient = false
bar-volume-indicator = |
bar-volume-indicator-font = 2
bar-volume-fill = ─
bar-volume-fill-font = 2
bar-volume-empty = ─
bar-volume-empty-font = 2
bar-volume-empty-foreground = ${colors.foreground-alt}

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

label = " / %temperature-c% "
label-warn-foreground = ${colors.secondary}

label-background = ${colors.temp-bg}
label-foreground = ${colors.temp-fg}

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

[global/wm]
margin-top = 0
margin-bottom = 0

; vim:ft=dosini

[module/ewmh]
type = internal/xworkspaces

pin-workspaces = false
enable-click = true
enable-scroll = false
format = <label-state>

label-monitor = %name%

label-active = %name%
label-active-foreground = ${colors.ws-active-fg}
label-active-background = ${colors.ws-active-bg}
label-active-underline = ${colors.ws-active-ul}
label-active-padding = 2

label-occupied = %name%
label-occupied-foreground = ${colors.ws-occupied-fg}
label-occupied-background = ${colors.ws-occupied-bg}
label-occupied-underline = ${colors.ws-occupied-ul}
label-occupied-padding = 2

label-empty = %name%
label-empty-foreground = ${colors.ws-empty-fg}
label-empty-background = ${colors.ws-empty-bg}
label-empty-underline = ${colors.ws-empty-ul}
label-empty-padding = 2

label-urgent = %name%
label-urgent-foreground = #000000
label-urgent-background = #bd2c40
label-urgent-underline = #9b0a20
label-urgent-padding = 4

[module/bspwm]
type = internal/bspwm

; this is exactly the same as ewmh but the type is different
; somehow ewmh conflicts with lxsession in bspwm
pin-workspaces = false
enable-click = true
enable-scroll = false
format = <label-state>

label-monitor = %name%

label-active = %name%
label-active-foreground = ${colors.ws-active-fg}
label-active-background = ${colors.ws-active-bg}
label-active-underline = ${colors.ws-active-ul}
label-active-padding = 2

label-occupied = %name%
label-occupied-foreground = ${colors.ws-occupied-fg}
label-occupied-background = ${colors.ws-occupied-bg}
label-occupied-underline = ${colors.ws-occupied-ul}
label-occupied-padding = 2

label-empty = %name%
label-empty-foreground = ${colors.ws-empty-fg}
label-empty-background = ${colors.ws-empty-bg}
label-empty-underline = ${colors.ws-empty-ul}
label-empty-padding = 2

label-urgent = %name%
label-urgent-foreground = #000000
label-urgent-background = #bd2c40
label-urgent-underline = #9b0a20
label-urgent-padding = 4