hyprwm / Hyprland

Hyprland is an independent, highly customizable, dynamic tiling Wayland compositor that doesn't sacrifice on its looks.
https://hyprland.org
BSD 3-Clause "New" or "Revised" License
21.09k stars 882 forks source link

Crash in default bash #2345

Closed jack9603301 closed 1 year ago

jack9603301 commented 1 year ago

My system environment is Gentoo/Linux, installed with emerge and using the default fish, it boots up fine, however, if I execute this command:

chsh --shell /bin/bash jack

Then restart the OS and execute Hyprland, it always crashes

--------------------------------------------
   Hyprland Crash Report
--------------------------------------------
Sorry, didn't mean to...

Hyprland received signal 6 (Aborted)

Version: f27873a6f06dc2f87600edb890f3c38298bfb55f

System info:
    System name: Linux
    Node name: localhost
    Release: 6.3.3-gentoo-x86_64
    Version: #1 SMP PREEMPT_DYNAMIC Fri May 19 17:17:41 CST 2023

GPU:
    00:02.0 VGA compatible controller [0300]: Intel Corporation HD Graphics 530 [8086:1912] (rev 06) (prog-if 00 [VGA controller])
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GM107 [GeForce GTX 750] [10de:1381] (rev a2) (prog-if 00 [VGA controller])

os-release:
    NAME=Gentoo
    ID=gentoo
    PRETTY_NAME="Gentoo Linux"
    ANSI_COLOR="1;32"
    HOME_URL="https://www.gentoo.org/"
    SUPPORT_URL="https://www.gentoo.org/support/"
    BUG_REPORT_URL="https://bugs.gentoo.org/"
    VERSION_ID="2.13"

Backtrace:
    #0 | Hyprland(_ZN13CrashReporter18createAndSaveCrashEi+0xa4d) [0x56349301565d]
        ??
        ??:0
    #1 | Hyprland(_Z25handleUnrecoverableSignali+0x3c) [0x563492fc79cc]
        ??
        ??:0
    #2 | /lib64/libc.so.6(+0x385d0) [0x7f51fe2665d0]
        ??
        ??:0
    #3 | /lib64/libc.so.6(+0x85d0c) [0x7f51fe2b3d0c]
        ??
        ??:0
    #4 | /lib64/libc.so.6(gsignal+0x12) [0x7f51fe266532]
        ??
        ??:0
    #5 | /lib64/libc.so.6(abort+0xd3) [0x7f51fe2504b2]
        ??
        ??:0
    #6 | /usr/lib/gcc/x86_64-pc-linux-gnu/13/libstdc++.so.6(+0xa0c38) [0x7f51fe4a0c38]
        ??
        ??:0
    #7 | /usr/lib/gcc/x86_64-pc-linux-gnu/13/libstdc++.so.6(+0xb31b6) [0x7f51fe4b31b6]
        ??
        ??:0
    #8 | /usr/lib/gcc/x86_64-pc-linux-gnu/13/libstdc++.so.6(+0xb3221) [0x7f51fe4b3221]
        ??
        ??:0
    #9 | /usr/lib/gcc/x86_64-pc-linux-gnu/13/libstdc++.so.6(+0xb3462) [0x7f51fe4b3462]
        ??
        ??:0
    #10 | Hyprland(+0x88097) [0x563492f8f097]
        ??
        ??:0
    #11 | Hyprland(main+0x447) [0x563492fa7047]
        ??
        ??:0
    #12 | /lib64/libc.so.6(+0x238ca) [0x7f51fe2518ca]
        ??
        ??:0
    #13 | /lib64/libc.so.6(__libc_start_main+0x85) [0x7f51fe251985]
        ??
        ??:0
    #14 | Hyprland(_start+0x21) [0x563492fc21e1]
        ??
        ??:0

Log tail:
[LOG] Registered signal for owner 5634944d41b0: 5634944d41f8 -> 563493206aa0 (owner: OutputMgr)
[LOG] Registered signal for owner 5634944d4290: 5634944d42c0 -> 563493206a40 (owner: InhibitMgr)
[LOG] Registered signal for owner 5634944d4290: 5634944d42d0 -> 563493206a20 (owner: InhibitMgr)
[LOG] Registered signal for owner 5634944d44d0: 5634944d44e8 -> 563493206b40 (owner: PointerConstraints)
[LOG] Registered signal for owner 5634944d4010: 5634944d4040 -> 563493206a00 (owner: XDGDecoMgr)
[LOG] Registered signal for owner 5634944d46d0: 5634944d4700 -> 563493206b60 (owner: VirtPtrMgr)
[LOG] Registered signal for owner 5634944d4620: 5634944d4650 -> 563493206860 (owner: VKeyboardMgr)
[LOG] Registered signal for owner 563493cabaf0: 563493cabaf0 -> 5634932069e0 (owner: WLRRenderer)
[LOG] Registered signal for owner 5634944d4a80: 5634944d4ab0 -> 5634932069c0 (owner: WLRIdleInhibitMgr)
[LOG] Registered signal for owner 5634943af080: 5634943af0b0 -> 5634932068c0 (owner: PowerMgr)
[LOG] Registered signal for owner 5634944d4f00: 5634944d4f30 -> 5634932068a0 (owner: IMEMgr)
[LOG] Registered signal for owner 5634944d4e50: 5634944d4e80 -> 563493206880 (owner: TextInputMgr)
[LOG] Registered signal for owner 5634944d4fb0: 5634944d4fd8 -> 563493206c40 (owner: ActivationV1)
[LOG] Registered signal for owner 5634944d5100: 5634944d5108 -> 563493206780 (owner: SessionLockMgr)
[LOG] Registered signal for owner 563493b7b490: 5634944d4870 -> 563493206ca0 (owner: DRM)
[LOG] Registered signal for owner 563493b8b9f0: 563493b8bb50 -> 5634932069a0 (owner: Session)
[WARN] wl_display_add_socket for wayland-1 returned -1: skipping candidate 1
[WARN] wl_display_add_socket for wayland-2 returned -1: skipping candidate 2
[WARN] wl_display_add_socket for wayland-3 returned -1: skipping candidate 3
[WARN] wl_display_add_socket for wayland-4 returned -1: skipping candidate 4
[WARN] wl_display_add_socket for wayland-5 returned -1: skipping candidate 5
[WARN] wl_display_add_socket for wayland-6 returned -1: skipping candidate 6
[WARN] wl_display_add_socket for wayland-7 returned -1: skipping candidate 7
[WARN] wl_display_add_socket for wayland-8 returned -1: skipping candidate 8
[WARN] wl_display_add_socket for wayland-9 returned -1: skipping candidate 9
[WARN] wl_display_add_socket for wayland-10 returned -1: skipping candidate 10
[WARN] wl_display_add_socket for wayland-11 returned -1: skipping candidate 11
[WARN] wl_display_add_socket for wayland-12 returned -1: skipping candidate 12
[WARN] wl_display_add_socket for wayland-13 returned -1: skipping candidate 13
[WARN] wl_display_add_socket for wayland-14 returned -1: skipping candidate 14
[WARN] wl_display_add_socket for wayland-15 returned -1: skipping candidate 15
[WARN] wl_display_add_socket for wayland-16 returned -1: skipping candidate 16
[WARN] wl_display_add_socket for wayland-17 returned -1: skipping candidate 17
[WARN] wl_display_add_socket for wayland-18 returned -1: skipping candidate 18
[WARN] wl_display_add_socket for wayland-19 returned -1: skipping candidate 19
[WARN] wl_display_add_socket for wayland-20 returned -1: skipping candidate 20
[WARN] wl_display_add_socket for wayland-21 returned -1: skipping candidate 21
[WARN] wl_display_add_socket for wayland-22 returned -1: skipping candidate 22
[WARN] wl_display_add_socket for wayland-23 returned -1: skipping candidate 23
[WARN] wl_display_add_socket for wayland-24 returned -1: skipping candidate 24
[WARN] wl_display_add_socket for wayland-25 returned -1: skipping candidate 25
[WARN] wl_display_add_socket for wayland-26 returned -1: skipping candidate 26
[WARN] wl_display_add_socket for wayland-27 returned -1: skipping candidate 27
[WARN] wl_display_add_socket for wayland-28 returned -1: skipping candidate 28
[WARN] wl_display_add_socket for wayland-29 returned -1: skipping candidate 29
[WARN] wl_display_add_socket for wayland-30 returned -1: skipping candidate 30
[WARN] wl_display_add_socket for wayland-31 returned -1: skipping candidate 31
[WARN] wl_display_add_socket for wayland-32 returned -1: skipping candidate 32
[WARN] All candidates failed, trying wl_display_add_socket_auto
[CRITICAL] m_szWLDisplaySocket NULL!

Oddly, this problem is very easy to solve, just execute:

chsh --shell /bin/fish jack

Then restart and execute Hyprland, then everything is fine - it always gets triggered in bash, and in fish it is perfectly fine

Here is my hypr configuration:

########################################################################################
AUTOGENERATED HYPR CONFIG.
PLEASE USE THE CONFIG PROVIDED IN THE GIT REPO /examples/hypr.conf AND EDIT IT,
OR EDIT THIS ONE ACCORDING TO THE WIKI INSTRUCTIONS.
########################################################################################

#
# Please note not all available settings / options are set here.
# For a full list, see the wiki
#

#autogenerated = 1 # remove this line to remove the warning

# See https://wiki.hyprland.org/Configuring/Monitors/
#monitor=,preferred,auto,1
monitor=, 2048x1080@60,0x0,1
#monitor=, 4096x2160@60,0x0,1

# See https://wiki.hyprland.org/Configuring/Keywords/ for more

# Execute your favorite apps at launch
exec-once = sleep 10 && waybar -c ~/.config/waybar/config.bottom
exec-once = waybar -c ~/.config/waybar/config.top
exec-once = /opt/upwork-wayland/screenshot_adapter.py
exec-once = hyprpaper
exec-once = fcitx5
exec-once = sleep 10 && gentoo-pipewire-launcher >/dev/null 2>&1
exec-once = gsettings set org.gnome.desktop.interface gtk-theme "Dexy-GTK"
exec-once = gsettings set org.gnome.desktop.interface icon-theme "Dexy-GTK"
exec-once = gsettings set org.gnome.desktop.interface font-name "SourceSerif4 10"
exec-once = /usr/libexec/xdg-desktop-portal-gtk -r 
exec-once = /usr/libexec/xdg-desktop-portal-wlr -r 
exec-once = /usr/libexec/xdg-desktop-portal -r
exec-once = flameshot
exec-once = thunderbird
#exec-once = dbus-update-activation-environment 2>/dev/null && dbus-update-activation-environment DISPLAY=$DISPLAY WAYLAND_DISPLAY=$WAYLAND_DISPLAY SWAYSOCK=$SWAYSOCK
#exec-once = XDG_CURRENT_DESKTOP=sway flameshot &

# Source a file (multi-file configs)
# source = ~/.config/hypr/myColors.conf

"wlr/workspaces": {
    "format": "{icon}",
    "on-scroll-up": "hyprctl dispatch workspace e+1",
    "on-scroll-down": "hyprctl dispatch workspace e-1",
    "on-click": "activate"
}

# 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 = no
    }

    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 = 20
    border_size = 2
    col.active_border = rgba(1affffee)
    col.inactive_border = rgba(595959aa)

    layout = dwindle
}

decoration {
    # See https://wiki.hyprland.org/Configuring/Variables/ for more

    rounding = 10
    blur = yes
    blur_size = 3
    blur_passes = 1
    blur_new_optimizations = on

    drop_shadow = yes
    shadow_range = 4
    shadow_render_power = 3
    col.shadow = rgba(1a1a1aee)
}

animations {
    enabled = yes

    # 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 = fade, 1, 7, default
    animation = workspaces, 1, 6, default
}

dwindle {
    # See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
    pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
    preserve_split = yes # you probably want this
}

master {
    # See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
    new_is_master = true
}

gestures {
    # See https://wiki.hyprland.org/Configuring/Variables/ for more
    workspace_swipe = off
}

# Example per-device config
# See https://wiki.hyprland.org/Configuring/Keywords/#executing for more
device:epic mouse V1 {
    sensitivity = -0.5
}

# 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

windowrule=nofocus
windowrule=float,^(rofi)$
windowrule=workspace name:work, title:Upwork
windowrule=workspace name:Telegram, title:Telegram
windowrule=workspace name:work, title:Skype
windowrule=workspace name:mail, title:Thunderbird
# 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, kitty
bind = $mainMod, C, killactive, 
#bind = $mainMod, M, exit,
bind = $mainMod, M, exec, prime-run /home/jack/Applications/Meshroom/Meshroom
bind = $mainMod, F, exec, firefox
bind = $mainMod, Print, exec, flameshot gui
bind = $mainMod + SHIFT, Print, exec, XDG_CURRENT_DESKTOP=sway flameshot gui -r | wl-copy
bind = $mainMod, F2, exec, fcitx5-configtool
bind = $mainMod, T, exec, telegram-desktop
bind = $mainMod, E, exec, dolphin
bind = $mainMod, V, togglefloating, 
bind = $mainMod, R, exec, rofi -show drun
#bind = $mainMod, R, exec, wofi --show drun
#bind = $mainMod + SHIFT, KP_Subtract , exec, fish -c "set_main_mute 5%-"
bind = $mainMod + SHIFT, KP_Subtract , exec, fish -c "amixer set Master 5%-"
#bind = $mainMod + SHIFT, KP_Add, exec, fish -c "set_main_mute 5%+"
bind = $mainMod + SHIFT, KP_Add, exec, fish -c "amixer set Master 5%+"
bind = $mainMod, P, pseudo, # dwindle
bind = $mainMod, J, togglesplit, # dwindle
bind = $mainMod, F3, exec, QT_QPA_PLATFORM=xcb  Applications/Ultimaker-Cura-5.0.0-beta+1-linux_c714ec65293e8f948ace6fd69440b1d4.AppImage

bind = $mainMod + ALT, T, workspace, Telegram
bind = $mainMod + ALT, M, workspace, mail
bind = $mainMod + ALT, W, workspace, work

# Move focus with mainMod + arrow keys
bind = $mainMod, left, movefocus, l
bind = $mainMod, right, movefocus, r
bind = $mainMod, up, movefocus, u
bind = $mainMod, down, movefocus, d

bind = $mainMod, K, togglegroup,
bind = $mainMod, Tab, changegroupactive, f

# 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

bind = $mainMod, F11, movetoworkspace, special
bind = $mainMod, F12, togglespecialworkspace

This test has been verified many times. My environment is a mixed GPU environment of intel+NVIDIA. The monitor is connected to intel. If there is no artificial offload to nvidia, then it should always be executed in intel-although I think it has nothing to do with this !

I don't know what other information you need and if so, please let me know, but this question only comes up when bash is the default shell!

This is a very strange question and gives me the illusion of being fooled by Hyprland and the OS!

vaxerski commented 1 year ago

if this indicates any issue, it's one with wayland core and not hyprland. IIRC someone already had this one on gentoo specifically. Search through the bug tracker

jack9603301 commented 1 year ago

@vaxerski So where should I report the problem?

vaxerski commented 1 year ago

probably wayland

GrabbenD commented 1 year ago

Just encountered this issue in Arch Linux and funny enough I didn't have it 1 month ago. Did you find a solution @jack9603301? Maybe you reported this issue somewhere else?

Spixmaster commented 1 year ago

@GrabbenD I have the same issue on Arch Linux. Although, it is not consistent but it happens most of the times.

GrabbenD commented 1 year ago

@Spixmaster I encountered this issue for the first time in Arch Linux as well. I have a vague memory of this but: