summaryrefslogtreecommitdiff
path: root/mac/.config/yazi/plugins.bak/sudo-demo.yazi/main.lua
diff options
context:
space:
mode:
Diffstat (limited to 'mac/.config/yazi/plugins.bak/sudo-demo.yazi/main.lua')
-rw-r--r--mac/.config/yazi/plugins.bak/sudo-demo.yazi/main.lua45
1 files changed, 0 insertions, 45 deletions
diff --git a/mac/.config/yazi/plugins.bak/sudo-demo.yazi/main.lua b/mac/.config/yazi/plugins.bak/sudo-demo.yazi/main.lua
deleted file mode 100644
index 599afe4..0000000
--- a/mac/.config/yazi/plugins.bak/sudo-demo.yazi/main.lua
+++ /dev/null
@@ -1,45 +0,0 @@
---- @since 25.5.31
-
---- Verify if `sudo` is already authenticated
---- @return boolean
-local function sudo_already()
- local status = Command("sudo"):arg({ "--validate", "--non-interactive" }):status()
- assert(status, "Failed to run `sudo --validate --non-interactive`")
- return status.success
-end
-
---- Run a program with `sudo` privilege
---- @param program string
---- @param args table
---- @return Output|nil output
---- @return integer|nil err
---- nil: no error
---- 1: sudo failed
-local function run_with_sudo(program, args)
- local cmd = Command("sudo"):arg(program):arg(args)
- if sudo_already() then
- return cmd:output()
- end
-
- local permit = ui.hide and ui.hide() or ya.hide() -- TODO: remove this
- print(string.format("Sudo password required to run: `%s %s`", program, table.concat(args)))
- local output = cmd:output()
- permit:drop()
-
- if output.status.success or sudo_already() then
- return output
- end
- return nil, 1
-end
-
-return {
- entry = function()
- local output = run_with_sudo("ls", { "-l" })
- if not output then
- return ya.err("Failed to run `sudo ls -l`")
- end
-
- ya.err("stdout", output.stdout)
- ya.err("status.code", output.status.code)
- end,
-}