Skip to content

Instantly share code, notes, and snippets.

@neuro-sys
Last active September 27, 2023 18:20
Show Gist options
  • Select an option

  • Save neuro-sys/2570361 to your computer and use it in GitHub Desktop.

Select an option

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

yalin commented May 2, 2012

Copy link
Copy Markdown

nice work bro

@jimcadden

Copy link
Copy Markdown

thanks for sharing

@daninjah

Copy link
Copy Markdown

this is nice

@elbaulp

elbaulp commented Jan 2, 2015

Copy link
Copy Markdown

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
Copy Markdown
Author

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

Also thanks algui91, I've added yours.

@peko

peko commented Aug 12, 2015

Copy link
Copy Markdown

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

@Sukonnik-Illia

Copy link
Copy Markdown

Great thanks.

ghost commented Feb 18, 2018

Copy link
Copy Markdown

@jcrcx

jcrcx commented May 15, 2018

Copy link
Copy Markdown

Thanks brooo !!!! Nice work!

@ratfactor

Copy link
Copy Markdown

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
Copy Markdown

Thanks for share!

ghost commented Jul 6, 2020

Copy link
Copy Markdown

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
Copy Markdown
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
Copy Markdown

Sick!

@agung-satria

agung-satria commented Jul 3, 2021

Copy link
Copy Markdown

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
Copy Markdown

Great

@gssasank

gssasank commented Jan 1, 2022

Copy link
Copy Markdown

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

ghost commented Jan 24, 2022

Copy link
Copy Markdown

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