Closed mpnordland closed 2 months ago
Xwayland works fine for me on the same cae937c51bd220d6676c6027d05ea51fc3c821bb
I see that you have
exec-once=uwsm finalize WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
At the cursory glance at its finilize
function
it looks like it only updates environment variables when they already were set to something.
Also, recently HYPRLAND_NO_SD_VARS
was implemented, which is used by uwsm.
So, to put it together - hyprland didn't update systemd variables by itself, and uwsm doesn't update DISPLAY unless it was already set - maybe there is some delay for xwayland startup and at the time uwsm finalize
runs it's not ready yet, and thus it's never added to systemd environment variables, which is important to however you launch apps with uwsm assistance...?
$DISPLAY was set, and adding it to the uwsm finalize
still doesn't let X apps start.
$ echo $DISPLAY
:0
Idk, try exec-once = sleep 3s; uwsm finalize WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
.
Xwayland starts at about the same time as IPC, and I recently had to implement a back-off strategy for querying hyprctl devices
, because it didn't have my input
options for keyboards set, right after launch with exec-once
, yet fixed itself after a few seconds.
EDIT:
never mind, tried with
# echo $DISPLAY to some file
exec-once = /tmp/disp.sh
with pretty much default config and HYPRLAND_NO_SD_VARS=1.
Still :1
, and that's right after reboot.
So if it doesn't work (I presume) even when launched without uwsm from the terminal with DISPLAY=:0, idk.
My only guess is that Xwayland is somehow dead.
pgrep Xwayland
?
But anyway, I'd try the simplest config possible without uwsm at all.
xwayland died, dupe of I forgot which #, disconnect your VR headset
Dupe of #6949 it would seem.
Regression?
Yes
System Info and Version
System/Version info
```sh Hyprland, built from branch main at commit cae937c51bd220d6676c6027d05ea51fc3c821bb (layersurface: dont rollover on size_t (7451)). Date: Wed Aug 21 14:05:03 2024 Tag: v0.42.0-54-gcae937c5, commits: 5123 flags: (if any) System Information: System name: Linux Node name: isra Release: 6.10.6-arch1-1 Version: #1 SMP PREEMPT_DYNAMIC Mon, 19 Aug 2024 17:02:39 +0000 GPU information: 2f:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Navi 21 [Radeon RX 6900 XT] [1002:73af] (rev c0) (prog-if 00 [VGA controller]) os-release: NAME="Arch Linux" PRETTY_NAME="Arch Linux" ID=arch BUILD_ID=rolling ANSI_COLOR="38;2;23;147;209" HOME_URL="https://archlinux.org/" DOCUMENTATION_URL="https://wiki.archlinux.org/" SUPPORT_URL="https://bbs.archlinux.org/" BUG_REPORT_URL="https://gitlab.archlinux.org/groups/archlinux/-/issues" PRIVACY_POLICY_URL="https://terms.archlinux.org/docs/privacy-policy/" LOGO=archlinux-logo plugins: ======Config-Start====== Config File: /home/maya/.config/hypr/hyprland.conf: Read Succeeded # This is an example Hyprland config file. # # Refer to the wiki for more information. # # Please note not all available settings / options are set here. # For a full list, see the wiki # # See https://wiki.hyprland.org/Configuring/Monitors/ monitor=,preferred,auto,auto monitor=desc:Samsung Electric Company LU28R55 HCJT800787,preferred,auto,2 monitor=desc:,disable # See https://wiki.hyprland.org/Configuring/Keywords/ for more # Execute your favorite apps at launch exec-once=uwsm finalize WAYLAND_DISPLAY XDG_CURRENT_DESKTOP # Source a file (multi-file configs) # source = ~/.config/hypr/myColors.conf # Some default env vars. # For all categories, see https://wiki.hyprland.org/Configuring/Variables/ input { kb_layout = us kb_variant = kb_model = kb_options = kb_rules = follow_mouse = 1 touchpad { natural_scroll = false } sensitivity = 0 # -1.0 - 1.0, 0 means no modification. } general { # See https://wiki.hyprland.org/Configuring/Variables/ for more gaps_in = 5 gaps_out = 10 border_size = 2 col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg col.inactive_border = rgba(595959aa) layout = dwindle } decoration { # See https://wiki.hyprland.org/Configuring/Variables/ for more rounding = 5 blur { enabled= true size = 3 passes = 1 new_optimizations = true } drop_shadow = true shadow_range = 4 shadow_render_power = 3 col.shadow = rgba(1a1a1aee) } animations { enabled = true # Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more bezier = myBezier, 0.05, 0.9, 0.1, 1.05 animation = windows, 1, 7, myBezier animation = windowsOut, 1, 7, default, popin 80% animation = border, 1, 10, default animation = borderangle, 1, 8, default animation = fade, 1, 7, default animation = workspaces, 1, 6, default } dwindle { # See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more pseudotile = true # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below preserve_split = true # you probably want this } master { # See https://wiki.hyprland.org/Configuring/Master-Layout/ for more new_status = master } gestures { # See https://wiki.hyprland.org/Configuring/Variables/ for more workspace_swipe = false } # Example per-device config # See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more device { name = epic-mouse-v1 sensitivity = -0.5 } misc { vrr = 1 disable_splash_rendering = true } xwayland { force_zero_scaling = false } # Example windowrule v1 # windowrule = float, ^(kitty)$ # Example windowrule v2 # windowrulev2 = float,class:^(kitty)$,title:^(kitty)$ # See https://wiki.hyprland.org/Configuring/Window-Rules/ for more layerrule = blur, layer-shell # See https://wiki.hyprland.org/Configuring/Keywords/ for more $mainMod = SUPER # Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more bind = $mainMod, Return, exec, uwsm app kitty bind = $mainMod SHIFT, C, killactive, bind = $mainMod SHIFT, Q, exec, uwsm app -- wlogout -p layer-shell bind = $mainMod, E, exec, uwsm app loginctl lock-session bind = $mainMod, P, exec, fuzzel --launch-prefix='uwsm app --' --log-no-syslog bind = $mainMod SHIFT, P, exec, passmenu bind = $mainMod, S, exec, grimblast --notify --freeze copy area bind = $mainMod SHIFT, T, exec, hyprctl kill bind = $mainMod, F, fullscreen, 0 bind = $mainMod, M, fullscreen, 1 bind = $mainMod, V, togglefloating, bind = $mainMod, J, togglesplit, # dwindle bind = $mainMod, N, movetoworkspace, special bind = $mainMod SHIFT, N, togglespecialworkspace # Move focus with mainMod + arrow keys bind = $mainMod, h, movefocus, l bind = $mainMod, l, movefocus, r bind = $mainMod, j, movefocus, u bind = $mainMod, k, movefocus, d bind = $mainMod, left, movefocus, l bind = $mainMod, right, movefocus, r bind = $mainMod, up, movefocus, u bind = $mainMod, down, movefocus, d bind = $mainMod, Tab, cyclenext, bind = $mainMod, Tab, bringactivetotop, # Switch workspaces with mainMod + [0-9] bind = $mainMod, 1, workspace, 1 bind = $mainMod, 2, workspace, 2 bind = $mainMod, 3, workspace, 3 bind = $mainMod, 4, workspace, 4 bind = $mainMod, 5, workspace, 5 bind = $mainMod, 6, workspace, 6 bind = $mainMod, 7, workspace, 7 bind = $mainMod, 8, workspace, 8 bind = $mainMod, 9, workspace, 9 bind = $mainMod, 0, workspace, 10 # Move active window to a workspace with mainMod + SHIFT + [0-9] bind = $mainMod SHIFT, 1, movetoworkspace, 1 bind = $mainMod SHIFT, 2, movetoworkspace, 2 bind = $mainMod SHIFT, 3, movetoworkspace, 3 bind = $mainMod SHIFT, 4, movetoworkspace, 4 bind = $mainMod SHIFT, 5, movetoworkspace, 5 bind = $mainMod SHIFT, 6, movetoworkspace, 6 bind = $mainMod SHIFT, 7, movetoworkspace, 7 bind = $mainMod SHIFT, 8, movetoworkspace, 8 bind = $mainMod SHIFT, 9, movetoworkspace, 9 bind = $mainMod SHIFT, 0, movetoworkspace, 10 # Scroll through existing workspaces with mainMod + scroll bind = $mainMod, mouse_down, workspace, e+1 bind = $mainMod, mouse_up, workspace, e-1 # Move/resize windows with mainMod + LMB/RMB and dragging bindm = $mainMod, mouse:272, movewindow bindm = $mainMod, mouse:273, resizewindow ======Config-End======== ```Description
XWayland is not available and apps that rely on it (like Discord and Steam) fail to start.
How to reproduce
I'm not sure if there are meaningful steps to take. I applied updates, rebooted and then XWayland wasn't working. I tried building from git but that has the same issue.
Crash reports, logs, images, videos