X-Git-Url: https://git.madduck.net/etc/awesome.git/blobdiff_plain/2119b79449f73828eae44ecaa762c2daf52de394..bf3a9ba5efb874ad6370a3083afd409361e2912a:/widgets/sysload.lua diff --git a/widgets/sysload.lua b/widgets/sysload.lua index b10c5e2..148319d 100644 --- a/widgets/sysload.lua +++ b/widgets/sysload.lua @@ -7,29 +7,24 @@ --]] -local newtimer = require("lain.helpers").newtimer - +local helpers = require("lain.helpers") local wibox = require("wibox") - local io = { open = io.open } local string = { match = string.match } - local setmetatable = setmetatable -- System load -- lain.widgets.sysload -local sysload = {} +local sysload = helpers.make_widget_textbox() local function worker(args) - local args = args or {} - local timeout = args.timeout or 2 + local args = args or {} + local timeout = args.timeout or 2 local settings = args.settings or function() end - sysload.widget = wibox.widget.textbox('') - function update() local f = io.open("/proc/loadavg") - local ret = f:read("*a") + local ret = f:read("*all") f:close() load_1, load_5, load_15 = string.match(ret, "([^%s]+) ([^%s]+) ([^%s]+)") @@ -38,8 +33,9 @@ local function worker(args) settings() end - newtimer("sysload", timeout, update) - return sysload.widget + helpers.newtimer("sysload", timeout, update) + + return sysload end return setmetatable(sysload, { __call = function(_, ...) return worker(...) end })