diff --git a/install.sh b/install.sh index b3e4a8e..a750dab 100755 --- a/install.sh +++ b/install.sh @@ -81,12 +81,17 @@ download_and_extract() { wget -qO "$TMP_TAR" "$TAR_URL" || die "Download failed" fi + if ! file "$TMP_TAR" | grep -q 'gzip'; then + rm -f "$TMP_TAR" + die "Download failed or URL returned invalid content" + fi + # Preserve existing config if updating if [[ -f "$INSTALL_DIR/qlpycon.conf" ]]; then warn "Existing qlpycon.conf found - keeping it" - tar -xzf "$TMP_TAR" -C "$INSTALL_DIR" --exclude='qlpycon.conf' + tar -xzf "$TMP_TAR" -C "$INSTALL_DIR" --exclude='qlpycon.conf' || die "Extraction failed" else - tar -xzf "$TMP_TAR" -C "$INSTALL_DIR" + tar -xzf "$TMP_TAR" -C "$INSTALL_DIR" || die "Extraction failed" fi rm -f "$TMP_TAR"