Closed BluewyDiamond closed 3 months ago
fix 3 issues
gtk will come back to haunt you
can you post a debug stacktrace
also @MightyPlaza I blame you, your fault
is there a crash report?
asked for one, we are waiting
I looked for it but i did not find any that matches the correct date.
debug stacktrace it is then
i also tried following the steps for obtaining debug stack trace but coredumpctl says there aren't any
disable crash reporter (HYPRLAND_NO_CRASHREPORTER=1
)
following the wiki + no crash reporter
it still says no match found
what should i do?
can you send the full logs running ags only after hyprland has started?
This is the log by running hyprland debug build, using wezterm to run hyprctl rollinglog --follow >> ~/downloads/loo...
and then running ags, though this time it crashed the moment i ran ags in the terminal.
looogsss.txt
does commenting your window rules change anything?
it still crashes, i tried leaving only my inputs and keybinds related configuration modified while i used the default values for the rest but it also crashed
idk if this helps
does running ags with ayulr's ags config and then using the ags app launcher to try run an app also causes the crash for you guys?
im not having any luck with logs or stack traces :(
diff --git a/src/Compositor.cpp b/src/Compositor.cpp
index b0af0e9b..f2f58814 100644
--- a/src/Compositor.cpp
+++ b/src/Compositor.cpp
@@ -2255,16 +2255,25 @@ void CCompositor::updateFullscreenFadeOnWorkspace(PHLWORKSPACE pWorkspace) {
}
void CCompositor::changeWindowFullscreenModeInternal(const PHLWINDOW PWINDOW, const eFullscreenMode MODE, const bool ON) {
+ if (!PWINDOW)
+ return;
+
setWindowFullscreenInternal(
PWINDOW, (eFullscreenMode)(ON ? (uint8_t)PWINDOW->m_sFullscreenState.internal | (uint8_t)MODE : ((uint8_t)PWINDOW->m_sFullscreenState.internal & (uint8_t)~MODE)));
}
void CCompositor::changeWindowFullscreenModeClient(const PHLWINDOW PWINDOW, const eFullscreenMode MODE, const bool ON) {
+ if (!PWINDOW)
+ return;
+
setWindowFullscreenClient(PWINDOW,
(eFullscreenMode)(ON ? (uint8_t)PWINDOW->m_sFullscreenState.client | (uint8_t)MODE : ((uint8_t)PWINDOW->m_sFullscreenState.client & (uint8_t)~MODE)));
}
void CCompositor::setWindowFullscreenInternal(const PHLWINDOW PWINDOW, const eFullscreenMode MODE) {
+ if (!PWINDOW)
+ return;
+
if (PWINDOW->m_sWindowData.syncFullscreen.valueOrDefault())
setWindowFullscreenState(PWINDOW, sFullscreenState{.internal = MODE, .client = MODE});
else
@@ -2272,6 +2281,9 @@ void CCompositor::setWindowFullscreenInternal(const PHLWINDOW PWINDOW, const eFu
}
void CCompositor::setWindowFullscreenClient(const PHLWINDOW PWINDOW, const eFullscreenMode MODE) {
+ if (!PWINDOW)
+ return;
+
if (PWINDOW->m_sWindowData.syncFullscreen.valueOrDefault())
setWindowFullscreenState(PWINDOW, sFullscreenState{.internal = MODE, .client = MODE});
else
any difference?
i tried it and i'm still crashing with the patch
can you send the logs of doing the same thing on a version where it doesn't crash?
this is the log where i open wezterm start logging with hyprctl, run ags and open librewolf: looogsss3.txt
the problem is also present on my laptop, i tried getting the stack trace but coredumpctl says something .journal is truncated, googling suggests to increase size limit which i did from 32G to 64G but when i tried it again it said the same thing
Not sure if related, but Hyprland is crashing for me (on commit 37e1411e8d94fe8f3fb678588a7df9b8f931910f
, haven't bisected) even when launching basic applications like "Kitty" terminal and "Firefox" (or most apps in general).
Happy to make a separate issue and provide further info or try patches in a few hours, but here's the log for the time being in case it's relevant.
Crash (37e1411e8d94fe8f3fb678588a7df9b8f931910f
, not yet bisected):
No Crash (bc86afea7e177a7ad4335737417fc0e468698dc4
):
For me it crashes when I open up an Electron app (VS Code, Discord).
I am on 37e1411e8d94fe8f3fb678588a7df9b8f931910f
and will post logs soon
Edit: Nautilus also crashes
Here is the last part of the log. Dunno how to upload a file without Drag-and-Drop :D
[LOG] LayerSurface 6184e575b210 destroyed
[LOG] Forcing an unmap of a LS that did a straight destroy!
[LOG] LayerSurface 6184e575b210 unmapped
[LOG] [hookSystem] New hook event registered: closeLayer
[LOG] Framebuffer created, status 36053
[LOG] Searching for matching rules for kitty (title: nvim ~/.config/hypr /tmp)
[LOG] [WLDataDevice] New offer 6184e5a15ed0 for data source 6184e5a40df0
[LOG] [WLDataDevice] | offer 6184e5a15ed0 supports mime application/glfw+clipboard-14572
[LOG] [WLDataDevice] | offer 6184e5a15ed0 supports mime TEXT
[LOG] [WLDataDevice] | offer 6184e5a15ed0 supports mime STRING
[LOG] [WLDataDevice] | offer 6184e5a15ed0 supports mime UTF8_STRING
[LOG] [WLDataDevice] | offer 6184e5a15ed0 supports mime text/plain;charset=utf-8
[LOG] [WLDataDevice] | offer 6184e5a15ed0 supports mime text/plain
[LOG] Set keyboard focus to surface 6184e59733d0, with [Window 6184e5973c70: title: "nvim ~/.config/hypr /tmp"]
[LOG] Searching for matching rules for kitty (title: nvim ~/.config/hypr /tmp)
[LOG] [PrimarySelection] New offer 6184e57c9b30 for data source 6184e5973af0
[LOG] CWLSurface 6184e5b7ad00 called destroy()
[LOG] LayerSurface 0 unmapped
so you wanna tell me that all of you can't get a debug stacktrace?
fwiw I am running latest rn and not crashing at all lole
I am also experiencing crashes.
To reproduce make sure no_gaps_when_only = 1
and open a tiled window
This happens with any application that starts in tiled mode
thanks, reprod
fixed that one, is this done or do we have more than 1 bug here?
i can confirm that in my case the culprit is no_gaps_when_only = 1
, i guess it's my bad for not checking what ags was doing with hyprctl.
I have no_gaps_when_only=0
, so I think the Electron/GTK thing is it's own bug
so you wanna tell me that all of you can't get a debug stacktrace?
fwiw I am running latest rn and not crashing at all lole
Surprisingly yeah - no output from coredumpctl debug hyprland
, and no crash log either (no files generated).
Probably not relevant, but when building (regular or debug), I get:
Package 'epoll-shim', required by 'virtual:world', not found
And when doing make debug
on commit 60571cd5ccc76f91209ef2faac93ecea542de221
(border: fixup infinite recursion) as well as the commits before that, I get the following at the end:
-- Build files have been written to: /home/nktnet/programs/Hyprland/build
cmake --build ./build --config Debug --target all
[0/2] Re-checking globbed directories...
[201/202] Linking CXX executable Hyprland
chmod -R 777 ./build
chmod: changing permissions of './build/install_manifest.txt': Operation not permitted
make: *** [Makefile:21: debug] Error 1
Build does succeed with sudo
, but still no crash report or debug stacktrace.
Can confirm that no_gaps_when_only=1
was the issue for me, and that it was fixed in commit
60571cd5ccc76f91209ef2faac93ecea542de221
just odd there wasn't a way to quickly identify this.
I have
no_gaps_when_only=0
, so I think the Electron/GTK thing is it's own bug
I can confirm that i am also experiencing where armcord which is an electron based app crash when i open it and it is most probably its own bug.
debug stacktrace? I am not
for me the electron based app (armcord) does not crash hyprland, it does its loading animation thingy and then disappears. is it the same for you @Visual-Dawg?
in my case the other bug which makes armcord (an electron based app) to crash is caused by the commit 37e1411e8d94fe8f3fb678588a7df9b8f931910f according to the bisect
armcord output:
Wayland detected, using PipeWire for video capture.
Config is fine
Window config is fine
[Config Manager] Current config: {
"windowStyle": "native",
"channel": "stable",
"armcordCSP": true,
"minimizeToTray": true,
"keybinds": [],
"alternativePaste": false,
"multiInstance": false,
"mods": "vencord",
"spellcheck": true,
"performanceMode": "none",
"skipSplash": false,
"inviteWebsocket": true,
"startMinimized": false,
"dynamicIcon": false,
"tray": true,
"customJsBundle": "https://armcord.app/placeholder.js",
"customCssBundle": "https://armcord.app/placeholder.css",
"disableAutogain": true,
"useLegacyCapturer": false,
"mobileMode": false,
"trayIcon": "default",
"doneSetup": true,
"clientName": "ArmCord",
"customIcon": "/opt/armcord/resources/app.asar/assets/desktop.png"
}
ArmCord has been run before. Skipping setup.
No performance modes set
Setting up CSP unstricter...
[Window state manager] [object Object]
[Window state manager] [object Object]
[Window state manager] [object Object]
[Window state manager] [object Object]
Downloading mod bundle
https://github.com/Vendicated/Vencord/releases/download/devbuild/browser.js
[Window state manager] [object Object]
Starting screenshare module...
[arRPC > ipc] listening at /run/user/1000/discord-ipc-0
[arRPC > websocket] listening on 6463
[arRPC > process] started
[5427:0801/131501.725192:ERROR:wayland_event_watcher.cc(43)] libwayland: xdg_wm_base@23: error -1: Surface already has a different role
/usr/bin/armcord: line 14: 5427 Trace/breakpoint trap "$electron" /usr/share/armcord/app.asar $USER_FLAGS "$@"
I use Vesktop, but VS Code and Vesktop instantly bring Hyprland to crash.
I struggle a bit with a debug trace as my TTY currently gets spammed with warning messages, making it rather daunting to work with it.
I'll try in the evening though
@BluewyDiamond post WAYLAND_DEBUG=1
of armcord in a new issue
this is solved, closing
Regression?
Yes
System Info and Version
System/Version info
```sh Hyprland, built from branch at commit 8a5f9bbb394ddeb4be9a9df6248b41b07d84ea66 (keybinds: handle null monitor in pinActive (7122)). Date: Wed Jul 31 17:54:07 2024 Tag: v0.41.2-144-g8a5f9bbb, commits: 5030 flags: (if any) System Information: System name: Linux Node name: CachyOS Release: 6.10.2-2-cachyos-lto Version: #1 SMP PREEMPT_DYNAMIC Sat, 27 Jul 2024 16:45:35 +0000 GPU information: 2f:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Navi 10 [Radeon RX 5600 OEM/5600 XT / 5700/5700 XT] [1002:731f] (rev c1) (prog-if 00 [VGA controller]) os-release: NAME="CachyOS Linux" PRETTY_NAME="CachyOS" ID=cachyos ID_LIKE=arch BUILD_ID=rolling ANSI_COLOR="38;2;23;147;209" HOME_URL="https://cachyos.org/" DOCUMENTATION_URL="https://wiki.cachyos.org/" SUPPORT_URL="https://forum.cachyos.org/" BUG_REPORT_URL="https://github.com/cachyos" PRIVACY_POLICY_URL="https://terms.archlinux.org/docs/privacy-policy/" LOGO=cachyos plugins: ======Config-Start====== Config File: /home/bluewy/.config/hypr/hyprland.conf: Read Succeeded # ----------------------------------------------------- # Monitors # ----------------------------------------------------- source = $HOME/.config/hypr/sections/monitors.conf # ----------------------------------------------------- # Inputs # ----------------------------------------------------- source = $HOME/.config/hypr/sections/inputs.conf # ----------------------------------------------------- # Keybinds # ----------------------------------------------------- source = $HOME/.config/hypr/sections/keybinds.conf # ----------------------------------------------------- # Environment Variables # ----------------------------------------------------- source = $HOME/.config/hypr/sections/env.conf # ----------------------------------------------------- # Window Rules # ----------------------------------------------------- source = $HOME/.config/hypr/sections/window_rules.conf # ----------------------------------------------------- # Behaviour Rules # ----------------------------------------------------- source = $HOME/.config/hypr/sections/behaviours.conf # ----------------------------------------------------- # Tiling Rules # ----------------------------------------------------- source = $HOME/.config/hypr/sections/tiling.conf # ----------------------------------------------------- # Aesthetics # ----------------------------------------------------- source = $HOME/.config/hypr/sections/aesthetics.conf # ----------------------------------------------------- # Autostart # ----------------------------------------------------- source = $HOME/.config/hypr/sections/autostart.conf Config File: /home/bluewy/.config/hypr/sections/monitors.conf: Read Succeeded monitor = DP-2, 1920x1080@239.964, 0x0, 1 misc { vfr = on vrr = 2 } general { allow_tearing = true } Config File: /home/bluewy/.config/hypr/sections/inputs.conf: Read Succeeded # ----------------------------------------------------- # Keyboard # ----------------------------------------------------- input { kb_layout = bluewy kb_variant = colemak_dh_wide_custom_iso kb_options = grp:win_space_toggle } # ----------------------------------------------------- # Mouse # ----------------------------------------------------- device { name = steelseries-steelseries-rival-3 sensitivity = -0.5 accel_profile = flat } Config File: /home/bluewy/.config/hypr/sections/keybinds.conf: Read Succeeded # ----------------------------------------------------- # Main Keybinds # ----------------------------------------------------- bind = SUPER, 1, focusworkspaceoncurrentmonitor, 1 bind = SUPER, 2, focusworkspaceoncurrentmonitor, 2 bind = SUPER, 3, focusworkspaceoncurrentmonitor, 3 bind = SUPER, 4, focusworkspaceoncurrentmonitor, 4 bind = SUPER, 8, focusworkspaceoncurrentmonitor, 8 bind = SUPER, 9, focusworkspaceoncurrentmonitor, 9 bind = SUPER, 0, focusworkspaceoncurrentmonitor, 10 bind = SUPER + SHIFT, 1, movetoworkspace, 1 bind = SUPER + SHIFT, 2, movetoworkspace, 2 bind = SUPER + SHIFT, 3, movetoworkspace, 3 bind = SUPER + SHIFT, 4, movetoworkspace, 4 bind = SUPER + SHIFT, 8, movetoworkspace, 8 bind = SUPER + SHIFT, 9, movetoworkspace, 9 bind = SUPER + SHIFT, 0, movetoworkspace, 10 bind = SUPER, Left, movefocus, l bind = SUPER, Right, movefocus, r bind = SUPER, Up, movefocus, u bind = SUPER, Down, movefocus, d bind = SUPER, N, movefocus, l bind = SUPER, I, movefocus, r bind = SUPER, U, movefocus, u bind = SUPER, E, movefocus, d bind = SUPER + SHIFT, Left, movewindoworgroup, l bind = SUPER + SHIFT, Right, movewindoworgroup, r bind = SUPER + SHIFT, Up, movewindoworgroup, u bind = SUPER + SHIFT, Down, movewindoworgroup, d bind = SUPER + SHIFT, N, movewindoworgroup, l bind = SUPER + SHIFT, I, movewindoworgroup, r bind = SUPER + SHIFT, U, movewindoworgroup, u bind = SUPER + SHIFT, E, movewindoworgroup, d bind = SUPER, B, togglefloating, bind = SUPER, S, togglesplit, bind = SUPER, G, togglegroup bind = SUPER, K, lockgroups, toggle bind = SUPER, period, changegroupactive bind = SUPER, H, changegroupactive, b bind = SUPER, M, fullscreen, 1 # bind = SUPER, Q, fakefullscreen bind = SUPER, F, fullscreen bindm = SUPER, mouse:272, movewindow bindm = SUPER, mouse:273, resizewindow bind = SUPER + SHIFT, Escape, exit bind = SUPER, X, killactive # ----------------------------------------------------- # Other Keybinds # ----------------------------------------------------- bind = SUPER, L, exec, wezterm bind = SUPER, Y, exec, ags -t ags-launcher bind = SUPER, P, exec, ags -r 'recorder.screenshot(true)' bind = SUPER + SHIFT, P, exec, ags -r 'recorder.screenshot()' bind = SUPER, TAB, exec, ags -t ags-overview bind = ALT, TAB, exec, ags -t ags-overview bind = SUPER, V, exec, cliphist list | fuzzel --dmenu | cliphist decode | wl-copy bind = SUPER, O, exec, $HOME/.config/fuzzel/scripts/hyprland/show_quick_options.fish # ----------------------------------------------------- # Laptop Specific # ----------------------------------------------------- # screen brightness bind = , XF86MonBrightnessUp, exec, brightnessctl s +5% bind = , XF86MonBrightnessDown, exec, brightnessctl s 5%- # keyboard brightness bind = , xf86KbdBrightnessUp, exec, brightnessctl -d *::kbd_backlight set +33% bind = , xf86KbdBrightnessDown, exec, brightnessctl -d *::kbd_backlight set 33%- # volume and media control bind = , XF86AudioRaiseVolume, exec, pamixer -i 5 bind = , XF86AudioLowerVolume, exec, pamixer -d 5 bind = , XF86AudioMicMute, exec, pamixer --default-source -m bind = , XF86AudioMute, exec, pamixer -t bind = , XF86AudioPlay, exec, playerctl play-pause bind = , XF86AudioPause, exec, playerctl play-pause bind = , XF86AudioNext, exec, playerctl next bind = , XF86AudioPrev, exec, playerctl previous Config File: /home/bluewy/.config/hypr/sections/env.conf: Read Succeeded env = XDG_CURRENT_DESKTOP, Hyprland env = XDG_SESSION_DESKTOP, Hyprland env = XDG_SESSION_TYPE, wayland env = XDG_CONFIG_HOME, $HOME/.config env = XDG_DATA_HOME, $HOME/.local/share env = XDG_STATE_HOME, $HOME/.local/state env = XDG_CACHE_HOME, $HOME/.cache env = PATH, $PATH:$HOME/.local/bin:$HOME/.cargo/bin # wayland stuff env = SDL_VIDEODRIVER, wayland env = CLUTTER_BACKEND, wayland env = GDK_BACKEND, wayland,x11 env = QT_QPA_PLATFORM, wayland;xcb # more wayland stuff but from other sources env = WAYLAND, 1 env = MOZ_DBUS_REMOTE, 1 env = MOZ_ENABLE_WAYLAND, 1 env = _JAVA_AWT_WM_NONREPARENTING, 1 env = BEMENU_BACKEND, wayland env = ECORE_EVAS_ENGINE, wayland_egl env = ELM_ENGINE, wayland_egl # enable tearing support for hyprland env = WLR_DRM_NO_ATOMIC, 1 env = EDITOR, nvim # Manage sensitive information with kwallet. env = GIT_ASKPASS, /usr/bin/ksshaskpass env = SSH_ASKPASS, /usr/bin/ksshaskpass env = SSH_ASKPASS_REQUIRE, prefer # GTK stuff env = GTK_THEME, Sweet-Dark # QT stuff env = QT_QPA_PLATFORMTHEME, qt6ct env = QT_WAYLAND_DISABLE_WINDOWDECORATION, 1 # pointer env = XCURSOR_THEME, Bibata-Modern-Classic Config File: /home/bluewy/.config/hypr/sections/window_rules.conf: Read Succeeded layerrule = blur, launcher layerrule = blur, waybar layerrule = blur, gtk-layer-shell layerrule = blur, nwg-dock layerrule = blur, class:^(ags.*)$ layerrule = animation slide right, swaync-control-center layerrule = animation slide top, waybar windowrulev2 = idleinhibit fullscreen, class:^(.*)$ # Improve responsiveness for all applications with exceptions. # example of how the regular expression might look like -> class:^(?!LibreWolf$|Firefox$).*$ windowrulev2 = immediate, class:^(?!LibreWolf$).*$ # Disable potentially annoying requests with exceptions. windowrulev2 = suppressevent fullscreen, class:^(?!LibreWolf$).*$ windowrulev2 = suppressevent maximize, class:^(.*)$ windowrulev2 = suppressevent activate, class:^(.*)$ windowrulev2 = suppressevent activatefocus, class:^(.*)$ # Make jetbrains applications less buggy. windowrulev2 = noinitialfocus, class:^(jetbrains-.*)$, title:^(win.*)$ Config File: /home/bluewy/.config/hypr/sections/behaviours.conf: Read Succeeded input { follow_mouse = 2 mouse_refocus = false float_switch_override_focus = 0 } gestures { workspace_swipe = true workspace_swipe_fingers = 3 } misc { key_press_enables_dpms = true new_window_takes_over_fullscreen = 2 disable_hyprland_logo = true } xwayland { force_zero_scaling = true } experimental { explicit_sync = true } Config File: /home/bluewy/.config/hypr/sections/tiling.conf: Read Succeeded general { layout = dwindle } dwindle { pseudotile = yes preserve_split = yes } Config File: /home/bluewy/.config/hypr/sections/aesthetics.conf: Read Succeeded # ----------------------------------------------------- # Visuals # ----------------------------------------------------- general { gaps_in = 4 gaps_out = 8 border_size = 3 col.active_border = rgba(E06C75ff) # red col.inactive_border = 0xff5c6370 # grey } group { col.border_active = rgba(98C379CC) # green col.border_inactive = rgba(c678ddff) # grey col.border_locked_active = rgba(E06C75ff) # red col.border_locked_inactive = rgba(c678ddff) # grey groupbar { enabled = false gradients = false text_color = 0xffabb2bf font_size = 10 col.active = rgba(98C379CC) # green col.inactive = rgba(d19a66ff) # orange col.locked_active = rgba(e06c75ff) # red col.locked_inactive = rgba(d19a66ff) # orange render_titles = false } } decoration { blur { size = 7 passes = 2 } rounding = 4 drop_shadow = false } # ----------------------------------------------------- # Animations # ----------------------------------------------------- animations { enabled = yes bezier = easeOutQuart, 0.165, 0.84, 0.44, 1 animation = fade, 0 animation = workspaces, 1, 7, easeOutQuart, slide animation = windowsIn, 1, 7, easeOutQuart, popin 0% animation = windowsOut, 1, 7, easeOutQuart, popin 0% animation = windowsMove, 1, 7, easeOutQuart, popin 0% animation = layersIn, 1, 7, easeOutQuart, popin 0% animation = layersOut, 1, 7, easeOutQuart, popin 0% } Config File: /home/bluewy/.config/hypr/sections/autostart.conf: Read Succeeded # Make systemd aware of the specified environment variables. exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP exec-once = systemctl --user import-environment XDG_SESSION_TYPE XDG_CURRENT_DESKTOP exec-once = systemctl --user import-environment QT_QPA_PLATFORMTHEME # Use preferred privilage elevation tool. exec-once = /usr/lib/polkit-kde-authentication-agent-1 # Use portals for additional features. (though its started automatically) exec-once = systemctl start --user xdg-desktop-portal-hyprland exec-once = systemctl start --user xdg-desktop-portal-gtk # Get widgets such as status bar, notifications popups, launcher... exec-once = sleep 1 && ags -c $HOME/.config/ags-ayulr/config.js # Listen for user absence. # exec-once = hypridle # Record notifications history. exec-once = bash $HOME/.config/hypr/scripts/hyprland/log_notifications.sh $XDG_DATA_HOME/notify.log # Set background wallpaper. # exec-once = hyprpaper # Enable clipboard capabilities. exec-once = wl-paste --type text --watch cliphist store # stores only text data exec-once = wl-paste --type image --watch cliphist store # stores only image data # Start sensitive information manager. exec-once = /usr/lib/pam_kwallet_init # Prevent idle during sound playback. exec-once = wayland-pipewire-idle-inhibit ======Config-End======== ```Description
Bisecting shows this commit e989a0bcffac81092ed2a7e371f5225c113f689d is the culpurit. In tty it says: terminated by signal SIGSEGV (Address boundary error).
I'm using ayulr's ags config with some minor tweaks.
How to reproduce
Crash reports, logs, images, videos
No response