X-Git-Url: https://git.madduck.net/etc/awesome.git/blobdiff_plain/eb8cec907a50f3fd6df4b14ae10b910444017f92..4bf954480a00d91b3e3b86b1c40171302677df2c:/widgets/sysload.lua?ds=sidebyside diff --git a/widgets/sysload.lua b/widgets/sysload.lua index 6167d82..b15b1bf 100644 --- a/widgets/sysload.lua +++ b/widgets/sysload.lua @@ -11,7 +11,7 @@ local newtimer = require("lain.helpers").newtimer local wibox = require("wibox") -local io = io +local io = { open = io.open } local string = { format = string.format, match = string.match } @@ -21,26 +21,26 @@ local setmetatable = setmetatable -- lain.widgets.sysload local sysload = {} -function worker(args) +local function worker(args) local args = args or {} local timeout = args.timeout or 5 local settings = args.settings or function() end - widget = wibox.widget.textbox('') + sysload.widget = wibox.widget.textbox('') function update() local f = io.open("/proc/loadavg") - local ret = f:read("*all") + local ret = f:read("*a") f:close() - - a, b, c = string.match(ret, "([^%s]+) ([^%s]+) ([^%s]+)") + load_1, load_5, load_15 = string.match(ret, "([^%s]+) ([^%s]+) ([^%s]+)") + + widget = sysload.widget settings() end newtimer("sysload", timeout, update) - - return widget + return sysload.widget end return setmetatable(sysload, { __call = function(_, ...) return worker(...) end })