aboutsummaryrefslogtreecommitdiff
path: root/config
diff options
context:
space:
mode:
authorRuben Beltran del Rio <git@r.bdr.sh>2025-03-22 13:10:12 +0100
committerRuben Beltran del Rio <git@r.bdr.sh>2025-03-22 13:10:12 +0100
commit903f38025e6a3018838127a562a3fecc0110858e (patch)
tree5bc411a48ca3cb9b5c2f3bc069263dac3ee4184d /config
parentaa6dfe6709cf335b9ee8c9d8c4f8415fc03957c3 (diff)
Add MPD and media controls
Diffstat (limited to 'config')
-rw-r--r--config/niri/config.kdl10
-rw-r--r--config/waybar/config.jsonc38
-rw-r--r--config/waybar/style.css9
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;
+}