X-Git-Url: https://git.madduck.net/etc/awesome.git/blobdiff_plain/1a654b327dba5afceef90595d3fc79b5ad67f7d5..cc288d20a0abf9f8e03f951a8cfc13cb66cd215b:/widgets/net.lua diff --git a/widgets/net.lua b/widgets/net.lua index 84751b6..2585ad4 100644 --- a/widgets/net.lua +++ b/widgets/net.lua @@ -14,9 +14,9 @@ local naughty = require("naughty") local wibox = require("wibox") local io = { popen = io.popen } -local tostring = tostring local string = { format = string.format, - gsub = string.gsub } + gsub = string.gsub, + match = string.match } local setmetatable = setmetatable @@ -42,12 +42,13 @@ end local function worker(args) local args = args or {} local timeout = args.timeout or 2 - local iface = args.iface or net.get_device() local units = args.units or 1024 --kb local notify = args.notify or "on" local screen = args.screen or 1 local settings = args.settings or function() end + iface = args.iface or net.get_device() + net.widget = wibox.widget.textbox('') helpers.set_map(iface, true) @@ -55,7 +56,10 @@ local function worker(args) function update() net_now = {} - if iface == "" then iface = net.get_device() end + if iface == "" or string.match(iface, "network off") + then + iface = net.get_device() + end net_now.carrier = helpers.first_line('/sys/class/net/' .. iface .. '/carrier') or "0" @@ -66,10 +70,10 @@ local function worker(args) local now_r = helpers.first_line('/sys/class/net/' .. iface .. '/statistics/rx_bytes') or 0 - net_now.sent = tostring((now_t - net.last_t) / timeout / units) + net_now.sent = (now_t - net.last_t) / timeout / units net_now.sent = string.gsub(string.format('%.1f', net_now.sent), ",", ".") - net_now.received = tostring((now_r - net.last_r) / timeout / units) + net_now.received = (now_r - net.last_r) / timeout / units net_now.received = string.gsub(string.format('%.1f', net_now.received), ",", ".") widget = net.widget