#!/bin/bash set -e # Validate node_modules permissions before starting if [ -d /app/peikarband/.web/node_modules/.bin ]; then echo "Checking node_modules/.bin permissions..." REACT_ROUTER_BIN="/app/peikarband/.web/node_modules/.bin/react-router" # Check if react-router exists if [ -e "$REACT_ROUTER_BIN" ]; then # If it's a symlink, check and fix the target if [ -L "$REACT_ROUTER_BIN" ]; then TARGET=$(readlink -f "$REACT_ROUTER_BIN") echo "react-router is a symlink pointing to: $TARGET" if [ -f "$TARGET" ] && [ ! -x "$TARGET" ]; then echo "WARNING: Target file is not executable, attempting to fix..." chmod +x "$TARGET" 2>/dev/null || true fi fi # Fix permissions for react-router itself (file or symlink) if [ ! -x "$REACT_ROUTER_BIN" ]; then echo "WARNING: react-router is not executable, attempting to fix..." chmod +x "$REACT_ROUTER_BIN" 2>/dev/null || true fi # Fix all .bin files and their symlink targets echo "Fixing permissions for all .bin files and symlink targets..." find /app/peikarband/.web/node_modules/.bin -type f -exec chmod +x {} \; 2>/dev/null || true find /app/peikarband/.web/node_modules/.bin -type l | while read symlink; do target=$(readlink -f "$symlink" 2>/dev/null || true) if [ -n "$target" ] && [ -f "$target" ]; then chmod +x "$target" 2>/dev/null || true fi chmod +x "$symlink" 2>/dev/null || true done # Verify react-router is executable if [ -x "$REACT_ROUTER_BIN" ]; then echo "✅ react-router is executable" else echo "⚠️ WARNING: react-router may still not be executable (running as non-root)" fi else echo "⚠️ WARNING: react-router binary not found" fi fi # Change to the directory containing rxconfig.py cd /app/peikarband # Run reflex with all passed arguments exec reflex "$@"