diff options
| author | Ruben Beltran del Rio <git@r.bdr.sh> | 2025-03-22 13:10:12 +0100 |
|---|---|---|
| committer | Ruben Beltran del Rio <git@r.bdr.sh> | 2025-03-22 13:10:12 +0100 |
| commit | 903f38025e6a3018838127a562a3fecc0110858e (patch) | |
| tree | 5bc411a48ca3cb9b5c2f3bc069263dac3ee4184d /config | |
| parent | aa6dfe6709cf335b9ee8c9d8c4f8415fc03957c3 (diff) | |
Add MPD and media controls
Diffstat (limited to 'config')
| -rw-r--r-- | config/niri/config.kdl | 10 | ||||
| -rw-r--r-- | config/waybar/config.jsonc | 38 | ||||
| -rw-r--r-- | config/waybar/style.css | 9 |
3 files changed, 50 insertions, 7 deletions
diff --git a/config/niri/config.kdl b/config/niri/config.kdl index b8af09a..dc89d68 100644 --- a/config/niri/config.kdl +++ b/config/niri/config.kdl @@ -345,10 +345,16 @@ binds { XF86AudioRaiseVolume allow-when-locked=true { spawn "bash" "-c" "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.05+ -l 1.0 && wpctl get-volume @DEFAULT_AUDIO_SINK@ | sed -En 's/.*([0-9]+\\.[0-9]+)/\\1/p' | awk '{print int($1*100)}' > $XDG_RUNTIME_DIR/wob.sock"; } XF86AudioLowerVolume allow-when-locked=true { spawn "bash" "-c" "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.05- && wpctl get-volume @DEFAULT_AUDIO_SINK@ | sed -En 's/.*([0-9]+\\.[0-9]+)/\\1/p' | awk '{print int($1*100)}' > $XDG_RUNTIME_DIR/wob.sock"; } + XF86AudioMute allow-when-locked=true { spawn "wpctl" "set-mute" "@DEFAULT_AUDIO_SINK@" "toggle"; } + Ctrl+XF86AudioRaiseVolume allow-when-locked=true { spawn "bash" "-c" "wpctl set-volume @DEFAULT_AUDIO_SOURCE@ 0.05+ -l 1.0 && wpctl get-volume @DEFAULT_AUDIO_SOURCE@ | sed -En 's/.*([0-9]+\\.[0-9]+)/\\1/p' | awk '{print int($1*100)}' > $XDG_RUNTIME_DIR/wob.sock"; } + Ctrl+XF86AudioLowerVolume allow-when-locked=true { spawn "bash" "-c" "wpctl set-volume @DEFAULT_AUDIO_SOURCE@ 0.05- && wpctl get-volume @DEFAULT_AUDIO_SOURCE@ | sed -En 's/.*([0-9]+\\.[0-9]+)/\\1/p' | awk '{print int($1*100)}' > $XDG_RUNTIME_DIR/wob.sock"; } + Ctrl+XF86AudioMute allow-when-locked=true { spawn "wpctl" "set-mute" "@DEFAULT_AUDIO_SOURCE@" "toggle"; } + XF86AudioPlay allow-when-locked=true { spawn "mpc" "toggle"; } + XF86AudioNext allow-when-locked=true { spawn "mpc" "next"; } + XF86AudioPrev allow-when-locked=true { spawn "mpc" "prev"; } // XF86AudioRaiseVolume allow-when-locked=true { spawn "bash" "-c" "wpctl set-volume \"@DEFAULT_AUDIO_SINK\" 0.05+; wpctl get-volume \"@DEFAULT_AUDIO_SINK\" | sed -En 's/.*([0-9]+\\.[0-9]+)/\\1/p' | awk '{print int($1*100)}' > $XDG_RUNTIME_DIR/wob.sock"; } // XF86AudioLowerVolume allow-when-locked=true { spawn "bash" "-c" "wpctl set-volume \"@DEFAULT_AUDIO_SINK\" 0.05-; wpctl get-volume \"@DEFAULT_AUDIO_SINK\" | sed -En 's/.*([0-9]+\\.[0-9]+)/\\1/p' | awk '{print int($1*100)}' > $XDG_RUNTIME_DIR/wob.sock"; } - XF86AudioMute allow-when-locked=true { spawn "wpctl" "set-mute" "@DEFAULT_AUDIO_SINK@" "toggle"; } - XF86AudioMicMute allow-when-locked=true { spawn "wpctl" "set-mute" "@DEFAULT_AUDIO_SOURCE@" "toggle"; } + // XF86AudioMicMute allow-when-locked=true { spawn "wpctl" "set-mute" "@DEFAULT_AUDIO_SOURCE@" "toggle"; } XF86MonBrightnessDown allow-when-locked=true { spawn "bash" "-c" "brightnessctl set 5%- | sed -En 's/.*\\(([0-9]+)%\\).*/\\1/p' > $XDG_RUNTIME_DIR/wob.sock"; } XF86MonBrightnessUp allow-when-locked=true { spawn "bash" "-c" "brightnessctl set +5% | sed -En 's/.*\\(([0-9]+)%\\).*/\\1/p' > $XDG_RUNTIME_DIR/wob.sock"; } diff --git a/config/waybar/config.jsonc b/config/waybar/config.jsonc index ee3f180..3ff0099 100644 --- a/config/waybar/config.jsonc +++ b/config/waybar/config.jsonc @@ -1,13 +1,15 @@ { "position": "top", "modules-left": [ - "niri/workspaces" + "niri/workspaces", + "mpd" ], "modules-center": [ "niri/window" ], "modules-right": [ "idle_inhibitor", + "custom/tailscale", "pulseaudio", "network", "power-profiles-daemon", @@ -34,15 +36,15 @@ }, "format": "{capacity}% <span font-family='Font Awesome 6 Free'>{icon}</span>", "format-full": "{capacity}% <span font-family='Font Awesome 6 Free'>{icon}</span>", - "format-charging": "{capacity}% <span font-family='Font Awesome 6 Free'></span>", + "format-charging": "{capacity}% <span font-family='Font Awesome 6 Free'></span>", "format-plugged": "{capacity}% <span font-family='Font Awesome 6 Free'></span>", "format-alt": "{time} <span font-family='Font Awesome 6 Free'>{icon}</span>", "format-icons": ["", "", "", "", ""] }, "network": { - "format-wifi": "{essid} ({signalStrength}%) ", + "format-wifi": "{essid} ", "format-ethernet": "{ipaddr}/{cidr} <span font-family='Font Awesome 6 Free'></span>", - "tooltip-format": "{ifname} via {gwaddr} <span font-family='Font Awesome 6 Free'></span>", + "tooltip-format": "{essid} ({signalStrength}%) \n{ifname} via {gwaddr} <span font-family='Font Awesome 6 Free'></span>\n{ipaddr}/{cidr}", "format-linked": "{ifname} (No IP) <span font-family='Font Awesome 6 Free'></span>", "format-disconnected": "Disconnected <span font-family='Font Awesome 6 Free'>⚠</span>", "format-alt": "{ifname}: {ipaddr}/{cidr}" @@ -88,5 +90,31 @@ "suspend": "systemctl suspend", "hibernate": "systemctl hibernate" } - } + }, + "mpd": { + "format": " {stateIcon} {consumeIcon}{randomIcon}{repeatIcon}{singleIcon}{artist} - {title}", + "format-disconnected": "⨯", + "format-stopped": "{consumeIcon}{randomIcon}{repeatIcon}{singleIcon}Stopped ", + "unknown-tag": "N/A", + "interval": 5, + "consume-icons": { + "on": " " + }, + "random-icons": { + "off": "", + "on": " " + }, + "repeat-icons": { + "on": " " + }, + "single-icons": { + "on": "1 " + }, + "state-icons": { + "paused": "", + "playing": "" + }, + "tooltip-format": "{artist} - {album} - {title} ({elapsedTime:%M:%S}/{totalTime:%M:%S}) ⸨{songPosition}|{queueLength}⸩ {volume}%", + "tooltip-format-disconnected": "MPD (disconnected)" + }, } diff --git a/config/waybar/style.css b/config/waybar/style.css index cc182e9..dd53eff 100644 --- a/config/waybar/style.css +++ b/config/waybar/style.css @@ -100,3 +100,12 @@ button:hover { background-color: #23C17C; color: #0F261F; } + +#idle_inhibitor { + background: #4F8FE6; +} + +#mpd { + color: #0F261F; + background-color: #FAED8F; +} |