mirror of https://github.com/lcpz/lain.git
parent
94e6be5b42
commit
6ebe2d9e72
|
@ -127,7 +127,7 @@ local function worker(args)
|
||||||
-- Capture mixer control state: [5%] ... ... [on]
|
-- Capture mixer control state: [5%] ... ... [on]
|
||||||
local volu, mute = string.match(mixer, "([%d]+)%%.*%[([%l]*)")
|
local volu, mute = string.match(mixer, "([%d]+)%%.*%[([%l]*)")
|
||||||
|
|
||||||
if tonumber(volu) ~= alsabar._current_level or string.match(mute, "on") ~= alsabar._muted
|
if (volu and tonumber(volu) ~= alsabar._current_level) or string.match(mute, "on") ~= alsabar._muted
|
||||||
then
|
then
|
||||||
alsabar._current_level = tonumber(volu)
|
alsabar._current_level = tonumber(volu)
|
||||||
alsabar.bar:set_value(alsabar._current_level / 100)
|
alsabar.bar:set_value(alsabar._current_level / 100)
|
||||||
|
|
|
@ -23,11 +23,12 @@ local setmetatable = setmetatable
|
||||||
-- lain.widgets.bat
|
-- lain.widgets.bat
|
||||||
|
|
||||||
local function worker(args)
|
local function worker(args)
|
||||||
local bat = {}
|
local bat = {}
|
||||||
local args = args or {}
|
local args = args or {}
|
||||||
local timeout = args.timeout or 30
|
local timeout = args.timeout or 30
|
||||||
local battery = args.battery or "BAT0"
|
local battery = args.battery or "BAT0"
|
||||||
local notify = args.notify or "on"
|
local ac = args.ac or "AC0"
|
||||||
|
local notify = args.notify or "on"
|
||||||
local settings = args.settings or function() end
|
local settings = args.settings or function() end
|
||||||
|
|
||||||
bat.widget = wibox.widget.textbox('')
|
bat.widget = wibox.widget.textbox('')
|
||||||
|
@ -50,32 +51,34 @@ local function worker(args)
|
||||||
|
|
||||||
function update()
|
function update()
|
||||||
bat_now = {
|
bat_now = {
|
||||||
status = "Not present",
|
status = "Not present",
|
||||||
perc = "N/A",
|
ac_status = "N/A",
|
||||||
time = "N/A",
|
perc = "N/A",
|
||||||
watt = "N/A"
|
time = "N/A",
|
||||||
|
watt = "N/A"
|
||||||
}
|
}
|
||||||
|
|
||||||
local bstr = "/sys/class/power_supply/" .. battery
|
local bstr = "/sys/class/power_supply/" .. battery
|
||||||
|
|
||||||
local present = first_line(bstr .. "/present")
|
local present = first_line(bstr .. "/present")
|
||||||
|
|
||||||
if present == "1"
|
if present == "1"
|
||||||
then
|
then
|
||||||
local rate = first_line(bstr .. "/power_now") or
|
local rate = first_line(bstr .. "/power_now")
|
||||||
first_line(bstr .. "/current_now")
|
|
||||||
|
|
||||||
local ratev = first_line(bstr .. "/voltage_now")
|
local rate_alt = first_line(bstr .. "/current_now")
|
||||||
|
|
||||||
local rem = first_line(bstr .. "/energy_now") or
|
local ratev = first_line(bstr .. "/voltage_now")
|
||||||
first_line(bstr .. "/charge_now")
|
|
||||||
|
|
||||||
local tot = first_line(bstr .. "/energy_full") or
|
local rem = first_line(bstr .. "/energy_now") or
|
||||||
first_line(bstr .. "/charge_full")
|
first_line(bstr .. "/charge_now")
|
||||||
|
|
||||||
|
local tot = first_line(bstr .. "/energy_full") or
|
||||||
|
first_line(bstr .. "/charge_full")
|
||||||
|
|
||||||
bat_now.status = first_line(bstr .. "/status") or "N/A"
|
bat_now.status = first_line(bstr .. "/status") or "N/A"
|
||||||
|
bat_now.ac = first_line(string.format("/sys/class/power_supply/%s/online", ac)) or "N/A"
|
||||||
|
|
||||||
rate = tonumber(rate) or 1
|
rate = tonumber(rate)
|
||||||
ratev = tonumber(ratev)
|
ratev = tonumber(ratev)
|
||||||
rem = tonumber(rem)
|
rem = tonumber(rem)
|
||||||
tot = tonumber(tot)
|
tot = tonumber(tot)
|
||||||
|
@ -107,8 +110,10 @@ local function worker(args)
|
||||||
bat_now.perc = "0"
|
bat_now.perc = "0"
|
||||||
end
|
end
|
||||||
|
|
||||||
if rate ~= nil and ratev ~= nil then
|
if rate and ratev then
|
||||||
bat_now.watt = string.format("%.2fW", (rate * ratev) / 1e12)
|
bat_now.watt = string.format("%.2fW", (rate * ratev) / 1e12)
|
||||||
|
elseif rate_alt then
|
||||||
|
bat_now.watt = string.format("%.2fW", rate_alt)
|
||||||
else
|
else
|
||||||
bat_now.watt = "N/A"
|
bat_now.watt = "N/A"
|
||||||
end
|
end
|
||||||
|
@ -119,7 +124,7 @@ local function worker(args)
|
||||||
settings()
|
settings()
|
||||||
|
|
||||||
-- notifications for low and critical states
|
-- notifications for low and critical states
|
||||||
if bat_now.status == "Discharging" and notify == "on" and bat_now.perc ~= nil
|
if bat_now.status == "Discharging" and notify == "on" and bat_now.perc
|
||||||
then
|
then
|
||||||
local nperc = tonumber(bat_now.perc) or 100
|
local nperc = tonumber(bat_now.perc) or 100
|
||||||
if nperc <= 5
|
if nperc <= 5
|
||||||
|
|
2
wiki
2
wiki
|
@ -1 +1 @@
|
||||||
Subproject commit a39f73e09d8862493c1c0db542c86db0918b4a39
|
Subproject commit f1868c31feab78b1898998407a597e3c06ee71ba
|
Loading…
Reference in New Issue