Ele deve funcionar para a maioria dos programas se você definir a variável de ambiente DESKTOP
para :0
, para que os programas saibam onde está o seu servidor X e GNOME_DESKTOP_SESSION_ID
para 0
(ou algum outro valor) como xdg-open
para adivinhar que você está usando o GNOME.
Por exemplo:
export DISPLAY=:0
export GNOME_DESKTOP_SESSION_ID=0
xdg-open document.pdf