mirror of
https://codeberg.org/andyscott/dotfiles.git
synced 2024-12-22 18:03:11 -05:00
280 lines
9.9 KiB
Cheetah
280 lines
9.9 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 d0bf9baa
|
|
transparent_black: &transparent_black 4a555baa
|
|
# 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: top
|
|
{{- else if eq .chezmoi.hostname "hydrus" }}
|
|
monitor: DP-1
|
|
height: 28
|
|
location: bottom
|
|
{{- else }}
|
|
height: 36
|
|
location: top
|
|
{{- 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:
|
|
- pulse:
|
|
content:
|
|
map:
|
|
on-click:
|
|
left: sh -c "pactl set-sink-mute @DEFAULT_SINK@ toggle"
|
|
wheel-up: sh -c "pactl set-sink-volume @DEFAULT_SINK@ +5%"
|
|
wheel-down: sh -c "pactl set-sink-volume @DEFAULT_SINK@ -5%"
|
|
conditions:
|
|
sink_muted:
|
|
- string: {text: , font: *awesome, foreground: *transparent_light_grey}
|
|
- string: {text: " {sink_percent}% ({sink_port})", foreground: *transparent_light_grey}
|
|
~sink_muted:
|
|
- ramp:
|
|
tag: sink_percent
|
|
items:
|
|
- string: {text: , font: *awesome}
|
|
- string: {text: , font: *awesome}
|
|
- string: {text: , font: *awesome}
|
|
- string: {text: " {sink_percent}% ({sink_port})"}
|
|
{{- if ne .chezmoi.hostname "hydrus" }}
|
|
- label:
|
|
content: *separator
|
|
- backlight:
|
|
name: amdgpu_bl1
|
|
content:
|
|
- ramp:
|
|
tag: percent
|
|
items:
|
|
- string: {text: , font: *awesome}
|
|
- string: {text: , font: *awesome}
|
|
- string: {text: " {percent}%"}
|
|
- 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}: {state}"}
|
|
conditions:
|
|
ipv4 == "":
|
|
- string: {text: , font: *awesome}
|
|
- string: {text: " {name}: {state}"}
|
|
- network:
|
|
name: eth0
|
|
poll-interval: 2000
|
|
content:
|
|
map:
|
|
conditions:
|
|
~carrier: {empty: {}}
|
|
carrier:
|
|
map:
|
|
default:
|
|
- string: {text: , font: *awesome}
|
|
- string: {text: " {name}: {state}"}
|
|
conditions:
|
|
state == down: {string: {text: , font: *awesome}}
|
|
ipv4 == "":
|
|
- string: {text: , font: *awesome}
|
|
- string: {text: " {name}: {state}"}
|
|
- label:
|
|
content: *separator
|
|
- battery:
|
|
name: BAT0
|
|
poll-interval: 5000
|
|
anchors:
|
|
discharging: &discharging
|
|
list:
|
|
items:
|
|
- ramp:
|
|
tag: capacity
|
|
items:
|
|
- string: {text: , foreground: *dark_red, font: *awesome}
|
|
- string: {text: , foreground: *dark_yellow, font: *awesome}
|
|
- string: {text: , font: *awesome}
|
|
- string: {text: , font: *awesome}
|
|
- string: {text: , font: *awesome}
|
|
- string: {text: " {capacity}% {estimate}"}
|
|
content:
|
|
map:
|
|
conditions:
|
|
state == unknown:
|
|
<<: *discharging
|
|
state == discharging:
|
|
<<: *discharging
|
|
state == charging:
|
|
- string: {text: , font: *awesome}
|
|
- string: {text: " {capacity}% {estimate}"}
|
|
state == full:
|
|
- string: {text: , foreground: *dark_green, font: *awesome}
|
|
- string: {text: " {capacity}% full", foreground: *dark_green}
|
|
state == "not charging":
|
|
- string: {text: , font: *awesome}
|
|
- string: {text: " {capacity}%"}
|
|
{{- end }}
|
|
- label:
|
|
content: *separator
|
|
- clock:
|
|
date-format: "%a %b %d"
|
|
time-format: "%R"
|
|
content:
|
|
- string: {text: , font: *awesome}
|
|
- string: {text: " {date} "}
|
|
- string: {text: , font: *awesome}
|
|
- string: {text: " {time} "}
|