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 } },
};

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