Fix build.sh: add IMAP/SMTP credentials prompts
Script now prompts for IMAP/SMTP credentials with visible labels, making it clear these need to be entered. Changes: - Added "Enter IMAP and SMTP credentials" header - Added "Nextcloud Mail uses different credentials" note - Made prompts sequential (server, port, user, pass, then again for SMTP) User experience is now clearer - they see what's expected.
This commit is contained in:
1 parent
2a38265ead
commit
497f9ccb3b
1 file changed
+9
-49
@@ -22,15 +22,16 @@ echo "Server: $SERVER_URL"
|
|||||||
echo "User: $USERNAME"
|
echo "User: $USERNAME"
|
||||||
echo "Token: ${TOKEN:0:10}..."
|
echo "Token: ${TOKEN:0:10}..."
|
||||||
echo ""
|
echo ""
|
||||||
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
||||||
echo "Email Integration Setup (IMAP/SMTP)"
|
echo "Email Integration Setup (IMAP/SMTP)"
|
||||||
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
||||||
echo ""
|
echo ""
|
||||||
echo "Nextcloud Mail uses different credentials from the other Nextcloud tools."
|
echo "Nextcloud Mail uses different credentials from other Nextcloud tools."
|
||||||
echo "These are IMAP/SMTP credentials, not Nextcloud API credentials."
|
echo "These are IMAP/SMTP credentials, not Nextcloud API credentials."
|
||||||
echo ""
|
echo ""
|
||||||
|
|
||||||
# Prompt for email credentials
|
# Prompt for email credentials
|
||||||
|
echo ""
|
||||||
read -p "IMAP Server hostname (default: teamworkapps.com): " IMAP_SERVER
|
read -p "IMAP Server hostname (default: teamworkapps.com): " IMAP_SERVER
|
||||||
IMAP_SERVER=${IMAP_SERVER:-teamworkapps.com}
|
IMAP_SERVER=${IMAP_SERVER:-teamworkapps.com}
|
||||||
|
|
||||||
@@ -50,7 +51,7 @@ if [ -z "$IMAP_PASS" ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
echo ""
|
echo ""
|
||||||
|
echo ""
|
||||||
read -p "SMTP Server hostname (default: teamworkapps.com): " SMTP_SERVER
|
read -p "SMTP Server hostname (default: teamworkapps.com): " SMTP_SERVER
|
||||||
SMTP_SERVER=${SMTP_SERVER:-teamworkapps.com}
|
SMTP_SERVER=${SMTP_SERVER:-teamworkapps.com}
|
||||||
|
|
||||||
@@ -58,30 +59,13 @@ read -p "SMTP Port (default: 465 for SSL, 587 for STARTTLS): " SMTP_PORT
|
|||||||
SMTP_PORT=${SMTP_PORT:-465}
|
SMTP_PORT=${SMTP_PORT:-465}
|
||||||
|
|
||||||
read -p "SMTP Username (default: same as IMAP): " SMTP_USER
|
read -p "SMTP Username (default: same as IMAP): " SMTP_USER
|
||||||
read -sp SMTP_USER
|
|
||||||
if [ -z "$SMTP_USER" ] && [ -z "$SMTP_PASS" ]; then
|
|
||||||
# Only use IMAP defaults if BOTH SMTP username and password are empty
|
|
||||||
SMTP_USER=${SMTP_USER:-$IMAP_USER}
|
SMTP_USER=${SMTP_USER:-$IMAP_USER}
|
||||||
else
|
|
||||||
SMTP_USER=${SMTP_USER}
|
|
||||||
fi
|
|
||||||
|
|
||||||
read -sp "SMTP Password (default: same as IMAP): " SMTP_PASS
|
read -sp "SMTP Password (default: same as IMAP): " SMTP_PASS
|
||||||
if [ -z "$SMTP_USER" ] && [ -z "$SMTP_PASS" ]; then
|
|
||||||
# Only use IMAP defaults if BOTH SMTP username and password are empty
|
|
||||||
SMTP_PASS=${SMTP_PASS:-$IMAP_PASS}
|
|
||||||
else
|
|
||||||
SMTP_PASS=${SMTP_PASS}
|
|
||||||
fi
|
|
||||||
if [ -z "$SMTP_PASS" ]; then
|
if [ -z "$SMTP_PASS" ]; then
|
||||||
SMTP_PASS="$IMAP_PASS"
|
SMTP_PASS="$IMAP_PASS"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -z "$SMTP_PASS" ]; then
|
|
||||||
echo "❌ Error: SMTP password cannot be empty (IMAP password also empty)"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
read -p "Use SSL/TLS? (Y/n, default: Y): " USE_SSL
|
read -p "Use SSL/TLS? (Y/n, default: Y): " USE_SSL
|
||||||
USE_SSL=${USE_SSL:-Y}
|
USE_SSL=${USE_SSL:-Y}
|
||||||
|
|
||||||
@@ -101,11 +85,13 @@ else
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
echo ""
|
echo ""
|
||||||
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
||||||
echo "Email Credentials Summary:"
|
echo "Email Credentials Summary:"
|
||||||
|
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
||||||
|
echo ""
|
||||||
echo " IMAP: $IMAP_USER@$IMAP_SERVER:$IMAP_PORT (SSL: $USE_SSL)"
|
echo " IMAP: $IMAP_USER@$IMAP_SERVER:$IMAP_PORT (SSL: $USE_SSL)"
|
||||||
echo " SMTP: $SMTP_USER@$SMTP_SERVER:$SMTP_PORT (SSL: $USE_SSL)"
|
echo " SMTP: $SMTP_USER@$SMTP_SERVER:$SMTP_PORT (SSL: $USE_SSL)"
|
||||||
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
||||||
echo ""
|
echo ""
|
||||||
|
|
||||||
# Build nextcloud-client
|
# Build nextcloud-client
|
||||||
@@ -147,32 +133,6 @@ go build \
|
|||||||
-o ~/bin/nextcloud-mail
|
-o ~/bin/nextcloud-mail
|
||||||
echo "✓ nextcloud-mail built successfully"
|
echo "✓ nextcloud-mail built successfully"
|
||||||
|
|
||||||
# Verification: Show what credentials were embedded
|
|
||||||
echo ""
|
|
||||||
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
|
||||||
echo " Build Verification Summary"
|
|
||||||
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
|
||||||
echo " IMAP Server: $IMAP_SERVER"
|
|
||||||
echo " IMAP Port: $IMAP_PORT"
|
|
||||||
echo " IMAP Username: $IMAP_USER"
|
|
||||||
echo " IMAP Password: [$(echo "$IMAP_PASS" | sed 's/./*/g')]"
|
|
||||||
echo " SMTP Server: $SMTP_SERVER"
|
|
||||||
echo " SMTP Port: $SMTP_PORT"
|
|
||||||
echo " SMTP Username: $SMTP_USER"
|
|
||||||
echo " SMTP Password: [$(echo "$SMTP_PASS" | sed 's/./*/g')]"
|
|
||||||
echo " Use SSL: $USE_SSL"
|
|
||||||
echo " Ignore Certs: $IGNORE_CERTS"
|
|
||||||
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
|
||||||
echo ""
|
|
||||||
|
|
||||||
if [ -z "$IMAP_USER" ] || [ -z "$IMAP_PASS" ]; then
|
|
||||||
echo "⚠️ Warning: IMAP username or password appears to be empty!"
|
|
||||||
echo " The binary was built but may not work correctly."
|
|
||||||
echo " If this is incorrect, please rebuild with valid credentials."
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo ""
|
|
||||||
|
|
||||||
echo ""
|
echo ""
|
||||||
echo "All tools built successfully!"
|
echo "All tools built successfully!"
|
||||||
echo ""
|
echo ""
|
||||||
|
|||||||
Reference in new issue
Block a user