dotfiles/yambar/config.yml
2025-05-29 20:29:02 -05:00

231 lines
8.2 KiB
YAML

bg_default: &bg_default {stack: [{background: {color: 6E738Dff}}, {underline: {size: 4, color: CAD3F5ff}}]}
bar:
height: 19
location: top
font: "JetBrainsMonoNerdFont:pixelsize=15"
spacing: 5
foreground: CAD3F5ff
background: 24273Acc
border:
width: 0
margin: 3
bottom-margin: 0
left:
- river:
title:
map:
default:
- string: {text: " {layout}", foreground: A6DA95ff}
conditions:
title == "": {empty: {}}
anchors:
- base: &river_base
left-margin: 10
right-margin: 13
default: {string: {text: }}
conditions:
id == 1: {string: {text: 1}}
id == 2: {string: {text: 2}}
id == 3: {string: {text: 3}}
id == 4: {string: {text: 4}}
id == 5: {string: {text: 5}}
id == 6: {string: {text: 6}}
id == 7: {string: {text: 7}}
id == 8: {string: {text: 8}}
id == 9: {string: {text: 9}}
content:
map:
on-click:
left: sh -c "riverctl set-focused-tags $((1 << ({id} - 1)))"
right: sh -c "riverctl toggle-focused-tags $((1 << ({id} -1)))"
middle: sh -c "riverctl toggle-view-tags $((1 << ({id} -1)))"
conditions:
state == urgent:
map:
!!merge <<: *river_base
deco: {background: {color: ED8796ff}}
state == focused:
map:
!!merge <<: *river_base
deco: *bg_default
state == visible && ~occupied:
map:
!!merge <<: *river_base
state == visible && occupied:
map:
!!merge <<: *river_base
deco: *bg_default
state == unfocused:
map:
!!merge <<: *river_base
state == invisible && ~occupied: {empty: {}}
state == invisible && occupied:
map:
!!merge <<: *river_base
deco: {underline: {size: 3, color: ED8796ff}}
- foreign-toplevel:
content:
map:
conditions:
~activated: {empty: {}}
activated:
- string: {text: "{app-id}", foreground: ED8796ff}
center:
- clock:
time-format: "%I:%M %p"
date-format: "%A, %B %d %Y"
content:
- string: {text: "\U000F0E17", on-click: gsimplecal}
- string: {text: " {date}", right-margin: 5, on-click: gsimplecal}
- string: {text: }
- string: {text: " {time}"}
right:
- removables:
anchors:
drive: &drive {text: "\U000F129F"}
optical: &optical {text: }
spacing: 5
content:
map:
conditions:
~mounted:
map:
on-click: udisksctl mount -b {device}
conditions:
~optical: [{string: *drive}, {string: {text: "{label}"}}]
optical: [{string: *optical}, {string: {text: "{label}"}}]
mounted:
map:
on-click: udisksctl unmount -b {device}
conditions:
~optical:
- string: {!!merge <<: *drive}
- string: {text: "{label}"}
optical:
- string: {!!merge <<: *optical}
- string: {text: "{label}"}
- pipewire:
anchors:
volume: &volume
conditions:
muted:
string:
text: "0%"
~muted:
string:
text: "{cubic_volume}%"
content:
list:
on-click: pavucontrol-qt
items:
- map:
conditions:
type == "sink":
map:
conditions:
icon == "audio-headset-bluetooth":
string: {text: "\U000F02CB"}
muted: {string: {text: "\U000F075F"}}
default:
- ramp:
tag: cubic_volume
items:
- string: {text: "\U000F057F"}
- string: {text: "\U000F0580"}
- string: {text: "\U000F057E"}
type == "source":
- string: {text: "", left-margin: 5}
- map:
!!merge <<: *volume
- backlight:
name: amdgpu_bl0
content: [{string: {text: }}, {string: {text: "{percent}%"}}]
- network:
content:
map:
default: {empty: {}}
conditions:
name == enp2s0:
map:
conditions:
~carrier: {empty: {}}
carrier:
map:
default: {string: {text: }}
conditions:
state == up && ipv4 != "": {string: {text: }}
- network:
poll-interval: 1000
content:
map:
default: {empty: {}}
on-click: networkmanager_dmenu
conditions:
name == wlp1s0:
map:
default: {string: {text: }}
conditions:
state == down: {string: {text: , foreground: ED8796ff}}
state == up:
map:
default:
- string: {text: }
- string: {text: " {ssid}"}
conditions:
ipv4 == "":
- string: {text: }
- string: {text: " {ssid}"}
- battery:
name: BAT0
poll-interval: 20000
anchors:
discharging: &discharging
list:
items:
- ramp:
tag: capacity
items:
- string: {text: , foreground: ED8796ff}
- string: {text: , foreground: F5A97Fff}
- string: {text: }
- string: {text: }
- string: {text: }
- string: {text: }
- string: {text: }
- string: {text: }
- string: {text: }
- string: {text: , foreground: A6DA95ff}
- string: {text: " {capacity}%"}
content:
map:
conditions:
state == unknown:
!!merge <<: *discharging
state == discharging:
!!merge <<: *discharging
state == charging:
- string: {text: , foreground: A6DA95ff}
- string: {text: " {capacity}%"}
state == full:
- string: {text: , foreground: A6DA95ff}
- string: {text: " {capacity}%"}
state == "not charging":
- ramp:
tag: capacity
items:
- string: {text:  , foreground: ED8796ff}
- string: {text:  , foreground: F5A97Fff}
- string: {text:  , foreground: A6DA95ff}
- string: {text:  , foreground: A6DA95ff}
- string: {text:  , foreground: A6DA95ff}
- string: {text:  , foreground: A6DA95ff}
- string: {text:  , foreground: A6DA95ff}
- string: {text:  , foreground: A6DA95ff}
- string: {text:  , foreground: A6DA95ff}
- string: {text:  , foreground: A6DA95ff}
- string: {text: " {capacity}%"}
- label:
content:
string:
on-click: wlogout
text: " "