From bfff2ebf48c5c182d20bc468d0261781e03fbfa4 Mon Sep 17 00:00:00 2001 From: Olav Bakke Svendsen Date: Tue, 10 Oct 2023 13:00:37 +0200 Subject: [PATCH] Added override flag on dl.lua --- common/dl.lua | 31 ++++++++++++++++++++++--------- 1 file changed, 22 insertions(+), 9 deletions(-) diff --git a/common/dl.lua b/common/dl.lua index 718fdb0..be38e7e 100644 --- a/common/dl.lua +++ b/common/dl.lua @@ -1,15 +1,28 @@ -- dl.lua -- download from git repo -- usage: --- dl path/to/file.lua - saves to file.lua +-- dl path/to/file.lua - saves to file.lua +-- dl path/to/file.lua -o - overwrites file.lua -local from = {...} -if from[1] then - local url = "https://git.olavbs.no/?p=cc.git;a=blob_plain;f="..from[1]..";hb=HEAD" - local to = string.match(from[1], "([^/]-)$") - if not shell.run("wget "..url.." "..to) then - print("Couldn't download "..from[1]) - end -else +local from, override_flag = table.unpack({...}) +local override = override_flag == "-o" + +local download = function(f,t) + return shell.run("wget "..f.." "..t) +end + +if not from then print("Nothing to download") +else + local url = "https://git.olavbs.no/?p=cc.git;a=blob_plain;f="..from..";hb=HEAD" + local to = string.match(from, "([^/]-)$") + if fs.exists(to) and override then + local tmp = textutils.serialize(math.random(100000,999999)) + if download(url,tmp) then + fs.delete(to) + fs.move(tmp,to) + end + else + download(url,to) + end end -- 2.30.2