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
19.63k stars 827 forks source link

Screen freeze on unlock with hyprlock after sleep #7564

Closed zayihu closed 5 days ago

zayihu commented 2 weeks ago

Regression?

No

System Info and Version

System/Version info ```sh Hyprland, built from branch main at commit eb42adc4c090918ad6be9fcb24066da8cdfd9bd0 (Fix missing include needed by clang). Date: Tue Aug 27 02:36:43 2024 Tag: v0.42.0-76-geb42adc4, commits: 5145 flags: (if any) System Information: System name: Linux Node name: zaiyhu-laptop Release: 6.10.6-arch1-1 Version: #1 SMP PREEMPT_DYNAMIC Mon, 19 Aug 2024 17:02:39 +0000 GPU information: 00:02.0 VGA compatible controller [0300]: Intel Corporation CoffeeLake-H GT2 [UHD Graphics 630] [8086:3e9b] (prog-if 00 [VGA controller]) os-release: NAME="Arch Linux" PRETTY_NAME="Arch Linux" ID=arch BUILD_ID=rolling ANSI_COLOR="38;2;23;147;209" HOME_URL="https://archlinux.org/" DOCUMENTATION_URL="https://wiki.archlinux.org/" SUPPORT_URL="https://bbs.archlinux.org/" BUG_REPORT_URL="https://gitlab.archlinux.org/groups/archlinux/-/issues" PRIVACY_POLICY_URL="https://terms.archlinux.org/docs/privacy-policy/" LOGO=archlinux-logo plugins: ======Config-Start====== Config File: /home/zaiyhu/.config/hypr/hyprland.conf: Read Succeeded # ####################################################################################### # 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. # ####################################################################################### #autogenerated = 1 # remove this line to remove the warning # This is an example Hyprland config file. # Refer to the wiki for more information. # https://wiki.hyprland.org/Configuring/Configuring-Hyprland/ # Please note not all available settings / options are set here. # For a full list, see the wiki # You can split this configuration into multiple files # Create your files separately and then link them to this file like this: # source = ~/.config/hypr/myColors.conf ################ ### MONITORS ### ################ # See https://wiki.hyprland.org/Configuring/Monitors/ monitor=,preferred,auto,auto monitor=eDP-1, 1920x1080, auto, 1.25 #monitor=HDMI-A-3, 1920x1080, 1920x0, 1 ################### ### MY PROGRAMS ### ################### # See https://wiki.hyprland.org/Configuring/Keywords/ # Set programs that you use $terminal = kitty $fileManager = dolphin $menu = fuzzel $browser = librewolf ################# ### AUTOSTART ### ################# # Autostart necessary processes (like notifications daemons, status bars, etc.) # Or execute your favorite apps at launch like this: # # exec-once = hyprlock exec-once = hyprpaper exec-once = waybar exec-once = dunst exec-once = wl-paste --type text --watch cliphist store exec-once = hypridle exec-once = kdeconnectd exec-once=/usr/lib/polkit-kde-authentication-agent-1 ############################# ### ENVIRONMENT VARIABLES ### ############################# # See https://wiki.hyprland.org/Configuring/Environment-variables/ env = GDK_BACKEND,wayland,x11 env = GDK_SCALE,1 env = QT_QPA_PLATFORM,wayland;xcb env = QT_QPA_PLATFORMTHEME,qt5ct xwayland { force_zero_scaling = true } env = XCURSOR_SIZE,24 env = HYPRCURSOR_SIZE,24 env = XDG_CURRENT_DESKTOP,Hyprland env = XDG_SESSION_TYPE,wayland env = XDG_SESSION_DESKTOP,Hyprland env = XDG_MENU_PREFIX,arch- ##################### ### LOOK AND FEEL ### ##################### # Refer to https://wiki.hyprland.org/Configuring/Variables/ # https://wiki.hyprland.org/Configuring/Variables/#general general { gaps_in = 3 gaps_out = 6 border_size = 2 # https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg col.inactive_border = rgba(595959aa) # Set to true enable resizing windows by clicking and dragging on borders and gaps resize_on_border = true # Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on allow_tearing = false layout = dwindle } # https://wiki.hyprland.org/Configuring/Variables/#decoration decoration { rounding = 10 # Change transparency of focused and unfocused windows active_opacity = 1.0 inactive_opacity = 1.0 drop_shadow = true shadow_range = 4 shadow_render_power = 3 col.shadow = rgba(1a1a1aee) # https://wiki.hyprland.org/Configuring/Variables/#blur blur { enabled = true size = 3 passes = 1 vibrancy = 0.1696 } } # https://wiki.hyprland.org/Configuring/Variables/#animations animations { enabled = true # 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 = borderangle, 1, 8, default animation = fade, 1, 7, default animation = workspaces, 1, 6, default } # See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more dwindle { pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below preserve_split = true # You probably want this } # See https://wiki.hyprland.org/Configuring/Master-Layout/ for more master { new_status = master } # https://wiki.hyprland.org/Configuring/Variables/#misc misc { force_default_wallpaper = 0 # Set to 0 or 1 to disable the anime mascot wallpapers disable_hyprland_logo = true # If true disables the random hyprland logo / anime girl background. :( } ############# ### INPUT ### ############# # https://wiki.hyprland.org/Configuring/Variables/#input input { kb_layout = us,ru kb_variant = kb_model = kb_options = grp:win_space_toggle kb_rules = follow_mouse = 1 sensitivity = 0 # -1.0 - 1.0, 0 means no modification. touchpad { natural_scroll = false } } # https://wiki.hyprland.org/Configuring/Variables/#gestures gestures { workspace_swipe = false } # Example per-device config # See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more device { name = epic-mouse-v1 sensitivity = -0.5 } #################### ### KEYBINDINGSS ### #################### # binde =, xf86audioraisevolume, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 5%+ binde =, xf86audiolowervolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%- bind =, xf86audiomute, exec, wpctl set-mute @DEFAULT_SINK@ toggle bind =, xf86audioplay, exec, playerctl play-pause bind =, xf86audiopause, exec, playerctl play-pause bind =, xf86audionext, exec, playerctl next bind =, xf86audioprev, exec, playerctl previous bind =, xf86monbrightnessup, exec, brightnessctl set 5%+ bind =, xf86monbrightnessdown, exec, brightnessctl set 5%- bind=, Print, exec, grim -g "$(slurp)" - | satty --filename - --output-filename ~/data/Pictures/satty-$(date '+%Y%m%d-%H:%M:%S').png # See https://wiki.hyprland.org/Configuring/Keywords/ $mainMod = SUPER # Sets "Windows" key as main modifier # Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more bind = $mainMod, Q, exec, $terminal bind = $mainMod, C, killactive, bind = $mainMod, M, exit, bind = $mainMod, E, exec, $fileManager bind = $mainMod, B, exec, $browser bind = $mainMod, V, togglefloating, bind = $mainMod, R, exec, $menu bind = $mainMod, P, pseudo, # dwindle bind = $mainMod, J, togglesplit, # dwindle bind = $mainMod, L, exec, hyprlock # 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 # 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 # Example special workspace (scratchpad) bind = $mainMod, S, togglespecialworkspace, magic bind = $mainMod SHIFT, S, movetoworkspace, special:magic # 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 ############################## ### WINDOWS AND WORKSPACES ### ############################## # See https://wiki.hyprland.org/Configuring/Window-Rules/ for more # See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules # Example windowrule v1 # windowrule = float, ^(kitty)$ # Example windowrule v2 # windowrulev2 = float,class:^(kitty)$,title:^(kitty)$ windowrulev2 = suppressevent maximize, class:.* # You'll probably like this. #Pavucontrol windowrulev2 = size 800 500,class:(pavucontrol) windowrulev2 = float,class:(pavucontrol) ======Config-End======== ```

Description

I use pidof hyprlock | hyprlock & sleep 1; systemctl suspend to suspend, second monitor is frozen after suspend, reconnecting only helps to make it work as expected.

How to reproduce

  1. run pidof hyprlock | hyprlock & sleep 1; systemctl suspend with second screen, monitor
  2. wait for 10-15 seconds
  3. Exit sleep and there is hyprlock on both monitors, but hyprlock on 2 monitor does not work or react on anything
  4. When I unlock, second monitor stays the same frozen on hyprlock login screen.
  5. If I reconnect HDMI cable it starts working as expected

Crash reports, logs, images, videos

No response

zayihu commented 2 weeks ago

Maybe I am doing something wrong?

vaxerski commented 2 weeks ago

can you try hl-git and aq-git? I have never seen this

zayihu commented 1 week ago

Hi, thank for your reply! Well I am already on Hyprland, built from branch main at commit eb42adc4c090918ad6be9fcb24066da8cdfd9bd0, which is hyprland-git, which uses aq-git? Or maybe I should try building to latest? I also use Nvidia GPU as output for second monitor does it matter?

GPU information: 00:02.0 VGA compatible controller [0300]: Intel Corporation CoffeeLake-H GT2 [UHD Graphics 630] [8086:3e9b] (prog-if 00 [VGA controller]) What's only with first GPU, Hyprland does not display it here for some reason, I have hybrid Intel iGPU and Nvidia GPU laptop with second monitor though HDMI.

My systemd-boot entry: title Arch Linux linux /vmlinuz-linux initrd /intel-ucode.img initrd /initramfs-linux.img options root=/dev/sdb2 rw quiet loglevel=2 nvidia_drm.modeset=1 nvidia.NVreg_PreserveVideoMemoryAllocations=1

Based largely on arch wiki. If you need any more information logs or anything else please do say, I will provide.

vaxerski commented 1 week ago

just cuz you on hl-git doesnt mean you on aq-git, you need to install aq-git separately

zayihu commented 1 week ago

Still same on aq-git, when this happens only laptop screen unlocks, the other display hyprlock is frozen, but for some reason I can open apps in there and cursor or focus seems sometimes in there somehow. Also cursor lags sometimes on laptop while this happens. Anything else that might help you to have any idea where the problem might be?

zayihu commented 1 week ago

Still same on latest commit for hyprland-git and aquamarine-git

zayihu commented 6 days ago

Recompiled again with latest hyprland-git and aquamarine, suspend wake up of screen works without Hyprlock, no freezing, but replugging does not, it gives out black screen. Details #7694. Maybe I should just closes this? Seems like hyprlock issue.

vaxerski commented 6 days ago

if this issue is solved, better close it

zayihu commented 5 days ago

Well not really solved it is still the same, but I don't think that's Hyprland or Aquamarine issue. Hyprlock still freezes nothing changed.