• tetris11@lemmy.ml
    link
    fedilink
    arrow-up
    4
    ·
    edit-2
    2 months ago

    Yup, or even a simple notify-send. Trying to work out which environment variables are needed to get the damn thing to focus on the window in question which may or may not be an X11 window within Wayland. The magic formula I’ve learned so far:

    DBUS_SESSION_BUS_ADDRESS="unix:path=/run/user/$(id -i)/bus" \
    XDG_RUNTIME_DIR=/run/user/$(id -u) \ 
    XAUTH=$(ps aux | grep "/usr/bin/Xwayland :0 -auth" \
           | grep -v grep | sed -r 's|.*-auth ([^ ]*).*$|\1|') \
    DISPLAY=:0 \
    XAUTHORITY=$XAUTH  <finally your command here>
    

    (oh and sometimes you might need to preface that all with a sudo, oh and there’s no guarantee that the Display is at :0, even if no other display is in use). Eaaazyyy peaaaazyyy

    I will say that wtype is the one wayland automation tool that does not need any preamble. It just works out of the box, genuinely good engineering by the developers on that project.