X-Git-Url: https://git.madduck.net/etc/awesome.git/blobdiff_plain/8d37b9a1e4521a220f20ce2e1414f656aa3a5015..f7601c768102a898fdd9dc73fbacced412aa143e:/widgets/temp.lua?ds=sidebyside

diff --git a/widgets/temp.lua b/widgets/temp.lua
index 5b1ebf5..67c9456 100644
--- a/widgets/temp.lua
+++ b/widgets/temp.lua
@@ -10,7 +10,7 @@ local newtimer     = require("lain.helpers").newtimer
 
 local wibox        = require("wibox")
 
-local io           = io
+local io           = { open = io.open }
 local tonumber     = tonumber
 
 local setmetatable = setmetatable
@@ -19,23 +19,30 @@ local setmetatable = setmetatable
 -- lain.widgets.temp
 local temp = {}
 
-function worker(args)
+local function worker(args)
     local args     = args or {}
-    local timeout  = args.timeout or 5
+    local timeout  = args.timeout or 2
+    local tempfile = args.tempfile or "/sys/class/thermal/thermal_zone0/temp"
     local settings = args.settings or function() end
 
-    widget = wibox.widget.textbox('')
+    temp.widget = wibox.widget.textbox('')
 
     function update()
-        local f = io.open("/sys/class/thermal/thermal_zone0/temp")
-        coretemp_now = tonumber(f:read("*all")) / 1000
-        f:close()
+        local f = io.open(tempfile)
+        if f ~= nil
+        then
+            coretemp_now = tonumber(f:read("*all")) / 1000
+            f:close()
+        else
+            coretemp_now = "N/A"
+        end
+
+        widget = temp.widget
         settings()
     end
 
     newtimer("coretemp", timeout, update)
-
-    return widget
+    return temp.widget
 end
 
 return setmetatable(temp, { __call = function(_, ...) return worker(...) end })