Skip to content

Instantly share code, notes, and snippets.

@neuro-sys
Last active September 27, 2023 18:20
Show Gist options
  • Star 22 You must be signed in to star a gist
  • Fork 3 You must be signed in to fork a gist
  • Save neuro-sys/2570361 to your computer and use it in GitHub Desktop.
Save neuro-sys/2570361 to your computer and use it in GitHub Desktop.
dwm volume control
/**
* config.h
* ALT + F11 | F12
*/
static const char *upvol[] = { "amixer", "set", "Master", "3+", NULL };
static const char *downvol[] = { "amixer", "set", "Master", "3-", NULL };
static const char *mutevol[] = { "amixer", "set", "Master", "toggle", NULL };
static Key keys[] = {
{ MODKEY, XK_F12, spawn, {.v = upvol } },
{ MODKEY, XK_F11, spawn, {.v = downvol } },
{ MODKEY, XK_F9, spawn, {.v = mutevol } },
};
@yalin
Copy link

yalin commented May 2, 2012

nice work bro

@jimcadden
Copy link

thanks for sharing

@daninjah
Copy link

this is nice

@elbaulp
Copy link

elbaulp commented Jan 2, 2015

Just what I was looking for. Thank you! I've also added an option to mute/unmute:

static const char *mutevol[] = { "amixer", "set", "Master", "toggle", NULL};

@neuro-sys
Copy link
Author

Haha, I didn't realize people would check github gists.

Also thanks algui91, I've added yours.

@peko
Copy link

peko commented Aug 12, 2015

Спасибо братан!

@Sukonnik-Illia
Copy link

Great thanks.

Copy link

ghost commented Feb 18, 2018

@jcrcx
Copy link

jcrcx commented May 15, 2018

Thanks brooo !!!! Nice work!

@ratfactor
Copy link

This is exactly what I was looking for. On my system, the numeric range for the Master volume is large:

Limits: Capture 0 - 65536

So I needed to explicitly user percentages instead:

static const char *upvol[]   = { "amixer", "set", "Master", "10%+",     NULL };
static const char *downvol[] = { "amixer", "set", "Master", "10%-",     NULL };

(And with 10% increments, it's really speedy to adjust.)

Thanks for this!

@elycastellano
Copy link

Thanks for share!

Copy link

ghost commented Jul 6, 2020

Thanks a lot for this!

A totally seperate issue,
my keys from F1 to F12 don't work in dwm, work in every other window manager/desktop environment

@neuro-sys
Copy link
Author

I find it very surprising when people find seemingly simple things very useful. I'm happy that it's useful for others.

@BakedSnake
Copy link

Sick!

@agung-satria
Copy link

agung-satria commented Jul 3, 2021

what if i login as non root user, the upvol and downvol didn't work for me
if i try sudo amixer set Master 3+ null, on terminal it worked,

@kurth4cker
Copy link

Great

@gssasank
Copy link

gssasank commented Jan 1, 2022

If anyone's wondering why the vol up and down aren't working for them, just use sudo amixer in place of amixer

@jumps-are-op
Copy link

for people that use pamixer instead of amixer

 static const char *upvol[]   = { "pamixer", "--increase", "3", NULL };
 static const char *downvol[] = { "pamixer", "--decrease", "3", NULL };
 static const char *mutevol[] = { "pamixer", "-t",              NULL };

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment