fix(bootstrap): fix shellcheck warnings, arch bug, and update gum

- Fix sprout i686 arch mapping: 'x86' → '386' to match artifact URLs
- Add PATH export to sprout script (consistency with farmer)
- Fix SC2207 shellcheck warnings in farmer (quote command substitutions)
- Update gum from v0.11.0 to v0.17.0
This commit is contained in:
2026-02-25 08:01:25 +00:00
parent bcc1c546b4
commit b5e649b6e5
2 changed files with 8 additions and 7 deletions

View File

@@ -63,16 +63,16 @@ EOF
trap 'rm -r "$tempdir"' EXIT trap 'rm -r "$tempdir"' EXIT
case $machine_arch in case $machine_arch in
"386") "386")
curl -f -L -s "https://github.com/charmbracelet/gum/releases/download/v0.11.0/gum_0.11.0_Linux_i386.tar.gz" > "$tempdir/gum.tar.gz" curl -f -L -s "https://github.com/charmbracelet/gum/releases/download/v0.17.0/gum_0.17.0_Linux_i386.tar.gz" > "$tempdir/gum.tar.gz"
;; ;;
"amd64") "amd64")
curl -f -L -s "https://github.com/charmbracelet/gum/releases/download/v0.11.0/gum_0.11.0_Linux_x86_64.tar.gz" > "$tempdir/gum.tar.gz" curl -f -L -s "https://github.com/charmbracelet/gum/releases/download/v0.17.0/gum_0.17.0_Linux_x86_64.tar.gz" > "$tempdir/gum.tar.gz"
;; ;;
"arm64") "arm64")
curl -f -L -s "https://github.com/charmbracelet/gum/releases/download/v0.11.0/gum_0.11.0_Linux_arm64.tar.gz" > "$tempdir/gum.tar.gz" curl -f -L -s "https://github.com/charmbracelet/gum/releases/download/v0.17.0/gum_0.17.0_Linux_arm64.tar.gz" > "$tempdir/gum.tar.gz"
;; ;;
"arm") "arm")
curl -f -L -s "https://github.com/charmbracelet/gum/releases/download/v0.11.0/gum_0.11.0_Linux_arm.tar.gz" > "$tempdir/gum.tar.gz" curl -f -L -s "https://github.com/charmbracelet/gum/releases/download/v0.17.0/gum_0.17.0_Linux_arm.tar.gz" > "$tempdir/gum.tar.gz"
;; ;;
esac esac
tar -C "$tempdir" -xzf "$tempdir/gum.tar.gz" tar -C "$tempdir" -xzf "$tempdir/gum.tar.gz"
@@ -96,7 +96,7 @@ EOF
if [ -z "$ADMIN_PUBKEYS" ]; then if [ -z "$ADMIN_PUBKEYS" ]; then
ADMIN_PUBKEYS=() ADMIN_PUBKEYS=()
while true; do while true; do
ADMIN_PUBKEYS+=($(gum input --width=57 --placeholder="ABC25HBCYNHYMIFTN372NCKASUQPJCTBA66GLKXFYM3QGRP42IC5BYYF" --prompt="Enter an admin public key (generated by 'grlx auth pubkey'): > ")) ADMIN_PUBKEYS+=("$(gum input --width=57 --placeholder="ABC25HBCYNHYMIFTN372NCKASUQPJCTBA66GLKXFYM3QGRP42IC5BYYF" --prompt="Enter an admin public key (generated by 'grlx auth pubkey'): > ")")
if ! gum confirm "Add another admin public key?"; then if ! gum confirm "Add another admin public key?"; then
break break
fi fi
@@ -105,7 +105,7 @@ EOF
if [ -z "$CERT_HOSTS" ]; then if [ -z "$CERT_HOSTS" ]; then
CERT_HOSTS=() CERT_HOSTS=()
while true; do while true; do
CERT_HOSTS+=($(gum input --placeholder="mydomain.com" --prompt="Enter a domain or IP to generate a certificate for: > ")) CERT_HOSTS+=("$(gum input --placeholder="mydomain.com" --prompt="Enter a domain or IP to generate a certificate for: > ")")
if ! gum confirm "Add another domain or IP?"; then if ! gum confirm "Add another domain or IP?"; then
break break
fi fi

View File

@@ -1,5 +1,6 @@
#!/usr/bin/env bash #!/usr/bin/env bash
set -e -o pipefail set -e -o pipefail
export PATH=$PATH:/usr/local/bin:/usr/sbin:/usr/bin
arch=$(uname -m) arch=$(uname -m)
@@ -8,7 +9,7 @@ case $arch in
machine_arch="amd64" machine_arch="amd64"
;; ;;
"i686"|"i386") "i686"|"i386")
machine_arch="x86" machine_arch="386"
;; ;;
"aarch64"|"arm64"|"armv8") "aarch64"|"arm64"|"armv8")
machine_arch="arm64" machine_arch="arm64"