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.44k stars 897 forks source link

Hyprland crash on startup during 'Creating the CursorManager' #5238

Closed MisterNorwood closed 7 months ago

MisterNorwood commented 7 months ago

Hyprland Version

System/Version info ```sh HYPRLAND_INSTANCE_SIGNATURE not set! (is hyprland running?) ```

Bug or Regression?

Bug

Description

Hyprland crashes during startup on artix linux. This happens specifically after update 0.37. I suspect the new hyprcursor functionality has something to do with this.

How to reproduce

Install Hyprland >=0.37.0 on artix linux

Crash reports, logs, images, videos

--------------------------------------------
   Hyprland Crash Report
--------------------------------------------
Well this is awkward.

Hyprland received signal 6 (Aborted)

Version: c7fbea3368452c34c47a4a634e642de6cd4090cb
Tag: v0.37.1-52-gc7fbea33

System info:
    System name: Linux
    Node name: artix-amd
    Release: 6.8.1-zen1-1-zen
    Version: #1 ZEN SMP PREEMPT_DYNAMIC Sun, 17 Mar 2024 08:05:02 +0000

GPU:
    03:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Navi 31 [Radeon RX 7900 XT/7900 XTX/7900M] [1002:744c] (rev c8) (prog-if 00 [VGA controller])
1a:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Raphael [1002:164e] (rev c2) (prog-if 00 [VGA controller])

os-release:
    NAME="Artix Linux"
    PRETTY_NAME="Artix Linux"
    ID=artix
    BUILD_ID=rolling
    ANSI_COLOR="0;36"
    HOME_URL="https://www.artixlinux.org/"
    DOCUMENTATION_URL="https://wiki.artixlinux.org/"
    SUPPORT_URL="https://forum.artixlinux.org/"
    BUG_REPORT_URL="https://bugs.artixlinux.org/"
    PRIVACY_POLICY_URL="https://terms.artixlinux.org/docs/privacy-policy/"
    LOGO=artixlinux-logo

Backtrace:
    #0 | Hyprland(_Z12getBacktracev+0x62) [0x5e520001bb52]
        getBacktrace()
        ??:?
    #1 | Hyprland(_ZN13CrashReporter18createAndSaveCrashEi+0x6d3) [0x5e51fffcf3a3]
        CrashReporter::createAndSaveCrash(int)
        ??:?
    #2 | Hyprland(_Z25handleUnrecoverableSignali+0x48) [0x5e51fff64e08]
        handleUnrecoverableSignal(int)
        ??:?
    #3 | /usr/lib/libc.so.6(+0x3c770) [0x7d1cc1c5a770]
        ??
        ??:0
    #4 | /usr/lib/libc.so.6(+0x8d32c) [0x7d1cc1cab32c]
        ??
        ??:0
    #5 | /usr/lib/libc.so.6(gsignal+0x18) [0x7d1cc1c5a6c8]
        ??
        ??:0
    #6 | /usr/lib/libc.so.6(abort+0xd7) [0x7d1cc1c424b8]
        ??
        ??:0
    #7 | /usr/lib/libstdc++.so.6(+0x97a6f) [0x7d1cc1e97a6f]
        ??
        ??:0
    #8 | /usr/lib/libstdc++.so.6(+0xab11c) [0x7d1cc1eab11c]
        main
        ??:?
    #9 | /usr/lib/libstdc++.so.6(+0xab189) [0x7d1cc1eab189]
        main
        ??:?
    #10 | /usr/lib/libstdc++.so.6(+0xab3ed) [0x7d1cc1eab3ed]
        main
        ??:?
    #11 | /usr/lib/libstdc++.so.6(+0xa0d1b) [0x7d1cc1ea0d1b]
        main
        ??:?
    #12 | /usr/lib/libhyprcursor.so.0(+0x73c5) [0x7d1cc22d83c5]
        ??
        ??:0
    #13 | /usr/lib/libhyprcursor.so.0(_ZN10Hyprcursor18CHyprcursorManagerC1EPKc+0x355) [0x7d1cc22e0445]
        ??
        ??:0
    #14 | Hyprland(_ZN14CCursorManagerC1Ev+0x8b) [0x5e5200040e2b]
        CCursorManager::CCursorManager()
        ??:?
    #15 | Hyprland(_ZN11CCompositor12initManagersE18eManagersInitStage+0xee0) [0x5e51fff6ac10]
        CCompositor::initManagers(eManagersInitStage)
        ??:?
    #16 | Hyprland(_ZN11CCompositor10initServerEv+0x505) [0x5e51fff6b935]
        CCompositor::initServer()
        ??:?
    #17 | Hyprland(main+0x79e) [0x5e51fff4b5be]
        main
        ??:?
    #18 | /usr/lib/libc.so.6(+0x25cd0) [0x7d1cc1c43cd0]
        ??
        ??:0
    #19 | /usr/lib/libc.so.6(__libc_start_main+0x8a) [0x7d1cc1c43d8a]
        ??
        ??:0
    #20 | Hyprland(_start+0x25) [0x5e51fff61eb5]
        _start
        ??:?

Log tail:
[render/gles2/renderer.c:600] GPU reset notifications are enabled
[render/allocator/allocator.c:105] Trying to create gbm allocator
[render/allocator/gbm.c:212] Created GBM allocator with backend drm
[render/allocator/gbm.c:215] Using DRM node /dev/dri/card1
[types/wlr_drm_lease_v1.c:637] Creating wlr_drm_lease_device_v1 for /dev/dri/card1
[types/wlr_drm_lease_v1.c:637] Creating wlr_drm_lease_device_v1 for /dev/dri/card0
[backend/headless/backend.c:67] Creating headless backend
[LOG] Creating the ThreadManager!
[LOG] Creating CHyprCtl
[LOG] Hypr socket started at /tmp/hypr/c7fbea3368452c34c47a4a634e642de6cd4090cb_1711243848/.socket.sock
[LOG] Creating the InputManager!
[LOG] [hookSystem] New hook event registered: keyboardFocus
[LOG] Creating the CHyprOpenGLImpl!
[LOG] Creating the Hypr OpenGL Renderer!
[LOG] Using: OpenGL ES 3.2 Mesa 24.1.0-devel (git-b835784dde)
[LOG] Vendor: AMD
[LOG] Renderer: AMD Radeon RX 7900 XTX (radeonsi, navi31, LLVM 17.0.6, DRM 3.57, 6.8.1-zen1-1-zen)
[LOG] Supported extensions size: 153
[LOG] Creating the HyprRenderer!
[LOG] DRM driver information: amdgpu v3.57.0 from 20150101 description AMD GPU
[LOG] DRM driver information: amdgpu v3.57.0 from 20150101 description AMD GPU
[LOG] Creating the XWaylandManager!
[LOG] Registered signal for owner 5e5201b4ec90: 5e5201b4ecd8 -> 5e5200148360 (owner: XWayland Manager)
[LOG] Registered signal for owner 5e5201b4ec90: 5e5201b4ece8 -> 5e5200148340 (owner: XWayland Manager)
[LOG] CHyprXWaylandManager started on display :0
[LOG] Creating the ProtocolManager!
[LOG] ToplevelExportManager started successfully!
[LOG] FractionalScaleManager started successfully!
[LOG] TextInputV1Manager started successfully!
[LOG] GlobalShortcutsManager started successfully!
[LOG] ScreencopyProtocolManager started successfully!
[LOG] [proto XDGOutput] started
[LOG] [hookSystem] New hook event registered: monitorLayoutChanged
[LOG] [hookSystem] New hook event registered: monitorRemoved
[LOG] Creating the SessionLockManager!
[LOG] Creating the EventManager!
[LOG] Creating the HyprDebugOverlay!
[LOG] Creating the HyprNotificationOverlay!
[LOG] Creating the PluginSystem!
[LOG] Creating the DecorationPositioner!
[LOG] [hookSystem] New hook event registered: closeWindow
[LOG] [hookSystem] New hook event registered: openWindow
[LOG] Creating the CursorManager!
vaxerski commented 7 months ago

update hyprcursor fisrt

MisterNorwood commented 7 months ago

I have installed the git version (hyprcursor-git 0.1.4.r8.g7bd0d55a-1) Still same issue.

MightyPlaza commented 7 months ago
$ pacman -Qs hyprcursor
local/hyprcursor 0.1.5-1
    The hyprland cursor format, library and utilities
vaxerski commented 7 months ago

compile hyprcursor in debug and try the tests (any, either C or C++) and see if they render a cursor image to /tmp when ran.

MisterNorwood commented 7 months ago

After running the test, I determined that permissions to the icon folder was misconfigured. Shame that hyprland does not communicate it clearly in the log or crash. Maybe it was supposed to but it didn't for some reason. The issue is resolved, closing now.

vaxerski commented 7 months ago

After running the test, I determined that permissions to the icon folder was misconfigured. Shame that hyprland does not communicate it clearly in the log or crash. Maybe it was supposed to but it didn't for some reason. The issue is resolved, closing now.

The functionality is there and I will add it to hyprland once hyprcursor gets 0.1.6 (it's only on -git now)