From ee45dce86a585ae4007aec061daf8d5f7136d6bb Mon Sep 17 00:00:00 2001
From: Recolic <git@me.recolic.net>
Date: Mon, 15 Jan 2024 19:55:42 -0800
Subject: [PATCH] .note

---
 README.md        | 2 +-
 cron-callback.sh | 8 +++++++-
 2 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/README.md b/README.md
index 5e7b41e..11ffc2f 100644
--- a/README.md
+++ b/README.md
@@ -16,7 +16,7 @@ Turn your server/desktop to DigitalOcean / Linode / Vultr with a super-simple sc
 
 qemu, bash, sed
 
-Optional: aria2c (simply replace aria2c with curl if you don't like it)
+Any of them: aria2c / wget / curl
 
 > ArchLinux user: simply run `pacman -S cdrkit qemu-base aria2`
 
diff --git a/cron-callback.sh b/cron-callback.sh
index 99af843..6b0d414 100755
--- a/cron-callback.sh
+++ b/cron-callback.sh
@@ -47,7 +47,13 @@ function download_cloud_img_if_not_exist () {
     [ ! "${knowledge[$cloudimg]+abc}" ] && echo2 "Unknown cloudimg $cloudimg. cannot download it." && return 1
 
     echo2 "+ Downloading cloudimg $cloudimg..."
-    aria2c -o "base/$cloudimg" "${knowledge[$cloudimg]}" || ! echo2 "Failed to download ubuntu cloudimg" || return $?
+    if which aria2c; then
+        aria2c -o "base/$cloudimg" "${knowledge[$cloudimg]}" || ! echo2 "Failed to download ubuntu cloudimg" || return $?
+    elif which wget; then
+        wget   -O "base/$cloudimg" "${knowledge[$cloudimg]}" || ! echo2 "Failed to download ubuntu cloudimg" || return $?
+    elif which curl; then
+        curl   -o "base/$cloudimg" "${knowledge[$cloudimg]}" || ! echo2 "Failed to download ubuntu cloudimg" || return $?
+    fi
 }
 
 function create_vm_if_not_exist () {
-- 
GitLab