2025-04-01 12:42:03 -04:00

39 lines
1.3 KiB
Plaintext

LOG_FILE="$HOME/claude-desktop-launcher.log"
echo "--- Claude Desktop Launcher Start ---" >> "$LOG_FILE"
echo "Timestamp: $(date)" >> "$LOG_FILE"
echo "Arguments: $@" >> "$LOG_FILE"
if ! command -v electron33 &> /dev/null; then
echo "Error: electron33 is not installed. Please install it with 'xbps-install -S electron33'" | tee -a "$LOG_FILE"
exit 1
fi
IS_WAYLAND=false
if [ ! -z "$WAYLAND_DISPLAY" ]; then
IS_WAYLAND=true
echo "Wayland detected" >> "$LOG_FILE"
fi
APP_PATH="/usr/lib/claude-desktop/app.asar"
if [ ! -f "$APP_PATH" ]; then
echo "Error: Claude Desktop app.asar not found at $APP_PATH" | tee -a "$LOG_FILE"
exit 1
fi
ELECTRON_ARGS=("$APP_PATH")
if [ "$IS_WAYLAND" = true ]; then
echo "Adding Wayland flags" >> "$LOG_FILE"
ELECTRON_ARGS+=("--enable-features=UseOzonePlatform,WaylandWindowDecorations" "--ozone-platform=wayland")
fi
echo "Changing directory to /usr/lib/claude-desktop" >> "$LOG_FILE"
cd /usr/lib/claude-desktop || { echo "Failed to cd to /usr/lib/claude-desktop" >> "$LOG_FILE"; exit 1; }
echo "Executing: electron33 ${ELECTRON_ARGS[*]} $*" >> "$LOG_FILE"
electron33 "${ELECTRON_ARGS[@]}" "$@" >> "$LOG_FILE" 2>&1
EXIT_CODE=$?
echo "Electron exited with code: $EXIT_CODE" >> "$LOG_FILE"
echo "--- Claude Desktop Launcher End ---" >> "$LOG_FILE"
exit $EXIT_CODE