setup.sh: fix read — use -t 0 (stdin TTY), add 5s timeout for piped mode so user can abort or wait
This commit is contained in:
@@ -34,7 +34,7 @@ if ! command -v curl &> /dev/null; then
|
|||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Check for Docker (docker.io or docker-ce)
|
# Check for Docker
|
||||||
DOCKER_INSTALLED=false
|
DOCKER_INSTALLED=false
|
||||||
if command -v docker &> /dev/null; then
|
if command -v docker &> /dev/null; then
|
||||||
DOCKER_INSTALLED=true
|
DOCKER_INSTALLED=true
|
||||||
@@ -75,8 +75,8 @@ echo "Data: SQLite database is stored in a Docker named volume."
|
|||||||
echo " Use 'docker compose down -v' to DELETE the database."
|
echo " Use 'docker compose down -v' to DELETE the database."
|
||||||
echo ""
|
echo ""
|
||||||
|
|
||||||
# Confirm
|
# Confirm — if stdin is a TTY, ask interactively. Otherwise auto-proceed after 5s.
|
||||||
if [ -t 1 ]; then
|
if [ -t 0 ]; then
|
||||||
echo -n "Continue? [Y/n]: "
|
echo -n "Continue? [Y/n]: "
|
||||||
read -r CONFIRM
|
read -r CONFIRM
|
||||||
CONFIRM=${CONFIRM:-Y}
|
CONFIRM=${CONFIRM:-Y}
|
||||||
@@ -85,8 +85,13 @@ if [ -t 1 ]; then
|
|||||||
exit 0
|
exit 0
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
echo "(No TTY — proceeding automatically)"
|
echo -n "Continue? [Y/n] (auto-proceeding in 5s): "
|
||||||
echo ""
|
read -r -t 5 CONFIRM 2>/dev/null || true
|
||||||
|
CONFIRM=${CONFIRM:-Y}
|
||||||
|
if [ "$CONFIRM" != "Y" ] && [ "$CONFIRM" != "y" ]; then
|
||||||
|
echo "Aborted."
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo ""
|
echo ""
|
||||||
@@ -106,7 +111,7 @@ else
|
|||||||
if [ "$DOCKER_INSTALLED" = "false" ]; then
|
if [ "$DOCKER_INSTALLED" = "false" ]; then
|
||||||
echo " Installing docker.io from Debian repos..."
|
echo " Installing docker.io from Debian repos..."
|
||||||
apt-get install -y -qq docker.io > /dev/null 2>&1 || {
|
apt-get install -y -qq docker.io > /dev/null 2>&1 || {
|
||||||
echo " ERROR: Could not install docker.io. Try: apt-get install docker.io"
|
echo " ERROR: Could not install docker.io."
|
||||||
exit 1
|
exit 1
|
||||||
}
|
}
|
||||||
echo " docker.io installed."
|
echo " docker.io installed."
|
||||||
|
|||||||
Reference in New Issue
Block a user