X-Git-Url: https://git.madduck.net/etc/awesome.git/blobdiff_plain/eb8cec907a50f3fd6df4b14ae10b910444017f92..726bf16543bd5a0e949aed7e59f9f4b967fdf123:/widgets/temp.lua

diff --git a/widgets/temp.lua b/widgets/temp.lua
index 5b1ebf5..a857e71 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,31 @@ 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 })