wez / wezterm

A GPU-accelerated cross-platform terminal emulator and multiplexer written by @wez and implemented in Rust
https://wezfurlong.org/wezterm/
Other
14.83k stars 674 forks source link

Protocol violation when launching in Hyprland #5067

Open MariaSolOs opened 4 months ago

MariaSolOs commented 4 months ago

What Operating System(s) are you seeing this problem on?

Linux Wayland

Which Wayland compositor or X11 Window manager(s) are you using?

Hyprland

WezTerm version

20240221_075452_95581d86

Did you try the latest nightly build to see if the issue is better (or worse!) than your current version?

Yes, and I updated the version box above to show the version of the nightly that I tried

Describe the bug

When using the main image of Hyprland, wezterm crashes.

To Reproduce

  1. Within Hyprland, use a keybinding like bind = SUPER, T, exec, wezterm in hyprland.conf to launch wezterm.
  2. Notice how wezterm quickly flashes and crashes.

Configuration

No config

Expected Behavior

For wezterm and Hyprland to work nicely together <3

Logs

Here's the output I obtain when running WAYLAND_DEBUG=1 wezterm within Hyprland:

[ 920526.164] -> wl_display@1.get_registry(new id wl_registry@2) [ 920526.189] -> wl_display@1.sync(new id wl_callback@3) [ 920526.294] wl_display@1.delete_id(3) [ 920526.304] wl_registry@2.global(1, "wl_shm", 1) [ 920526.317] wl_registry@2.global(2, "wl_drm", 2) [ 920526.323] wl_registry@2.global(3, "zwp_linux_dmabuf_v1", 4) [ 920526.326] wl_registry@2.global(4, "wl_compositor", 6) [ 920526.329] wl_registry@2.global(5, "wl_subcompositor", 1) [ 920526.332] wl_registry@2.global(6, "wl_data_device_manager", 3) [ 920526.334] wl_registry@2.global(7, "zwlr_export_dmabuf_manager_v1", 1) [ 920526.337] wl_registry@2.global(8, "zwlr_data_control_manager_v1", 2) [ 920526.339] wl_registry@2.global(9, "zwp_primary_selection_device_manager_v1", 1) [ 920526.342] wl_registry@2.global(10, "wp_viewporter", 1) [ 920526.345] wl_registry@2.global(11, "zwlr_gamma_control_manager_v1", 1) [ 920526.347] wl_registry@2.global(12, "zwlr_output_power_manager_v1", 1) [ 920526.350] wl_registry@2.global(13, "xdg_wm_base", 6) [ 920526.352] wl_registry@2.global(14, "wl_seat", 9) [ 920526.355] wl_registry@2.global(15, "wp_presentation", 1) [ 920526.357] wl_registry@2.global(16, "ext_idle_notifier_v1", 1) [ 920526.360] wl_registry@2.global(17, "zwlr_layer_shell_v1", 4) [ 920526.363] wl_registry@2.global(18, "org_kde_kwin_server_decoration_manager", 1) [ 920526.365] wl_registry@2.global(19, "zxdg_decoration_manager_v1", 1) [ 920526.368] wl_registry@2.global(20, "zwlr_output_manager_v1", 4) [ 920526.370] wl_registry@2.global(21, "zwp_keyboard_shortcuts_inhibit_manager_v1", 1) [ 920526.373] wl_registry@2.global(22, "zwp_pointer_constraints_v1", 1) [ 920526.375] wl_registry@2.global(23, "zwp_relative_pointer_manager_v1", 1) [ 920526.377] wl_registry@2.global(24, "zwp_virtual_keyboard_manager_v1", 1) [ 920526.380] wl_registry@2.global(25, "zwlr_virtual_pointer_manager_v1", 2) [ 920526.382] wl_registry@2.global(26, "zwlr_foreign_toplevel_manager_v1", 3) [ 920526.385] wl_registry@2.global(27, "wp_drm_lease_device_v1", 1) [ 920526.387] wl_registry@2.global(28, "zwp_tablet_manager_v2", 1) [ 920526.390] wl_registry@2.global(29, "zwp_idle_inhibit_manager_v1", 1) [ 920526.392] wl_registry@2.global(30, "zxdg_exporter_v1", 1) [ 920526.394] wl_registry@2.global(31, "zxdg_importer_v1", 1) [ 920526.397] wl_registry@2.global(32, "zxdg_exporter_v2", 1) [ 920526.399] wl_registry@2.global(33, "zxdg_importer_v2", 1) [ 920526.402] wl_registry@2.global(34, "zwp_pointer_gestures_v1", 3) [ 920526.404] wl_registry@2.global(35, "zwp_text_input_manager_v3", 1) [ 920526.407] wl_registry@2.global(36, "zwp_input_method_manager_v2", 1) [ 920526.409] wl_registry@2.global(37, "xdg_activation_v1", 1) [ 920526.411] wl_registry@2.global(38, "ext_session_lock_manager_v1", 1) [ 920526.414] wl_registry@2.global(39, "wp_cursor_shape_manager_v1", 1) [ 920526.416] wl_registry@2.global(40, "wp_tearing_control_manager_v1", 1) [ 920526.419] wl_registry@2.global(41, "wp_single_pixel_buffer_manager_v1", 1) [ 920526.421] wl_registry@2.global(42, "xwayland_shell_v1", 1) [ 920526.423] wl_registry@2.global(43, "hyprland_toplevel_export_manager_v1", 2) [ 920526.426] wl_registry@2.global(44, "wp_fractional_scale_manager_v1", 1) [ 920526.428] wl_registry@2.global(45, "zwp_text_input_manager_v1", 1) [ 920526.431] wl_registry@2.global(46, "hyprland_global_shortcuts_manager_v1", 1) [ 920526.433] wl_registry@2.global(47, "zwlr_screencopy_manager_v1", 3) [ 920526.436] wl_registry@2.global(48, "zxdg_output_manager_v1", 3) [ 920526.438] wl_registry@2.global(49, "wl_output", 4) [ 920526.441] wl_callback@3.done(13) [ 920526.453] -> wl_registry@2.bind(1, "wl_shm", 1, new id [unknown]@3) [ 920526.474] -> wl_shm@3.create_pool(new id wl_shm_pool@4, fd 11, 1) [ 920526.486] -> wl_registry@2.bind(4, "wl_compositor", 5, new id [unknown]@5) [ 920526.491] -> wl_registry@2.bind(5, "wl_subcompositor", 1, new id [unknown]@6) [ 920526.498] -> wl_registry@2.bind(49, "wl_output", 4, new id [unknown]@7) [ 920526.502] -> wl_registry@2.bind(48, "zxdg_output_manager_v1", 3, new id [unknown]@8) [ 920526.511] -> zxdg_output_manager_v1@8.get_xdg_output(new id zxdg_output_v1@9, wl_output@7) [ 920526.522] -> wl_registry@2.bind(35, "zwp_text_input_manager_v3", 1, new id [unknown]@10) [ 920526.529] -> wl_registry@2.bind(14, "wl_seat", 7, new id [unknown]@11) [ 920526.534] -> wl_registry@2.bind(13, "xdg_wm_base", 5, new id [unknown]@12) [ 920526.537] -> wl_registry@2.bind(19, "zxdg_decoration_manager_v1", 1, new id [unknown]@13) [ 920526.541] -> wl_registry@2.bind(6, "wl_data_device_manager", 3, new id [unknown]@14) [ 920526.545] -> wl_registry@2.bind(9, "zwp_primary_selection_device_manager_v1", 1, new id [unknown]@15) [ 920673.104] wl_shm@3.format(0) [ 920673.147] wl_shm@3.format(1) [ 920673.154] wl_shm@3.format(875709016) [ 920673.159] wl_shm@3.format(875708993) [ 920673.164] wl_shm@3.format(875710274) [ 920673.169] wl_shm@3.format(842094674) [ 920673.174] wl_shm@3.format(842088786) [ 920673.178] wl_shm@3.format(892426322) [ 920673.183] wl_shm@3.format(892420434) [ 920673.188] wl_shm@3.format(909199186) [ 920673.193] wl_shm@3.format(808665688) [ 920673.197] wl_shm@3.format(808665665) [ 920673.202] wl_shm@3.format(1211384408) [ 920673.206] wl_shm@3.format(1211384385) [ 920673.211] wl_shm@3.format(942948952) [ 920673.216] wl_shm@3.format(942948929) [ 920673.220] wl_output@7.geometry(0, 0, 302, 189, 0, "Unknown", "Unknown", 0) [ 920673.230] wl_output@7.mode(1, 3024, 1890, 60000) [ 920673.236] wl_output@7.scale(2) [ 920673.241] wl_output@7.name("eDP-1") [ 920673.246] wl_output@7.description("(null) (null) (eDP-1)") [ 920673.251] wl_output@7.done() [ 920673.255] zxdg_output_v1@9.name("eDP-1") [ 920673.261] zxdg_output_v1@9.description("(null) (null) (eDP-1)") [ 920673.266] zxdg_output_v1@9.logical_position(0, 0) [ 920673.272] zxdg_output_v1@9.logical_size(1512, 945) [ 920673.277] wl_output@7.done() [ 920673.282] wl_seat@11.name("seat0") [ 920673.288] wl_seat@11.capabilities(3) [ 920673.875] -> wl_seat@11.get_keyboard(new id wl_keyboard@16) [ 920673.897] -> zwp_text_input_manager_v3@10.get_text_input(new id zwp_text_input_v3@17, wl_seat@11) [ 920673.913] -> wl_seat@11.get_pointer(new id wl_pointer@18) [ 920673.927] -> wl_data_device_manager@14.get_data_device(new id wl_data_device@19, wl_seat@11) [ 920673.935] -> zwp_primary_selection_device_manager_v1@15.get_device(new id zwp_primary_selection_device_v1@20, wl_seat@11) [ 920681.461] -> wl_compositor@5.create_surface(new id wl_surface@21) [ 920681.495] -> wl_compositor@5.create_surface(new id wl_surface@22) [ 920681.511] -> xdg_wm_base@12.get_xdg_surface(new id xdg_surface@23, wl_surface@21) [ 920681.520] -> xdg_surface@23.get_toplevel(new id xdg_toplevel@24) [ 920681.528] -> zxdg_decoration_manager_v1@13.get_toplevel_decoration(new id zxdg_toplevel_decoration_v1@25, xdg_toplevel@24) [ 920681.536] -> zxdg_toplevel_decoration_v1@25.set_mode(2) [ 920681.543] -> xdg_toplevel@24.set_app_id("org.wezfurlong.wezterm") [ 920681.549] -> xdg_toplevel@24.set_title("wezterm") [ 920681.555] -> zxdg_toplevel_decoration_v1@25.set_mode(2) [ 920681.585] -> wl_shm@3.create_pool(new id wl_shm_pool@26, fd 23, 1) [ 920681.604] -> wl_compositor@5.create_surface(new id wl_surface@27) [ 920681.614] -> wl_subcompositor@6.get_subsurface(new id wl_subsurface@28, wl_surface@27, wl_surface@21) [ 920681.623] -> wl_subsurface@28.set_sync() [ 920681.628] -> wl_compositor@5.create_surface(new id wl_surface@29) [ 920681.634] -> wl_subcompositor@6.get_subsurface(new id wl_subsurface@30, wl_surface@29, wl_surface@21) [ 920681.642] -> wl_subsurface@30.set_sync() [ 920681.648] -> wl_compositor@5.create_surface(new id wl_surface@31) [ 920681.655] -> wl_subcompositor@6.get_subsurface(new id wl_subsurface@32, wl_surface@31, wl_surface@21) [ 920681.661] -> wl_subsurface@32.set_sync() [ 920681.666] -> wl_compositor@5.create_surface(new id wl_surface@33) [ 920681.672] -> wl_subcompositor@6.get_subsurface(new id wl_subsurface@34, wl_surface@33, wl_surface@21) [ 920681.678] -> wl_subsurface@34.set_sync() [ 920681.683] -> wl_compositor@5.create_surface(new id wl_surface@35) [ 920681.689] -> wl_subcompositor@6.get_subsurface(new id wl_subsurface@36, wl_surface@35, wl_surface@21) [ 920681.706] -> wl_subsurface@36.set_sync() [ 920681.712] -> wl_subsurface@28.destroy() [ 920681.719] -> wl_surface@27.destroy() [ 920681.726] -> wl_subsurface@30.destroy() [ 920681.731] -> wl_surface@29.destroy() [ 920681.737] -> wl_subsurface@32.destroy() [ 920681.741] -> wl_surface@31.destroy() [ 920681.747] -> wl_subsurface@34.destroy() [ 920681.752] -> wl_surface@33.destroy() [ 920681.757] -> wl_subsurface@36.destroy() [ 920681.762] -> wl_surface@35.destroy() [ 920681.768] -> xdg_toplevel@24.set_min_size(32, 32) [ 920681.775] -> xdg_surface@23.set_window_geometry(0, 0, 640, 504) [ 920681.781] -> wl_surface@21.commit() [ 920681.817] wl_keyboard@16.keymap(1, fd 23, 64756) [ 920681.828] wl_keyboard@16.repeat_info(25, 600) [ 920691.505] wl_display@1.delete_id(28) [ 920691.514] wl_display@1.delete_id(27) [ 920691.517] wl_display@1.delete_id(30) [ 920691.519] wl_display@1.delete_id(29) [ 920691.520] wl_display@1.delete_id(32) [ 920691.522] wl_display@1.delete_id(31) [ 920691.524] wl_display@1.delete_id(34) [ 920691.525] wl_display@1.delete_id(33) [ 920691.527] wl_display@1.delete_id(36) [ 920691.529] wl_display@1.delete_id(35) [ 920691.530] xdg_toplevel@24.wm_capabilities(array[16]) [ 920691.534] xdg_toplevel@24.configure(0, 0, array[0]) [ 920691.536] zxdg_toplevel_decoration_v1@25.configure(2) [ 920691.538] xdg_surface@23.configure(14) [ 920691.565] -> xdg_surface@23.ack_configure(14) [ 920692.930] -> wl_display@1.get_registry(new id wl_registry@35) [ 920692.937] -> wl_display@1.sync(new id wl_callback@36) [ 920692.981] wl_display@1.delete_id(36) [ 920692.988] wl_registry@35.global(1, "wl_shm", 1) [ 920692.991] wl_registry@35.global(2, "wl_drm", 2) [ 920692.993] wl_registry@35.global(3, "zwp_linux_dmabuf_v1", 4) [ 920692.996] -> wl_registry@35.bind(3, "zwp_linux_dmabuf_v1", 4, new id [unknown]@33) [ 920692.999] wl_registry@35.global(4, "wl_compositor", 6) [ 920693.001] wl_registry@35.global(5, "wl_subcompositor", 1) [ 920693.003] wl_registry@35.global(6, "wl_data_device_manager", 3) [ 920693.004] wl_registry@35.global(7, "zwlr_export_dmabuf_manager_v1", 1) [ 920693.006] wl_registry@35.global(8, "zwlr_data_control_manager_v1", 2) [ 920693.008] wl_registry@35.global(9, "zwp_primary_selection_device_manager_v1", 1) [ 920693.010] wl_registry@35.global(10, "wp_viewporter", 1) [ 920693.011] wl_registry@35.global(11, "zwlr_gamma_control_manager_v1", 1) [ 920693.013] wl_registry@35.global(12, "zwlr_output_power_manager_v1", 1) [ 920693.015] wl_registry@35.global(13, "xdg_wm_base", 6) [ 920693.017] wl_registry@35.global(14, "wl_seat", 9) [ 920693.018] wl_registry@35.global(15, "wp_presentation", 1) [ 920693.020] wl_registry@35.global(16, "ext_idle_notifier_v1", 1) [ 920693.022] wl_registry@35.global(17, "zwlr_layer_shell_v1", 4) [ 920693.024] wl_registry@35.global(18, "org_kde_kwin_server_decoration_manager", 1) [ 920693.025] wl_registry@35.global(19, "zxdg_decoration_manager_v1", 1) [ 920693.027] wl_registry@35.global(20, "zwlr_output_manager_v1", 4) [ 920693.029] wl_registry@35.global(21, "zwp_keyboard_shortcuts_inhibit_manager_v1", 1) [ 920693.031] wl_registry@35.global(22, "zwp_pointer_constraints_v1", 1) [ 920693.032] wl_registry@35.global(23, "zwp_relative_pointer_manager_v1", 1) [ 920693.034] wl_registry@35.global(24, "zwp_virtual_keyboard_manager_v1", 1) [ 920693.036] wl_registry@35.global(25, "zwlr_virtual_pointer_manager_v1", 2) [ 920693.037] wl_registry@35.global(26, "zwlr_foreign_toplevel_manager_v1", 3) [ 920693.039] wl_registry@35.global(27, "wp_drm_lease_device_v1", 1) [ 920693.041] wl_registry@35.global(28, "zwp_tablet_manager_v2", 1) [ 920693.042] wl_registry@35.global(29, "zwp_idle_inhibit_manager_v1", 1) [ 920693.044] wl_registry@35.global(30, "zxdg_exporter_v1", 1) [ 920693.046] wl_registry@35.global(31, "zxdg_importer_v1", 1) [ 920693.048] wl_registry@35.global(32, "zxdg_exporter_v2", 1) [ 920693.052] wl_registry@35.global(33, "zxdg_importer_v2", 1) [ 920693.054] wl_registry@35.global(34, "zwp_pointer_gestures_v1", 3) [ 920693.055] wl_registry@35.global(35, "zwp_text_input_manager_v3", 1) [ 920693.062] wl_registry@35.global(36, "zwp_input_method_manager_v2", 1) [ 920693.064] wl_registry@35.global(37, "xdg_activation_v1", 1) [ 920693.066] wl_registry@35.global(38, "ext_session_lock_manager_v1", 1) [ 920693.067] wl_registry@35.global(39, "wp_cursor_shape_manager_v1", 1) [ 920693.069] wl_registry@35.global(40, "wp_tearing_control_manager_v1", 1) [ 920693.071] wl_registry@35.global(41, "wp_single_pixel_buffer_manager_v1", 1) [ 920693.073] wl_registry@35.global(42, "xwayland_shell_v1", 1) [ 920693.074] wl_registry@35.global(43, "hyprland_toplevel_export_manager_v1", 2) [ 920693.076] wl_registry@35.global(44, "wp_fractional_scale_manager_v1", 1) [ 920693.078] wl_registry@35.global(45, "zwp_text_input_manager_v1", 1) [ 920693.079] wl_registry@35.global(46, "hyprland_global_shortcuts_manager_v1", 1) [ 920693.081] wl_registry@35.global(47, "zwlr_screencopy_manager_v1", 3) [ 920693.083] wl_registry@35.global(48, "zxdg_output_manager_v1", 3) [ 920693.084] wl_registry@35.global(49, "wl_output", 4) [ 920693.086] wl_callback@36.done(14) [ 920693.089] -> zwp_linux_dmabuf_v1@33.get_default_feedback(new id zwp_linux_dmabuf_feedback_v1@36) [ 920693.091] -> wl_display@1.sync(new id wl_callback@34) [ 920693.169] wl_display@1.delete_id(34) [ 920693.173] zwp_linux_dmabuf_feedback_v1@36.main_device(array[8]) [ 920693.290] zwp_linux_dmabuf_feedback_v1@36.format_table(fd 23, 3136) [ 920693.298] zwp_linux_dmabuf_feedback_v1@36.tranche_target_device(array[8]) [ 920693.300] zwp_linux_dmabuf_feedback_v1@36.tranche_flags(0) [ 920693.302] zwp_linux_dmabuf_feedback_v1@36.tranche_formats(array[392]) [ 920693.306] zwp_linux_dmabuf_feedback_v1@36.tranche_done() [ 920693.308] zwp_linux_dmabuf_feedback_v1@36.done() [ 920693.310] wl_callback@34.done(14) [ 920693.312] -> zwp_linux_dmabuf_feedback_v1@36.destroy() [ 920704.481] -> zwp_linux_dmabuf_v1@33.get_surface_feedback(new id zwp_linux_dmabuf_feedback_v1@34, wl_surface@21) [ 920704.502] -> wl_display@1.sync(new id wl_callback@31) [ 920704.577] wl_display@1.delete_id(36) [ 920704.583] wl_display@1.delete_id(31) [ 920704.585] wl_callback@31.done(14) [ 920705.462] zwp_linux_dmabuf_feedback_v1@34.main_device(array[8]) [ 920705.469] zwp_linux_dmabuf_feedback_v1@34.format_table(fd 26, 3136) [ 920705.475] zwp_linux_dmabuf_feedback_v1@34.tranche_target_device(array[8]) [ 920705.478] zwp_linux_dmabuf_feedback_v1@34.tranche_flags(0) [ 920705.481] zwp_linux_dmabuf_feedback_v1@34.tranche_formats(array[392]) [ 920705.485] zwp_linux_dmabuf_feedback_v1@34.tranche_done() [ 920705.488] zwp_linux_dmabuf_feedback_v1@34.done() [ 920713.210] -> wl_surface@21.frame(new id wl_callback@31) [ 920714.176] -> wl_surface@21.frame(new id wl_callback@36) [ 920714.183] -> zwp_linux_dmabuf_v1@33.create_params(new id zwp_linux_buffer_params_v1@32) [ 920714.196] -> zwp_linux_buffer_params_v1@32.add(fd 28, 0, 0, 2560, 184549376, 2) [ 920714.200] -> zwp_linux_buffer_params_v1@32.create_immed(new id wl_buffer@29, 640, 504, 875713089, 0) [ 920714.204] -> zwp_linux_buffer_params_v1@32.destroy() [ 920714.206] -> wl_surface@21.attach(wl_buffer@29, 0, 0) [ 920714.209] -> wl_surface@21.damage(0, 0, 2147483647, 2147483647) [ 920714.212] -> wl_surface@21.commit() [ 920720.385] wl_display@1.delete_id(32) [ 920720.392] wl_display@1.delete_id(31) [ 920720.394] wl_display@1.delete_id(36) [ 920720.395] wl_keyboard@16.enter(16, wl_surface@21, array[0]) [ 920720.399] wl_keyboard@16.modifiers(17, 0, 0, 0, 0) [ 920720.402] wl_data_device@19.selection(nil) [ 920720.404] zwp_primary_selection_device_v1@20.selection(nil) [ 920720.406] zwp_primary_selection_device_v1@20.selection(nil) [ 920720.408] wl_surface@21.enter(wl_output@7) [ 920720.411] wl_pointer@18.enter(18, wl_surface@21, 1507.00000000, 919.00000000) [ 920720.414] wl_pointer@18.frame() [ 920720.415] xdg_toplevel@24.configure(1504, 916, array[24]) [ 920720.418] xdg_surface@23.configure(15) [ 920720.420] wl_callback@31.done(805206) [ 920720.427] -> zwp_text_input_v3@17.enable() [ 920720.430] -> zwp_text_input_v3@17.commit() [ 920725.195] -> xdg_surface@23.ack_configure(15) [ 920725.223] -> xdg_toplevel@24.set_title("bash") [ 920725.229] -> wl_surface@21.commit() [ 920725.247] -> xdg_surface@23.set_window_geometry(0, 0, 3008, 1832) 09:51:49.770 WARN wezterm_gui::termwindow::resize > cannot resize window to match Some(RowsAndCols { rows: 24, cols: 80 }) because window_state is MAXIMIZED [ 920734.454] -> wl_shm_pool@4.resize(64) [ 920734.470] -> wl_shm_pool@4.create_buffer(new id wl_buffer@31, 0, 2, 2, 8, 0) [ 920734.477] -> wl_surface@21.attach(wl_buffer@31, 0, 0) [ 920734.481] -> wl_surface@21.set_buffer_scale(2) [ 920734.484] -> wl_buffer@31.destroy() [ 920734.488] -> wl_surface@21.commit() [ 920734.502] -> wl_surface@21.frame(new id wl_callback@32) [ 920734.675] wl_callback@36.done(805206) [ 920736.834] -> wl_surface@21.frame(new id wl_callback@36) [ 920736.840] -> zwp_linux_dmabuf_v1@33.create_params(new id zwp_linux_buffer_params_v1@30) [ 920736.849] -> zwp_linux_buffer_params_v1@30.add(fd 29, 0, 0, 12032, 184549376, 2) [ 920736.853] -> zwp_linux_buffer_params_v1@30.create_immed(new id wl_buffer@27, 3008, 1832, 875713089, 0) [ 920736.855] -> zwp_linux_buffer_params_v1@30.destroy() [ 920736.857] -> wl_surface@21.attach(wl_buffer@27, 0, 0) [ 920736.859] -> wl_surface@21.damage(0, 0, 2147483647, 2147483647) [ 920736.861] -> wl_surface@21.commit() [ 920736.892] -> zwp_text_input_v3@17.set_cursor_rectangle(0, 0, 7, 20) [ 920736.896] -> zwp_text_input_v3@17.commit() [ 920740.377] wl_display@1.delete_id(31) [ 920740.425] wl_display@1.delete_id(30) [ 920740.428] wl_display@1.error(xdg_surface@23, 3, "xdg_surface has never been configured") xdg_surface@23: error 3: xdg_surface has never been configured Protocol error 3 on object xdg_surface@23: 09:51:49.782 ERROR wezterm_gui > running message loop: Protocol error 3 on object xdg_surface@23: ; terminating

Anything else?

I initially reported this issue in Hyprland (https://github.com/hyprwm/Hyprland/issues/4806) but the maintainer said that this seems like a bug in wezterm.

fraschm1998 commented 4 months ago

I get the same error

brimless commented 4 months ago

I am also seeing the same problem

nonetrix commented 4 months ago

I am using the git version of Hyprland on NixOS with wezterm 20240203-110809-5046fc22 which is newest release and am not facing this issue, maybe it's a Hyprland issue that was fixed? Try upgrading your Hyprland to the git version if possible and see if that fixes it maybe

MariaSolOs commented 4 months ago

@nonetrix in fact, the issue is only reproducible with the git Hyprland image, but it's fine with the latest release (at least this is what I am experiencing).

sjcobb2022 commented 4 months ago

Hi there,

This is definitely a hyprland-caused issue. I have dissected the beginning of these issues start in the range of https://github.com/hyprwm/Hyprland/compare/9a6956fe67801f6a22e4d77d5226dc2401fcc8c6...28410922da556b5960e1c47cf63cc3f3f4aa3384. These are a large bundle of updates that attempt to bump wlroots.

Furthermore, given that this is an update to the wlroot protocol, it would still be necessary to handle in wezterm.

Since this is bleeding edge, this may only apply for a certain subset of users who have updated recently.

For those interested https://github.com/hyprwm/Hyprland/commit/af0c8e299bbbf1726cecfde683137cfd4a6b8642 is the latest functional commit to hyprland that runs wezterm.

MariaSolOs commented 4 months ago

@sjcobb2022 thank you for the careful investigation!

This is definitely a hyprland-caused issue

Does this mean that this is a Hyprland bug, or that these intentional changes broke Wezterm (but shouldn't be reversed)?

sjcobb2022 commented 4 months ago

I do not believe that is a bug (would have to look into it more tho).

I believe that it is a legitimate wlroots spec update that causes the behaviour of wezterm to be considered incorrect.

All my other apps (and proton-based games) work just fine.

MariaSolOs commented 4 months ago

@sjcobb2022 Makes sense! And yes, I also see GTK-based apps (like Thunderbird or my ags widgets) working just fine.

nerdyinu commented 4 months ago

is there a work around for this? @MariaSolOs @sjcobb2022

sjcobb2022 commented 4 months ago

@inudev3 revert hyprland to https://github.com/hyprwm/Hyprland/commit/af0c8e299bbbf1726cecfde683137cfd4a6b8642

juvevood commented 4 months ago

the latest release(20240203-110809-5046fc22) works fine.

MariaSolOs commented 4 months ago

the latest release(20240203-110809-5046fc22) works fine.

Do you have the same setup I described? I just updated hyprland-git and wezterm-nightly on Fedora Asahi and I'm still experiencing this issue.

MariaSolOs commented 4 months ago

is there a work around for this? @MariaSolOs @sjcobb2022

Setting config.enable_wayland = false also works, but I'm not sure of the impact of this.

juvevood commented 4 months ago

the latest release(20240203-110809-5046fc22) works fine.

Do you have the same setup I described? I just updated hyprland-git and wezterm-nightly on Fedora Asahi and I'm still experiencing this issue.

After updating hypland-git yesterday, it was completely unable to start

sjcobb2022 commented 4 months ago

the latest release(20240203-110809-5046fc22) works fine.

This is behind main, therefore is functional.

Jackaed commented 2 months ago

Is this fixed in wezterm-nightly or not? Is it related to any of the other Hyprland related issues in wezterm? And does Hyprland need to make this fix or does wezterm need to make it?

sjcobb2022 commented 2 months ago

Is this fixed in wezterm-nightly or not? Is it related to any of the other Hyprland related issues in wezterm? And does Hyprland need to make this fix or does wezterm need to make it?

@Jackaed This is not fixed (as of 3 days ago when I tried it last). As mentioned here https://github.com/wez/wezterm/issues/5067#issuecomment-1963238274, this is a wlroots spec update, meaning that this should be handled by wezterm.

I have moved to alacritty for the time being, as this, alongside #5079 make wezterm essentially unusable for me.

Andyterrify commented 2 months ago

@Jackaed A recent nightly update seems to have fixed the issue on Fedora. My exact version is wezterm 20240405_180910_cce0706b.

Jackaed commented 2 months ago

@Andyterrify doesn't seem to have fixed it on NixOS. Building wezterm from source, the issue persists, and I can only get wezterm to start with $WAYLAND_DISPLAY=1 to force it to use xwayland.

Jackaed commented 2 months ago

Note that this could be due to the recent Hyprland releases, I'm only on v0.37.1 and Hyprland is on v0.38.1. Will let you know once the update hits nixpkgs-unstable.

rubiin commented 2 months ago

20240405_180910_cce0706b

wayland or xwayland? also did you enable enable_wayland on config ?

sjcobb2022 commented 2 months ago

20240405_180910_cce0706b

wayland or xwayland? also did you enable enable_wayland on config ?

Also what hyprland version is necessary, as this is caused by a hyprland issue.

Andyterrify commented 2 months ago

Hyprland 0.38.1 I don't know what happened yesterday but today it's worked anymore. I run a very minimal config, so if the wezterm.lua didn't load I wouldn't have been able to tell the difference, so its possible it might have defaulted to xwayland mode. I'm switching back to kitty in the meantime, might come back to wezterm once this is fixed

rubiin commented 2 months ago

same here running kitty on hyperland as wezterm fails to open.

carlinhoshk commented 2 months ago

still not working in hyprland?

sjcobb2022 commented 2 months ago

Not for me unfortunately.

floork commented 1 month ago

seems to be working now

I changed enable_wayland = true and its opening the terminal normally.

nonetrix commented 1 month ago

Can this be closed? Just have to wait on distros to package it or a release I assume

VincentBerthier commented 1 month ago

Works for me too now (on nightly obviously).

Jackaed commented 1 month ago

Doesn't yet work for me on Hyprland 0.39.1, but it may be that this is fixed by Hyprland 0.40.0. Will test when nixOS packages the new Hyprland version.

nonetrix commented 1 month ago

Just use the flake

diegoroccia commented 1 month ago

Installing the nightly from the PPA on Hyprland 0.40, still crashing

MariaSolOs commented 1 month ago

Same here, I'm still having issues with wezterm 20240508_151422_6b66b667 and hyprland 0.40.0-1.fc39.

Andyterrify commented 1 month ago

I am on Fedora 40 now, Hyprland 0.40.0, and wezterm 20240508_153238_f6fdfeb9. Unless the fedora upgrade changed something, wezterm is now running again in Wayland mode. I can confirm disabling enable_wayland it uses X11 and enabling enable_wayland wezterm now uses Wayland.

On Thu, 9 May 2024 at 00:19, Maria José Solano @.***> wrote:

Same here, I'm still having issues with wezterm 20240508_151422_6b66b667 and hyprland 0.40.0-1.fc39.

— Reply to this email directly, view it on GitHub https://github.com/wez/wezterm/issues/5067#issuecomment-2101650800, or unsubscribe https://github.com/notifications/unsubscribe-auth/AEVLI3DEFXWGGRDZL56GFO3ZBKXILAVCNFSM6AAAAABDXTDXDKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCMBRGY2TAOBQGA . You are receiving this because you were mentioned.Message ID: @.***>

-- Andrei Vasile

MariaSolOs commented 1 month ago

@Andyterrify interesting. I just updated to Fedora 40 to see if it would solve my issue, but it didn't work for me. I'm using Asahi though, so maybe the fix didn't make it there (?).

This is the error I'm currently seeing:

>> wezterm
19:20:24.686  WARN   wezterm_gui::termwindow::resize > cannot resize window to match Some(RowsAndCols { rows: 22, cols: 50 }) because window_state is MAXIMIZED
xdg_surface@25: error 3: xdg_surface has never been configured
Protocol error 3 on object xdg_surface@25:
19:20:24.696  ERROR  wezterm_gui                     > running message loop: Protocol error 3 on object xdg_surface@25: ; terminating
nonetrix commented 1 month ago

Could also just be buggy Asahi drivers I guess, but I doubt it's the case if it was fine before. But I couldn't imagine they are exactly reliable sometimes

Andyterrify commented 1 month ago

I'll double check again tonight, in the past it did run once before breaking. I'm using the version from the copr, did you build it yourself?

On Thu, 9 May 2024, 03:35 fuggy, @.***> wrote:

Could also just be buggy Asahi drivers I guess, but I doubt it's the case. But I couldn't imagine they are exactly reliable sometimes

— Reply to this email directly, view it on GitHub https://github.com/wez/wezterm/issues/5067#issuecomment-2101822259, or unsubscribe https://github.com/notifications/unsubscribe-auth/AEVLI3CMDQS6YK7TMUIABPTZBLOHPAVCNFSM6AAAAABDXTDXDKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCMBRHAZDEMRVHE . You are receiving this because you were mentioned.Message ID: @.***>

Andyterrify commented 1 month ago

I can confirm that with wezterm 20240508_153238_f6fdfeb9 on fedora 40 and hyprland 0.40.0 wezterm does work natively with Wayland in my machine

On Thu, 9 May 2024, 18:19 Andrei Vasile, @.***> wrote:

I'll double check again tonight, in the past it did run once before breaking. I'm using the version from the copr, did you build it yourself?

On Thu, 9 May 2024, 03:35 fuggy, @.***> wrote:

Could also just be buggy Asahi drivers I guess, but I doubt it's the case. But I couldn't imagine they are exactly reliable sometimes

— Reply to this email directly, view it on GitHub https://github.com/wez/wezterm/issues/5067#issuecomment-2101822259, or unsubscribe https://github.com/notifications/unsubscribe-auth/AEVLI3CMDQS6YK7TMUIABPTZBLOHPAVCNFSM6AAAAABDXTDXDKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCMBRHAZDEMRVHE . You are receiving this because you were mentioned.Message ID: @.***>