blog/content/post/use-brightness-and-volume-keys-in-dwm.md
2022-04-29 06:57:05 +00:00

2 KiB

title date lastmod draft keywords description tags categories author comment toc autoCollapseToc postMetaInFooter hiddenFromHomePage contentCopyright reward mathjax mathjaxEnableSingleDollar mathjaxEnableAutoNumber hideHeaderAndFooter flowchartDiagrams sequenceDiagrams
Use Brightness and Volume Keys in Dwm 2021-03-03T06:53:22Z 2022-04-29T06:53:22Z false
dwm brightness volume
dwm
linux
false true false true false false false false false false false
enable options
false
enable options
false

Requires pulseaudio pavucontrol alsa-lib alsa-utils acpilight

Actual requirements may vary depending on your configuration. I am only writing what worked for me.

Edit config.h

#include <X11/XF86keysym.h>
 
/* volume keys*/
static const char *upvol[] = { "/usr/bin/pactl", "set-sink-volume", "0", "+5%", NULL };
static const char *downvol[] = { "/usr/bin/pactl", "set-sink-volume", "0", "-5%", NULL };
static const char *mutevol[] = { "/usr/bin/pactl", "set-sink-mute", "0", "toggle", NULL };
 
/* backlight */
static const char *brightnessup[] = { "sudo", "xbacklight", "-inc"m "5", NULL };
static const char *brightnessdown[] = { "sudo", "xbacklight", "-dec", "5", NULL };

Append the following lines in static Key keys[] array

static Key keys[] = {
    { 0, XF86XK_AudioLowerVolume, spawn, {.v = downvol} },
    { 0, XF86XK_AudioMute, spawn, {.v = mutevol }},
    { 0, XF86XK_AudioRaiseVolume, spawn, {.v = upvol} },
    { 0, XF86XK_MonBrightnessUp, spawn, {.v = brightnessup} },
    { 0, XF86XK_MonBrightnessDown, spawn, {.v = brightnessdown} },
};