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.34k stars 898 forks source link

[NixOS] Hyprland 0.44 won't start / crashes if secondary monitor is plugged in #8306

Open kubni opened 2 days ago

kubni commented 2 days ago

Already reported ? *

Regression?

Yes

System Info and Version

System/Version info ```sh Hyprland 0.44.0 built from branch at commit ee91df62f0be6ac65eae0eb3ed74383a3671aef7 (). Date: 2024-10-30 Tag: , commits: 5393 built against aquamarine 0.4.3 flags set: debug System Information: System name: Linux Node name: nixos Release: 6.11.5 Version: #1-NixOS SMP PREEMPT_DYNAMIC Tue Oct 22 13:51:37 UTC 2024 GPU information: 01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GP104 [GeForce GTX 1080] [10de:1b80] (rev a1) (prog-if 00 [VGA controller]) NVRM version: NVIDIA UNIX x86_64 Kernel Module 565.57.01 Thu Oct 10 12:29:05 UTC 2024 os-release: ANSI_COLOR="1;34" BUG_REPORT_URL="https://github.com/NixOS/nixpkgs/issues" BUILD_ID="24.11.20241029.30c9efe" DOCUMENTATION_URL="https://nixos.org/learn.html" HOME_URL="https://nixos.org/" ID=nixos IMAGE_ID="" IMAGE_VERSION="" LOGO="nix-snowflake" NAME=NixOS PRETTY_NAME="NixOS 24.11 (Vicuna)" SUPPORT_URL="https://nixos.org/community.html" VERSION="24.11 (Vicuna)" VERSION_CODENAME=vicuna VERSION_ID="24.11" plugins: ======Config-Start====== Config File: /home/nikola/.config/hypr/hyprland.conf: Read Succeeded exec-once = /nix/store/ldpr2fzzk97pzml87z7lmvhqg7pp65lf-dbus-1.14.10/bin/dbus-update-activation-environment --systemd DISPLAY HYPRLAND_INSTANCE_SIGNATURE WAYLAND_DISPLAY XDG_CURRENT_DESKTOP && systemctl --user stop hyprland-session.target && systemctl --user start hyprland-session.target $fileManager=kitty ranger $mainMod=SUPER $menu=wofi --show drun $terminal=kitty animations { 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 enabled=true } cursor { no_hardware_cursors=true } debug { disable_logs=false } decoration { blur { enabled=true passes=1 size=3 vibrancy=0.1696 } col.shadow=rgba(1a1a1aee) drop_shadow=true rounding=10 shadow_range=4 shadow_render_power=3 } device { name=logitech-g403-prodigy-gaming-mouse accel_profile=flat } dwindle { preserve_split=true pseudotile=true } general { allow_tearing=false border_size=2 col.active_border=rgba(8fbcbbaa) rgba(88c0d0aa) rgba(81a1c1aa) rgba(5e81acaa) 45deg col.inactive_border=rgba(595959aa) gaps_in=5 gaps_out=10 layout=master } input { follow_mouse=1 kb_layout=us,rs, kb_model=,qwerty kb_options=grp:alt_shift_toggle kb_variant=,latin sensitivity=0 } master { new_status=master } misc { enable_swallow=true force_default_wallpaper=0 swallow_regex=^(kitty)$ } bind=$mainMod, Q, killactive bind=$mainMod SHIFT, Q, exit bind=$mainMod SHIFT, F, fullscreen bind=$mainMod, P, pseudo bind=$mainMod, J, togglesplit bind=$mainMod, T, togglefloating bind=$mainMod, RETURN, exec, $terminal bind=$mainMod, F, exec, librewolf bind=$mainMod, D, exec, $menu bind=$mainMod, E, exec, emacs bind=$mainMod, V, exec, cliphist list | wofi --dmenu | cliphistdecode | wl-copy bind=$mainMod, left, movefocus, l bind=$mainMod, right, movefocus, r bind=$mainMod, up, movefocus, u bind=$mainMod, down, movefocus, d bind=ALT, F, exec, $fileManager bind=ALT, P, exec, $terminal pulsemixer bind=, Print, exec, grim -g "$(slurp)" - | wl-copy && wl-paste > ~/Screenshots/Screenshot-$(date +%F_%T).png | dunstify "Screenshot of the region taken" -t 1000 bind=SHIFT, Print, exec, grim -c - | wl-copy && wl-paste > ~/Screenshots/Screenshot-$(date +%F_%T).png | dunstify "Screenshot of the whole screen taken" 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, 10, workspace, 10 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, 10, movetoworkspace, 10 bind=$mainMod, mouse_down, workspace, e+1 bind=$mainMod, mouse_up, workspace, e-1 bindm=$mainMod, mouse:272, movewindow bindm=$mainMod, mouse:273, resizewindow env=HYPRCURSOR_SIZE, 40 env=QT_QPA_PLATFORM,wayland;xcb env=QT_QPA_PLATFORMTHEME, qt6ct env=LIBVA_DRIVER_NAME, nvidia env=XDG_SESSION_TYPE, wayland env=XDG_SESSION_DESKTOP, Hyprland env=XDG_CURRENT_DESKTOP, Hyprland env=GBM_BACKEND, nvidia-drm env=__GLX_VENDOR_LIBRARY_NAME, nvidia exec-once=mako & exec-once=wl-paste --type text --watch cliphist store exec-once=wl-paste --type image --watch cliphist store monitor=DP-3,2560x1440@74.97,auto,auto,bitdepth,10 monitor=HDMI-A-1,preferred,auto-left,auto,bitdepth,10 ======Config-End======== ```

Description

My 2 monitor setup worked fine on 0.41.2, however since upgrading to 0.44 I can't get my secondary monitor to work. If it's plugged in when I try to start Hyprland from tty, Hyprland just won't start. If I plug it after I start it with one monitor, it crashes instantly. The crash log mentions some monitor related functions in the backtrace. I will attach the newest crash report below, along with the coredump.

How to reproduce

Not sure?

Crash reports, logs, images, videos

newest_hyprland_multi_monitor_crash.txt newest_coredmp.txt

kubni commented 2 days ago

I think this is technically a regression since it worked in 0.41.2, but my browser refuses to open the provided Hyprland wiki link.

vaxerski commented 1 day ago

have you tried git

kubni commented 1 day ago

have you tried git

I m using nixos-unstable channel, so I think I thats the equivalent of git version?

fufexan commented 13 hours ago

It's not. Unstable has the latest release. To use the git version, use the flake.

kubni commented 13 hours ago

Sorry, it seems I misunderstood something. I am using the flake, and my nixpkgs url (what I called the channel, is that wrong?) is set to nixos-unstable

It's not. Unstable has the latest release. To use the git version, use the flake.

kubni commented 13 hours ago

Here is what the hyprctl version says:

Hyprland 0.44.0 built from branch  at commit 93b4478e70af6ffb08a4a66a6d0364c3296db296  ().
Date: 2024-10-31
Tag: , commits: 5396
built against aquamarine 0.4.3

flags set:
debug
fufexan commented 5 hours ago

Ok then it is git.

KZDKM commented 4 hours ago

Same issue with hyprland-git on arch. Crashes if any window or layer is on the second monitor. Backtrace shows it crashes on renderTextureWithBlur My secondary monitor has transform 3 if thats relevant.

Edit: unsetting transform no longer crashes.