dotfiles/dot_config/yambar/bar2.yml.tmpl

224 lines
7.8 KiB
Cheetah

# Colors
.everforest:
0: &foreground d8caacff
1: &background 323d43dd
2: &black 4a555bff
3: &dark_grey 525c62ff
4: &dark_red e26c6eff
5: &red e68183ff
6: &dark_green 9bb86fff
7: &green a7c080ff
8: &dark_yellow d5b26bff
9: &yellow dbbc7fff
10: &dark_blue 6eb2a9ff
11: &blue 7fbbb3ff
12: &dark_magenta cf87a9ff
13: &magenta d699b6ff
14: &dark_cyan 72b783ff
15: &cyan 83c092ff
16: &light_grey d0bf9bff
17: &white d8caacff
transparent_light_grey: &transparent_light_grey d0bf9b99
transparent_black: &transparent_black 4a555b99
# Fonts
{{- if eq .chezmoi.hostname "helix" }}
hack: &hack Hack:pixelsize=28
awesome: &awesome Font Awesome 6 Free:style=solid:pixelsize=28
{{- else}}
hack: &hack Hack:pixelsize=13
awesome: &awesome Font Awesome 6 Free:style=solid:pixelsize=12
{{- end }}
# Labels
separator: &separator {string: {text: " ", font: *hack, foreground: *light_grey}}
bar:
{{- if eq .chezmoi.hostname "helix" }}
height: 64
location: bottom
{{- else if eq .chezmoi.hostname "hydrus" }}
monitor: DP-2
height: 28
location: bottom
{{- else }}
height: 36
location: bottom
{{- end }}
layer: top
spacing: 2
margin: 2
font: *hack
foreground: *foreground
background: *background
border:
{{- if eq .chezmoi.hostname "hydrus" }}
bottom-margin: 4
left-margin: 8
right-margin: 8
{{- else }}
top-margin: 8
left-margin: 16
right-margin: 16
{{- end }}
width: 0
color: *transparent_light_grey
left:
- river:
anchors:
- base: &river_base
{{- if eq .chezmoi.hostname "helix" }}
left-margin: 56
right-margin: 56
{{- else }}
left-margin: 22
right-margin: 22
{{- end }}
text: "{id}"
content:
map:
on-click:
left: sh -c "riverctl set-focused-tags $((1 << ({id} - 1)))"
middle: sh -c "riverctl toggle-view-tags $((1 << ({id} -1)))"
right: sh -c "riverctl toggle-focused-tags $((1 << ({id} -1)))"
{{- if eq .chezmoi.hostname "helix" }}
conditions:
urgent:
string:
<<: *river_base
deco: {stack: [{background: {color: *dark_red}}, {border: {size: 6, color: *black}}]}
foreground: *black
focused:
string:
<<: *river_base
deco: {stack: [{background: {color: *light_grey}}, {underline: {size: 6, color: *transparent_black}}]}
foreground: *dark_grey
visible && occupied:
string:
<<: *river_base
deco: {stack: [{background: {color: *transparent_light_grey}}, {underline: {size: 6, color: *transparent_black}}]}
foreground: *light_grey
visible && ~occupied:
string:
<<: *river_base
deco: {stack: [{background: {color: *transparent_light_grey}}, {underline: {size: 6, color: *transparent_black}}]}
foreground: *light_grey
~visible && occupied:
string:
<<: *river_base
deco: {stack: [{background: {color: *dark_grey}}, {underline: {size: 6, color: *transparent_light_grey}}]}
foreground: *light_grey
~focused && occupied:
string:
<<: *river_base
deco: {stack: [{background: {color: *dark_grey}}, {underline: {size: 6, color: *transparent_light_grey}}]}
foreground: *light_grey
id < 10 && ~visible && ~occupied:
string:
<<: *river_base
foreground: *light_grey
id >= 10 && ~visible && ~occupied: {empty: {}}
{{- else }}
conditions:
urgent:
string:
<<: *river_base
deco: {stack: [{background: {color: *dark_red}}, {border: {size: 2, color: *black}}]}
foreground: *black
focused:
string:
<<: *river_base
deco: {stack: [{background: {color: *light_grey}}, {underline: {size: 1, color: *transparent_black}}]}
foreground: *dark_grey
visible && occupied:
string:
<<: *river_base
deco: {stack: [{background: {color: *transparent_light_grey}}, {underline: {size: 1, color: *transparent_black}}]}
foreground: *light_grey
visible && ~occupied:
string:
<<: *river_base
deco: {stack: [{background: {color: *transparent_light_grey}}, {underline: {size: 1, color: *transparent_black}}]}
foreground: *light_grey
~visible && occupied:
string:
<<: *river_base
deco: {stack: [{background: {color: *dark_grey}}, {underline: {size: 1, color: *transparent_light_grey}}]}
foreground: *light_grey
~focused && occupied:
string:
<<: *river_base
deco: {stack: [{background: {color: *dark_grey}}, {underline: {size: 1, color: *transparent_light_grey}}]}
foreground: *light_grey
id < 10 && ~visible && ~occupied:
string:
<<: *river_base
deco: {underline: {size: 1, color: *transparent_light_grey}}
foreground: *light_grey
id >= 10 && ~visible && ~occupied: {empty: {}}
{{ end }}
center:
- foreign-toplevel:
content:
map:
conditions:
activated:
- string: {text: "{app-id}: {title}"}
~activated: {empty: {}}
right:
{{- if eq .chezmoi.hostname "hydrus" }}
- label:
content: *separator
- network:
name: wlan0
poll-interval: 2000
content:
map:
default: {string: {text: , font: *awesome}}
conditions:
state == down: {string: {text: , font: *awesome, foreground: *dark_grey}}
state == up:
map:
default:
- string: {text: , font: *awesome}
- string: {text: " {name}: {dl-speed:mb} mb/s down - {ul-speed:mb} mb/s up"}
conditions:
ipv4 == "":
- string: {text: , font: *awesome}
- string: {text: " {name}: {dl-speed:mb} mb/s down / {ul-speed:mb} mb/s up"}
- network:
name: eth0
poll-interval: 2000
content:
map:
conditions:
~carrier: {empty: {}}
carrier:
map:
default:
- string: {text: , font: *awesome}
- string: {text: " {name}: {dl-speed:mb} mb/s down / {ul-speed:mb} mb/s up"}
conditions:
state == down: {string: {text: , font: *awesome}}
ipv4 == "":
- string: {text: , font: *awesome}
- string: {text: " {name}: {dl-speed:mb} mb/s down / {ul-speed:mb} mb/s up"}
- label:
content: *separator
{{- end }}
- cpu:
poll-interval: 2000
content:
map:
conditions:
id == -1:
- string: {text: , font: *awesome}
- string: {text: " {cpu}%"}
- label:
content: *separator
- mem:
poll-interval: 5000
content:
- string: {text: , font: *awesome}
- string: {text: " {used:mb} MiB ({percent_used}% Used)"}