-- File system disk space usage
-- lain.widgets.fs
-local fs = helpers.make_widget_textbox()
-
--- Unit definitions
-fs.unit = { ["mb"] = 1024, ["gb"] = 1024^2 }
+local fs = { unit = { ["mb"] = 1024, ["gb"] = 1024^2 } }
function fs.hide()
if not fs.notification then return end
fs.notification_preset = args.notification_preset
if not fs.notification_preset then
- fs.notification_preset = naughty.config.defaults
- fs.notification_preset.font = "Monospace 10"
- fs.notification_preset.fg = "#FFFFFF"
- fs.notification_preset.bg = "#000000"
+ fs.notification_preset = {
+ font = "Monospace 10",
+ fg = "#FFFFFF",
+ bg = "#000000"
+ }
end
+ fs.widget = wibox.widget.textbox()
+
helpers.set_map(partition, false)
function fs.update()
fs_info, fs_now = {}, {}
- helpers.async({ shell, "-c", "LC_ALL=C df -k --output=target,size,used,avail,pcent" }, function(f)
+ helpers.async({ shell, "-c", "/usr/bin/env LC_ALL=C df -k --output=target,size,used,avail,pcent" }, function(f)
for line in string.gmatch(f, "\n[^\n]+") do
local m,s,u,a,p = string.match(line, "(/.-%s).-(%d+).-(%d+).-(%d+).-([%d]+)%%")
m = m:gsub(" ", "") -- clean target from any whitespace
widget = fs.widget
settings()
- if notify == "on" and tonumber(fs_now.used) >= 99 and not helpers.get_map(partition) then
+ if notify == "on" and #fs_now.used > 0 and tonumber(fs_now.used) >= 99 and not helpers.get_map(partition) then
naughty.notify({
preset = naughty.config.presets.critical,
title = "Warning",
helpers.newtimer(partition, timeout, fs.update)
- return setmetatable(fs, { __index = fs.widget })
+ return fs
end
return setmetatable(fs, { __call = function(_, ...) return worker(...) end })