18 lines
630 B
Nix
18 lines
630 B
Nix
{ pkgs, ... }:
|
|
|
|
{
|
|
environment.systemPackages = [ pkgs.libnotify ];
|
|
|
|
services.udev.extraRules = ''
|
|
SUBSYSTEM=="power_supply", ATTR{online}=="0", ACTION=="change", TAG+="systemd", ENV{SYSTEMD_USER_WANTS}+="mute-audio.service"
|
|
'';
|
|
|
|
systemd.user.services.mute-audio = {
|
|
description = "mute audio when switching to battery power";
|
|
serviceConfig = {
|
|
Type = "oneshot";
|
|
ExecStart = "${pkgs.bash}/bin/bash -c '${pkgs.pulseaudio}/bin/pactl set-sink-mute $(${pkgs.pulseaudio}/bin/pactl get-default-sink) true && ${pkgs.libnotify}/bin/notify-send \"audio Muted\" \"switched to battery power\"'";
|
|
};
|
|
};
|
|
}
|