| # Linux: one-click icon on the Desktop. macOS: aliases start-ui.command. | |
| set -euo pipefail | |
| ROOT="$(cd "$(dirname "$0")/.." && pwd)" | |
| chmod +x "$ROOT/scripts/start-ui.sh" "$ROOT/scripts/start-ui.command" | |
| if [[ "$(uname -s)" == "Darwin" ]]; then | |
| DEST="$HOME/Desktop/Receipt Studio.command" | |
| # Write a wrapper (not a symlink): Desktop double-click must not depend on $0. | |
| cat > "$DEST" <<EOF | |
| #!/bin/bash | |
| cd "$ROOT" | |
| exec "$ROOT/scripts/start-ui.sh" | |
| EOF | |
| chmod +x "$DEST" | |
| echo "Mac: double-click Desktop/Receipt Studio.command (first time: right-click → Open)" | |
| exit 0 | |
| fi | |
| DESKTOP="${XDG_DESKTOP_DIR:-$HOME/Desktop}" | |
| mkdir -p "$DESKTOP" "$HOME/.local/share/applications" | |
| APP="$DESKTOP/Receipt Studio.desktop" | |
| cat > "$APP" <<EOF | |
| [Desktop Entry] | |
| Version=1.0 | |
| Type=Application | |
| Name=Receipt Studio | |
| Comment=Open the receipt scanner Review UI | |
| Exec=$ROOT/scripts/start-ui.sh | |
| Path=$ROOT | |
| Icon=applications-office | |
| Terminal=false | |
| Categories=Office;Utility; | |
| StartupNotify=true | |
| EOF | |
| chmod +x "$APP" | |
| cp "$APP" "$HOME/.local/share/applications/receipt-studio.desktop" | |
| echo "Linux: double-click Desktop/Receipt Studio.desktop (Mark as trusted / Allow Launching if asked)" | |