From 91cceec62f3ed1aaa43fcfe0723aa6649fc875d6 Mon Sep 17 00:00:00 2001 From: bryan Date: Sun, 13 Apr 2025 13:34:39 -0400 Subject: [PATCH] Fix download to stdout --- README.md | 4 ++++ installJRMC | 17 ++++++++++++++++- 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index c12195b..addcb91 100755 --- a/README.md +++ b/README.md @@ -114,6 +114,10 @@ Multiple services (but not `--service-types`) can be installed at one time using Install the latest version of MC from the best available repository. +* `installJRMC --mcversion 32 --debug` + + Install the latest version of MC32 from the best available repository with debugging output. + * `installJRMC --install local --compat` Install a more widely-compatible version of the latest MC (for older distros). diff --git a/installJRMC b/installJRMC index 06b55cd..014ff60 100755 --- a/installJRMC +++ b/installJRMC @@ -430,7 +430,7 @@ get_latest_mc_version() { mc_version_source="containerized package manager" execute buildah rm "$cnt" # Fallback to webscrape - elif MC_VERSION=$(download "$BOARD_URL" | grep -o "[0-9][0-9]\.[0-9]\.[0-9]\+" | head -n 1) \ + elif MC_VERSION=$(download_stdout "$BOARD_URL" | grep -o "[0-9][0-9]\.[0-9]\.[0-9]\+" | head -n 1) \ && [[ $MC_VERSION =~ ^[0-9]+\.[0-9]+\.[0-9]+ ]]; then mc_version_source="webscrape" # Fallback to hardcoded value @@ -1802,6 +1802,21 @@ download() { "${cmd[@]}" "$url" } +download_stdout() { + local url="$1" + local -a cmd + + if command -v curl &>/dev/null; then + cmd=(curl --silent --fail --location -o - "$url") + elif command -v wget &>/dev/null; then + cmd=(wget --quiet -O - "$url") + else + err "Neither curl nor wget is available" + return 1 + fi + + "${cmd[@]}" +} # Roughly turn debugging on for pre-init # Reset and reparse in parse_input() with getopt