blob: 0a6d87862c5adce1447c9141e0fed4f4079403f8 (
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
35
36
37
|
{pkgs, ...}: {
services.xserver.windowManager.dwm.enable = true;
# Show battery and clock in status bar. This is a background daemon which
# updates the root window, which DWM uses for status.
systemd.user.services.dwm-battery = {
description = "Battery status update";
partOf = ["graphical-session.target"];
wantedBy = ["graphical-session.target"];
serviceConfig.ExecStart = pkgs.writeShellScript "dwm-battery" ''
while true; do
echo -n "$(date +%H:%M) - ";
# See: https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-class-power
case "$(cat /sys/class/power_supply/BAT0/status)" in
Charging) echo -n "🔋 " ;;
Discharging) echo -n "🪫 " ;;
"Not charging") echo -n "🪫 " ;;
Full) echo -n "🔋 " ;;
Unknown) echo -n "? " ;;
""|*) echo -n "?? " ;;
esac
echo -n "$(cat /sys/class/power_supply/BAT0/capacity)%"
echo
sleep 5
done | ${pkgs.dwm-setstatus}/bin/dwm-setstatus
'';
};
environment.systemPackages = with pkgs; [
st
dmenu
];
}
|