feat: add low battery indicator

This commit is contained in:
Swarsel 2024-12-15 15:00:44 +01:00
parent aee51f5b09
commit 3ba1690e3a
Signed by: swarsel
GPG key ID: 26A54C31F2A4FD84
4 changed files with 72 additions and 0 deletions

View file

@ -38,6 +38,7 @@ _:
# ./safeeyes.nix
./distrobox.nix
./lid.nix
./lowbattery.nix
];
nixpkgs.config.permittedInsecurePackages = [

View file

@ -0,0 +1,26 @@
{ pkgs, lib, ... }:
{
systemd.user.services."battery-low" = {
enable = true;
description = "Notify user if battery is below 10%";
partOf = [ "graphical-session.target" ];
wantedBy = [ "graphical-session.target" ];
serviceConfig = {
Type = "simple";
ExecStart = pkgs.writeShellScript "battery-low-notification"
''
if (( 10 >= $(${lib.getExe pkgs.acpi} -b | head -n 1 | ${lib.getExe pkgs.ripgrep} -o "\d+%" | ${lib.getExe pkgs.ripgrep} -o "\d+")));
then ${lib.getExe pkgs.libnotify} --urgency=critical "low battery" "$(${lib.getExe pkgs.acpi} -b | head -n 1 | ${lib.getExe pkgs.ripgrep} -o "\d+%")";
fi;
'';
};
};
systemd.user.timers."battery-low" = {
wantedBy = [ "timers.target" ];
timerConfig = {
# Every Minute
OnCalendar = "*-*-* *:*:00";
Unit = "battery-low.service";
};
};
}

View file

@ -26,8 +26,12 @@
# secure boot
sbctl
# nix package database
nix-index
# proc info
acpi
# better make for general tasks
just