diff --git a/scripts/install-pulse.sh b/scripts/install-pulse.sh index d464f10c7..6879a3a07 100755 --- a/scripts/install-pulse.sh +++ b/scripts/install-pulse.sh @@ -456,36 +456,42 @@ perform_tarball_update() { print_info "NPM dependencies already present in tarball." fi - # Always check if CSS assets need building for tarball updates + # Always check if CSS assets are valid after tarball extraction print_info "Verifying CSS assets in $PULSE_DIR..." # Check if output.css exists and is valid (not corrupted with HTML content) - css_needs_fix=false if [ ! -f "$PULSE_DIR/src/public/output.css" ]; then - print_warning "output.css file is missing - will be restored from tarball" - css_needs_fix=true + print_error "Critical: output.css file is missing after tarball extraction. This indicates a problem with the tarball or extraction process." + # Try to re-extract just the CSS file as a fallback + if curl -sL "https://github.com/rcourtman/Pulse/releases/download/$TARGET_TAG/pulse-${TARGET_TAG#v}.tar.gz" | tar -xzf - --to-stdout "pulse-${TARGET_TAG#v}/src/public/output.css" > "$PULSE_DIR/src/public/output.css" 2>/dev/null; then + print_success "CSS file recovered using direct extraction." + else + print_error "Failed to recover CSS file. Frontend may not display correctly." + fi elif [ ! -s "$PULSE_DIR/src/public/output.css" ]; then - print_warning "output.css file is empty - will be restored from tarball" - css_needs_fix=true + print_error "Critical: output.css file is empty after tarball extraction." + # Try to re-extract just the CSS file as a fallback + if curl -sL "https://github.com/rcourtman/Pulse/releases/download/$TARGET_TAG/pulse-${TARGET_TAG#v}.tar.gz" | tar -xzf - --to-stdout "pulse-${TARGET_TAG#v}/src/public/output.css" > "$PULSE_DIR/src/public/output.css" 2>/dev/null; then + print_success "CSS file recovered using direct extraction." + else + print_error "Failed to recover CSS file. Frontend may not display correctly." + fi elif head -1 "$PULSE_DIR/src/public/output.css" 2>/dev/null | grep -q "/dev/null | grep -q " "$PULSE_DIR/src/public/output.css" 2>/dev/null; then + # Verify the recovery worked + if [ -s "$PULSE_DIR/src/public/output.css" ] && ! head -1 "$PULSE_DIR/src/public/output.css" 2>/dev/null | grep -q "