Restructure packages into per-program home/programs/ modules

Replaces the monolithic packages-marvin.nix with one file per program
so hosts can opt in selectively. Adds docker, clamav, steam, and
audio keybindings for hivebrain. Fixes monitor order and switches
volume widget to PulseVolume.
This commit is contained in:
2026-08-12 15:28:06 +02:00
parent 7d5b6f7d3e
commit bc828f7adf
39 changed files with 180 additions and 27 deletions

View File

@@ -60,6 +60,9 @@ keys = [
lazy.spawn('sh -c "maim -s | xclip -selection clipboard -t image/png -i"'),
desc="Screenshot"
),
Key([mod], "F6", lazy.spawn("wpctl set-volume -l 1.0 @DEFAULT_AUDIO_SINK@ 5%+"), desc="Volume up 5%"),
Key([mod], "F5", lazy.spawn("wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-"), desc="Volume down 5%"),
Key([mod], "F4", lazy.spawn("wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"), desc="Mute toggle"),
]
# Add key bindings to switch VTs in Wayland.
@@ -229,7 +232,7 @@ def make_top_bar(primary=False):
format = 'Mem: {MemUsed:.0f}{mm}',
),
make_sep(),
widget.Volume(
widget.PulseVolume(
foreground = colors[7],
padding = 8,
fmt = 'Vol: {}',
@@ -249,8 +252,8 @@ def make_top_bar(primary=False):
screens = [
Screen(top = make_top_bar()),
Screen(top = make_top_bar(primary=True)),
Screen(top = make_top_bar()),
]
# Drag floating layouts.