Skip to content

Commit

Permalink
Merge pull request #29 from larsengels/master
Browse files Browse the repository at this point in the history
Add battery support for FreeBSD
  • Loading branch information
creaktive committed Sep 6, 2016
2 parents 2e6e012 + 5eb5dfd commit 7a5fde2
Showing 1 changed file with 20 additions and 0 deletions.
20 changes: 20 additions & 0 deletions rainbarf
Expand Up @@ -430,6 +430,24 @@ sub battery_sys {
return ($battery, $charging, $time);
}

sub battery_freebsd {
my $battery = qx{/sbin/sysctl -n hw.acpi.battery.life 2>/dev/null} or return;
my $charging = qx,/sbin/sysctl -n hw.acpi.battery.state,;
my $time = qx,/sbin/sysctl -n hw.acpi.battery.time,;

$battery /= 100;

if ($charging == 2) {
$charging = 1;
} elsif ($charging == 7) { # Battery absent
return;
} else {
$charging = 0;
}

return ($battery, $charging, $time);
}

sub battery {
my @battery;
if (-x q{/usr/sbin/ioreg}) {
Expand All @@ -438,6 +456,8 @@ sub battery {
@battery = battery_acpi();
} elsif (-d q(/sys/class/power_supply)) {
@battery = battery_sys();
} elsif ($^O eq q(freebsd)) {
@battery = battery_freebsd();
}

battery_print(@battery);
Expand Down

0 comments on commit 7a5fde2

Please sign in to comment.