summaryrefslogtreecommitdiff
path: root/README.md
blob: 49ae925e5732a5de36e8f1a097a717ca1e43d7b0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# Volsv

#### What is it?

Volsv is a POSIX-compliant shell script I wrote in 2020, and have been modifying since. Presently, it supports:

- Increasing volume
- Decreasing volume
- Toggling the interface mute
- Toggling the microphone mute
- Getting the volume
- Getting the mute state

in both pulseaudio and ALSA. Once I get OpenBSD and FreeBSD up and running, I will add those sound options too.

It depends on:

- pamixer (pulseaudio)
- amixer (alsa)
- pgrep (with the -x command, standard in BSD and \*/Linux systems)

#### But *why* though?

I made volsv so that I could use it with keybindings to control the volume, regardless of whether or not I was running pulseaudio, since I dislike pulseaudio and tend to avoid it when possible. This means I can have a consistent keybinding, whether or not I'm using it. Additionally, this would give me less keybindings to have to port to OpenBSD, which I occasionally install from time to time, although I haven't booted into it since I started writing this script. Additionally, it has provided a fun learning experience as I learn to write scripts.

#### Flags/Commands

- increase volume: `up` or `-i`
- decrease volume: `down` or `-d`
- toggle system mute: `toggle` or `-t`
- toggle microphone mute\*: `mic` or `-m`
- get volume level: `getv` or `-v`
- get mute state: `getm` or `-g`