diff options
Diffstat (limited to 'health-model.lua')
-rw-r--r-- | health-model.lua | 22 |
1 files changed, 10 insertions, 12 deletions
diff --git a/health-model.lua b/health-model.lua index 81d0bb4..8007ff0 100644 --- a/health-model.lua +++ b/health-model.lua @@ -4,31 +4,29 @@ module (..., package.seeall) fs = require("acf.fs") date = require("acf.date") format = require("acf.format") - -local path = "PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin " +require("modelfunctions") -- ############################################################### -- Private functions local function querycmd ( cmdline ) - local cmd = io.popen( path..format.escapespecialcharacters(cmdline) ) - local cmd_result = cmd:read("*a") or "unknown" - cmd:close() + local cmd_result = modelfunctions.run_executable(format.string_to_table(cmdline, "%s+")) + if not cmd_result or cmd_result == "" then + cmd_result = "unknown" + end return cmd_result end local function indexversion ( ) - local cmd = io.popen( path.."apk version --index 2>/dev/null" ) - local cmd_result = cmd:read("*a") + local cmd_result = modelfunctions.run_executable({"apk", "version", "--index"}) if cmd_result == "" then cmd_result = nil end - cmd:close() return cmd_result end local function diskfree ( media ) - if not (media) then media = "" end - local cmd = io.popen( path.."df -h " .. format.escapespecialcharacters(media) ) - local cmd_result = cmd:read("*a") or "unknown" - cmd:close() + local cmd_result = modelfunctions.run_executable({"df", "-h", media}) + if not cmd_result or cmd_result == "" then + cmd_result = "unknown" + end return cmd_result end |