Compare commits
3 commits
6ebfa1a8cc
...
6f643052e1
Author | SHA1 | Date | |
---|---|---|---|
Bruno BELANYI | 6f643052e1 | ||
Bruno BELANYI | 119504d0b5 | ||
Bruno BELANYI | 2d7f01f035 |
|
@ -249,8 +249,8 @@ in
|
||||||
"XF86AudioLowerVolume" = "exec --no-startup-id ${changeAudio} down 5";
|
"XF86AudioLowerVolume" = "exec --no-startup-id ${changeAudio} down 5";
|
||||||
"Control+XF86AudioRaiseVolume" = "exec --no-startup-id ${changeAudio} up 1";
|
"Control+XF86AudioRaiseVolume" = "exec --no-startup-id ${changeAudio} up 1";
|
||||||
"Control+XF86AudioLowerVolume" = "exec --no-startup-id ${changeAudio} down 1";
|
"Control+XF86AudioLowerVolume" = "exec --no-startup-id ${changeAudio} down 1";
|
||||||
"XF86AudioMute" = "exec pamixer --toggle-mute";
|
"XF86AudioMute" = "exec --no-startup-id ${changeAudio} toggle";
|
||||||
"XF86AudioMicMute" = "exec pamixer --default-source --toggle-mute";
|
"XF86AudioMicMute" = "exec --no-startup-id ${changeAudio} toggle mic";
|
||||||
|
|
||||||
"XF86AudioPlay" = "exec playerctl play-pause";
|
"XF86AudioPlay" = "exec playerctl play-pause";
|
||||||
"XF86AudioNext" = "exec playerctl next";
|
"XF86AudioNext" = "exec playerctl next";
|
||||||
|
|
|
@ -2,6 +2,13 @@
|
||||||
|
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
|
NOTIFY=(
|
||||||
|
notify-send
|
||||||
|
-u low
|
||||||
|
-h string:x-canonical-private-synchronous:change-audio
|
||||||
|
)
|
||||||
|
|
||||||
|
do_change_volume() {
|
||||||
if [ "$1" = "up" ]; then
|
if [ "$1" = "up" ]; then
|
||||||
upDown="-i"
|
upDown="-i"
|
||||||
else
|
else
|
||||||
|
@ -10,8 +17,46 @@ fi
|
||||||
|
|
||||||
pamixer --allow-boost "$upDown" "$2"
|
pamixer --allow-boost "$upDown" "$2"
|
||||||
newVolume="$(pamixer --get-volume || true)"
|
newVolume="$(pamixer --get-volume || true)"
|
||||||
|
[ "$(pamixer --get-volume-human)" = "muted" ] && isMuted=true
|
||||||
|
|
||||||
notify-send -u low \
|
MSG="Set volume to $newVolume%"
|
||||||
-h string:x-canonical-private-synchronous:change-audio \
|
if [ "${isMuted:-false}" = true ]; then
|
||||||
|
MSG="$MSG (muted)"
|
||||||
|
fi
|
||||||
|
"${NOTIFY[@]}" \
|
||||||
-h "int:value:$newVolume" \
|
-h "int:value:$newVolume" \
|
||||||
-- "Set volume to $newVolume%"
|
-- "$MSG"
|
||||||
|
}
|
||||||
|
|
||||||
|
do_toggle() {
|
||||||
|
args=()
|
||||||
|
if [ "${2:-audio}" = mic ]; then
|
||||||
|
args+=(--default-source)
|
||||||
|
MSG="Toggled microphone"
|
||||||
|
else
|
||||||
|
MSG="Toggled audio output"
|
||||||
|
fi
|
||||||
|
|
||||||
|
pamixer "${args[@]}" --toggle-mute
|
||||||
|
|
||||||
|
if [ "$(pamixer "${args[@]}" --get-mute)" = true ]; then
|
||||||
|
MSG="$MSG (muted)"
|
||||||
|
else
|
||||||
|
MSG="$MSG (unmuted)"
|
||||||
|
fi
|
||||||
|
|
||||||
|
"${NOTIFY[@]}" -- "$MSG"
|
||||||
|
}
|
||||||
|
|
||||||
|
case "$1" in
|
||||||
|
up|down)
|
||||||
|
do_change_volume "$@"
|
||||||
|
;;
|
||||||
|
toggle)
|
||||||
|
do_toggle "$@"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "No suche option '$1'" >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{ lib, libnotify, makeWrapper, pamixer, shellcheck, stdenvNoCC }:
|
{ lib, libnotify, makeWrapper, pamixer, shellcheck, stdenvNoCC }:
|
||||||
stdenvNoCC.mkDerivation rec {
|
stdenvNoCC.mkDerivation rec {
|
||||||
pname = "change-audio";
|
pname = "change-audio";
|
||||||
version = "0.1.1";
|
version = "0.2.0";
|
||||||
|
|
||||||
src = ./change-audio;
|
src = ./change-audio;
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue