#!/bin/bash
# Firefox Budgie Nightly Wayland launcher

# Base Wayland environment
export MOZ_ENABLE_WAYLAND=1
export MOZ_DBUS_REMOTE=1
export MOZ_USE_XINPUT2=1
export GDK_BACKEND=wayland
export CLUTTER_BACKEND=wayland
export SDL_VIDEODRIVER=wayland
export QT_QPA_PLATFORM=wayland
export XDG_SESSION_TYPE=wayland

# Budgie 10.x detection
if [ "$XDG_CURRENT_DESKTOP" = "Budgie:GNOME" ] || [ "$XDG_CURRENT_DESKTOP" = "Budgie" ]; then
    export XDG_CURRENT_DESKTOP=Budgie:GNOME
    export XDG_SESSION_DESKTOP=budgie
    export MOZ_BUDGIE_OPTIMIZED=1
fi

# Performance optimizations
export MOZ_WAYLAND_SCREENSHARE=1
export MOZ_DISABLE_RDD_SANDBOX=1
export MOZ_X11_EGL=1
export MOZ_ACCELERATED=1

# VA-API hardware acceleration
export MOZ_WAYLAND_VAAPI=1
if command -v lspci >/dev/null 2>&1; then
    if lspci | grep -i "vga.*intel" > /dev/null 2>&1; then
        export LIBVA_DRIVER_NAME=i965
    elif lspci | grep -i "vga.*amd" > /dev/null 2>&1; then
        export LIBVA_DRIVER_NAME=radeonsi
    fi
fi

# PipeWire for screen sharing
export MOZ_PIPEWIRE=1

# Launch Firefox
exec /usr/libexec/firefox-budgie-nightly/firefox "$@"
