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

Nvidia beta drivers 560 causing hard freeze in Hyprland #7340

Closed Benjman closed 2 months ago

Benjman commented 2 months ago

Regression?

Yes

System Info and Version

System/Version info ```sh Hyprland, built from branch at commit 9a09eac79b85c846e3a865a9078a3f8ff65a9259 (props: bump version to 0.42.0). Date: Wed Aug 7 19:17:10 2024 Tag: v0.42.0, commits: 5069 flags: (if any) System Information: System name: Linux Node name: **** Release: 6.10.4-arch2-1 Version: #1 SMP PREEMPT_DYNAMIC Sun, 11 Aug 2024 16:19:06 +0000 GPU information: 09:00.0 VGA compatible controller [0300]: NVIDIA Corporation TU104 [GeForce RTX 2080 Rev. A] [10de:1e87] (rev a1) (prog-if 00 [VGA controller]) NVRM version: NVIDIA UNIX x86_64 Kernel Module 555.58.02 Tue Jun 25 01:39:15 UTC 2024 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/ben/.config/hypr/hyprland.conf: Read Succeeded #   ░▒▒▒░░░░░▓▓          ___________ # ░░▒▒▒░░░░░▓▓        //___________/ # ░░▒▒▒░░░░░▓▓     _   _ _    _ _____ # ░░▒▒░░░░░▓▓▓▓▓▓ | | | | |  | |  __/ # ░▒▒░░░░▓▓   ▓▓ | |_| | |_/ /| |___ #  ░▒▒░░▓▓   ▓▓   \__  |____/ |____/ #    ░▒▓▓   ▓▓  //____/ $scrPath = $HOME/.local/share/bin # set scripts path # █▀▄▀█ █▀█ █▄░█ █ ▀█▀ █▀█ █▀█ # █░▀░█ █▄█ █░▀█ █ ░█░ █▄█ █▀▄ # See https://wiki.hyprland.org/Configuring/Monitors/ monitor = ,preferred,auto,auto # █░░ ▄▀█ █░█ █▄░█ █▀▀ █░█ # █▄▄ █▀█ █▄█ █░▀█ █▄▄ █▀█ # See https://wiki.hyprland.org/Configuring/Keywords/ exec-once = $scrPath/resetxdgportal.sh # reset XDPH for screenshare exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP # for XDPH exec-once = dbus-update-activation-environment --systemd --all # for XDPH exec-once = systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP # for XDPH exec-once = $scrPath/polkitkdeauth.sh # authentication dialogue for GUI apps exec-once = waybar # launch the system bar exec-once = blueman-applet # systray app for Bluetooth exec-once = udiskie --no-automount --smart-tray # front-end that allows to manage removable media exec-once = nm-applet --indicator # systray app for Network/Wifi exec-once = dunst # start notification demon exec-once = wl-paste --type text --watch cliphist store # clipboard store text data exec-once = wl-paste --type image --watch cliphist store # clipboard store image data exec-once = $scrPath/swwwallpaper.sh # start wallpaper daemon exec-once = $scrPath/batterynotify.sh # battery notification # █▀▀ █▄░█ █░█ # ██▄ █░▀█ ▀▄▀ # See https://wiki.hyprland.org/Configuring/Environment-variables/ env = PATH,$PATH:$scrPath env = XDG_CURRENT_DESKTOP,Hyprland env = XDG_SESSION_TYPE,wayland env = XDG_SESSION_DESKTOP,Hyprland env = QT_QPA_PLATFORM,wayland;xcb env = QT_QPA_PLATFORMTHEME,qt6ct env = QT_WAYLAND_DISABLE_WINDOWDECORATION,1 env = QT_AUTO_SCREEN_SCALE_FACTOR,1 env = MOZ_ENABLE_WAYLAND,1 env = GDK_SCALE,1 # █ █▄░█ █▀█ █░█ ▀█▀ # █ █░▀█ █▀▀ █▄█ ░█░ # See https://wiki.hyprland.org/Configuring/Variables/ input { kb_layout = us follow_mouse = 1 touchpad { natural_scroll = no } sensitivity = 0 force_no_accel = 1 } # See https://wiki.hyprland.org/Configuring/Keywords/#executing device { name = epic mouse V1 sensitivity = -0.5 } # See https://wiki.hyprland.org/Configuring/Variables/ gestures { workspace_swipe = true workspace_swipe_fingers = 3 } # █░░ ▄▀█ █▄█ █▀█ █░█ ▀█▀ █▀ # █▄▄ █▀█ ░█░ █▄█ █▄█ ░█░ ▄█ # See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ dwindle { pseudotile = yes preserve_split = yes } # See https://wiki.hyprland.org/Configuring/Master-Layout/ master { new_status = master } # █▀▄▀█ █ █▀ █▀▀ # █░▀░█ █ ▄█ █▄▄ # See https://wiki.hyprland.org/Configuring/Variables/ misc { vrr = 0 disable_hyprland_logo = true disable_splash_rendering = true force_default_wallpaper = 0 } xwayland { force_zero_scaling = true } # █▀ █▀█ █░█ █▀█ █▀▀ █▀▀ # ▄█ █▄█ █▄█ █▀▄ █▄▄ ██▄ source = ~/.config/hypr/animations.conf source = ~/.config/hypr/keybindings.conf source = ~/.config/hypr/windowrules.conf source = ~/.config/hypr/themes/common.conf # shared theme settings source = ~/.config/hypr/themes/theme.conf # theme specific settings source = ~/.config/hypr/themes/colors.conf # wallbash color override source = ~/.config/hypr/monitors.conf # initially empty, to be configured by user and remains static source = ~/.config/hypr/userprefs.conf # initially empty, to be configured by user and remains static # Note: as userprefs.conf is sourced at the end, settings configured in this file will override the defaults source = ~/.config/hypr/nvidia.conf # auto sourced vars for nvidia Config File: /home/ben/.config/hypr/animations.conf: Read Succeeded # ▄▀█ █▄░█ █ █▀▄▀█ ▄▀█ ▀█▀ █ █▀█ █▄░█ # █▀█ █░▀█ █ █░▀░█ █▀█ ░█░ █ █▄█ █░▀█ # See https://wiki.hyprland.org/Configuring/Animations/ animations { enabled = yes bezier = wind, 0.05, 0.9, 0.1, 1.05 bezier = winIn, 0.1, 1.1, 0.1, 1.1 bezier = winOut, 0.3, -0.3, 0, 1 bezier = liner, 1, 1, 1, 1 animation = windows, 1, 6, wind, slide animation = windowsIn, 1, 6, winIn, slide animation = windowsOut, 1, 5, winOut, slide animation = windowsMove, 1, 5, wind, slide animation = border, 1, 1, liner animation = borderangle, 1, 30, liner, loop animation = fade, 1, 10, default animation = workspaces, 1, 5, wind } Config File: /home/ben/.config/hypr/keybindings.conf: Read Succeeded # █▄▀ █▀▀ █▄█ █▄▄ █ █▄░█ █▀▄ █ █▄░█ █▀▀ █▀ # █░█ ██▄ ░█░ █▄█ █ █░▀█ █▄▀ █ █░▀█ █▄█ ▄█ # See https://wiki.hyprland.org/Configuring/Keywords/ for more # Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more # Main modifier $mainMod = SUPER # windows key # assign apps $term = alacritty $editor = code --ozone-platform-hint=wayland --disable-gpu $file = dolphin $browser = firefox # Window/Session actions bind = $mainMod, Q, exec, $scrPath/dontkillsteam.sh # killactive, kill the window on focus bind = ALT, F4, exec, $scrPath/dontkillsteam.sh # killactive, kill the window on focus bind = $mainMod, delete, exit, # kill hyperland session bind = $mainMod, W, togglefloating, # toggle the window on focus to float bind = $mainMod, G, togglegroup, # toggle the window on focus to group (tab mode) bind = ALT, return, fullscreen, # toggle the window on focus to fullscreen bind = $mainMod, L, exec, swaylock # lock screen bind = $mainMod SHIFT, F, exec, $scrPath/windowpin.sh # toggle pin on focused window bind = $mainMod, backspace, exec, $scrPath/logoutlaunch.sh 1 # logout menu bind = $CONTROL, ESCAPE, exec, killall waybar || waybar # toggle waybar # Application shortcuts bind = $mainMod, T, exec, $term # open terminal bind = $mainMod, E, exec, $file # open file manager bind = $mainMod, C, exec, $editor # open vscode bind = $mainMod, F, exec, $browser # open browser bind = $CONTROL SHIFT, ESCAPE, exec, $scrPath/sysmonlaunch.sh # open htop/btop if installed or default to top (system monitor) # Rofi is toggled on/off if you repeat the key presses bind = $mainMod, A, exec, pkill -x rofi || $scrPath/rofilaunch.sh d # launch desktop applications bind = $mainMod, tab, exec, pkill -x rofi || $scrPath/rofilaunch.sh w # switch between desktop applications bind = $mainMod, R, exec, pkill -x rofi || $scrPath/rofilaunch.sh f # browse system files # Audio control bindl = , F10, exec, $scrPath/volumecontrol.sh -o m # toggle audio mute bindel = , F11, exec, $scrPath/volumecontrol.sh -o d # decrease volume bindel = , F12, exec, $scrPath/volumecontrol.sh -o i # increase volume bindl = , XF86AudioMute, exec, $scrPath/volumecontrol.sh -o m # toggle audio mute bindl = , XF86AudioMicMute, exec, $scrPath/volumecontrol.sh -i m # toggle microphone mute bindel = , XF86AudioLowerVolume, exec, $scrPath/volumecontrol.sh -o d # decrease volume bindel = , XF86AudioRaiseVolume, exec, $scrPath/volumecontrol.sh -o i # increase volume bindl = , XF86AudioPlay, exec, playerctl play-pause bindl = , XF86AudioPause, exec, playerctl play-pause bindl = , XF86AudioNext, exec, playerctl next bindl = , XF86AudioPrev, exec, playerctl previous # Brightness control bindel = , XF86MonBrightnessUp, exec, $scrPath/brightnesscontrol.sh i # increase brightness bindel = , XF86MonBrightnessDown, exec, $scrPath/brightnesscontrol.sh d # decrease brightness # Screenshot/Screencapture bind = $mainMod, P, exec, $scrPath/screenshot.sh s # drag to snip an area / click on a window to print it bind = $mainMod CTRL, P, exec, $scrPath/screenshot.sh sf # frozen screen, drag to snip an area / click on a window to print it bind = $mainMod ALT, P, exec, $scrPath/screenshot.sh m # print focused monitor bind = ,print, exec, $scrPath/screenshot.sh p # print all monitor outputs # Exec custom scripts bind = $mainMod ALT, G, exec, $scrPath/gamemode.sh # disable hypr effects for gamemode bind = $mainMod ALT, right, exec, $scrPath/swwwallpaper.sh -n # next wallpaper bind = $mainMod ALT, left, exec, $scrPath/swwwallpaper.sh -p # previous wallpaper bind = $mainMod ALT, up, exec, $scrPath/wbarconfgen.sh n # next waybar mode bind = $mainMod ALT, down, exec, $scrPath/wbarconfgen.sh p # previous waybar mode bind = $mainMod SHIFT, D, exec, $scrPath/wallbashtoggle.sh # toggle wallbash on/off bind = $mainMod SHIFT, T, exec, pkill -x rofi || $scrPath/themeselect.sh # theme select menu bind = $mainMod SHIFT, A, exec, pkill -x rofi || $scrPath/rofiselect.sh # rofi style select menu bind = $mainMod SHIFT, W, exec, pkill -x rofi || $scrPath/swwwallselect.sh # rofi wall select menu bind = $mainMod, V, exec, pkill -x rofi || $scrPath/cliphist.sh c # open Pasteboard in screen center bind = $mainMod, K, exec, $scrPath/keyboardswitch.sh # change keyboard layout # 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 = ALT, Tab, 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 # Switch workspaces relative to the active workspace with mainMod + CTRL + [←→] bind = $mainMod CTRL, right, workspace, r+1 bind = $mainMod CTRL, left, workspace, r-1 # move to the first empty workspace instantly with mainMod + CTRL + [↓] bind = $mainMod CTRL, down, workspace, empty # Resize windows binde = $mainMod SHIFT, right, resizeactive, 30 0 binde = $mainMod SHIFT, left, resizeactive, -30 0 binde = $mainMod SHIFT, up, resizeactive, 0 -30 binde = $mainMod SHIFT, down, resizeactive, 0 30 # 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 # Move active window to a relative workspace with mainMod + CTRL + ALT + [←→] bind = $mainMod CTRL ALT, right, movetoworkspace, r+1 bind = $mainMod CTRL ALT, left, movetoworkspace, r-1 # Move active window around current workspace with mainMod + SHIFT + CTRL [←→↑↓] bind = $mainMod SHIFT $CONTROL, left, movewindow, l bind = $mainMod SHIFT $CONTROL, right, movewindow, r bind = $mainMod SHIFT $CONTROL, up, movewindow, u bind = $mainMod SHIFT $CONTROL, down, movewindow, d # 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 bindm = Super, Z, movewindow bindm = Super, X, resizewindow # Special workspaces (scratchpad) bind = $mainMod ALT, S, movetoworkspacesilent, special bind = $mainMod, S, togglespecialworkspace, # Toggle Layout bind = $mainMod, J, togglesplit, # dwindle # Move window silently to workspace Super + Alt + [0-9] bind = $mainMod ALT, 1, movetoworkspacesilent, 1 bind = $mainMod ALT, 2, movetoworkspacesilent, 2 bind = $mainMod ALT, 3, movetoworkspacesilent, 3 bind = $mainMod ALT, 4, movetoworkspacesilent, 4 bind = $mainMod ALT, 5, movetoworkspacesilent, 5 bind = $mainMod ALT, 6, movetoworkspacesilent, 6 bind = $mainMod ALT, 7, movetoworkspacesilent, 7 bind = $mainMod ALT, 8, movetoworkspacesilent, 8 bind = $mainMod ALT, 9, movetoworkspacesilent, 9 bind = $mainMod ALT, 0, movetoworkspacesilent, 10 # Trigger when the switch is turning off, Might cause bugs. Recommend to use logind instead. #bindl= , switch:on:Lid Switch, exec, swaylock && systemctl suspend Config File: /home/ben/.config/hypr/windowrules.conf: Read Succeeded # █░█░█ █ █▄░█ █▀▄ █▀█ █░█░█   █▀█ █░█ █░░ █▀▀ █▀ # ▀▄▀▄▀ █ █░▀█ █▄▀ █▄█ ▀▄▀▄▀   █▀▄ █▄█ █▄▄ ██▄ ▄█ # See https://wiki.hyprland.org/Configuring/Window-Rules/ windowrulev2 = opacity 0.90 0.90,class:^(firefox)$ windowrulev2 = opacity 0.90 0.90,class:^(Brave-browser)$ windowrulev2 = opacity 0.80 0.80,class:^(code-oss)$ windowrulev2 = opacity 0.80 0.80,class:^(Code)$ windowrulev2 = opacity 0.80 0.80,class:^(code-url-handler)$ windowrulev2 = opacity 0.80 0.80,class:^(code-insiders-url-handler)$ windowrulev2 = opacity 0.80 0.80,class:^(kitty)$ windowrulev2 = opacity 0.80 0.80,class:^(org.kde.dolphin)$ windowrulev2 = opacity 0.80 0.80,class:^(org.kde.ark)$ windowrulev2 = opacity 0.80 0.80,class:^(nwg-look)$ windowrulev2 = opacity 0.80 0.80,class:^(qt5ct)$ windowrulev2 = opacity 0.80 0.80,class:^(qt6ct)$ windowrulev2 = opacity 0.80 0.80,class:^(kvantummanager)$ windowrulev2 = opacity 0.80 0.70,class:^(org.pulseaudio.pavucontrol)$ windowrulev2 = opacity 0.80 0.70,class:^(blueman-manager)$ windowrulev2 = opacity 0.80 0.70,class:^(nm-applet)$ windowrulev2 = opacity 0.80 0.70,class:^(nm-connection-editor)$ windowrulev2 = opacity 0.80 0.70,class:^(org.kde.polkit-kde-authentication-agent-1)$ windowrulev2 = opacity 0.80 0.70,class:^(polkit-gnome-authentication-agent-1)$ windowrulev2 = opacity 0.80 0.70,class:^(org.freedesktop.impl.portal.desktop.gtk)$ windowrulev2 = opacity 0.80 0.70,class:^(org.freedesktop.impl.portal.desktop.hyprland)$ windowrulev2 = opacity 0.70 0.70,class:^([Ss]team)$ windowrulev2 = opacity 0.70 0.70,class:^(steamwebhelper)$ windowrulev2 = opacity 0.70 0.70,class:^(Spotify)$ windowrulev2 = opacity 0.70 0.70,initialTitle:^(Spotify Free)$ windowrulev2 = opacity 0.90 0.90,class:^(com.github.rafostar.Clapper)$ # Clapper-Gtk windowrulev2 = opacity 0.80 0.80,class:^(com.github.tchx84.Flatseal)$ # Flatseal-Gtk windowrulev2 = opacity 0.80 0.80,class:^(hu.kramo.Cartridges)$ # Cartridges-Gtk windowrulev2 = opacity 0.80 0.80,class:^(com.obsproject.Studio)$ # Obs-Qt windowrulev2 = opacity 0.80 0.80,class:^(gnome-boxes)$ # Boxes-Gtk windowrulev2 = opacity 0.80 0.80,class:^(discord)$ # Discord-Electron windowrulev2 = opacity 0.80 0.80,class:^(WebCord)$ # WebCord-Electron windowrulev2 = opacity 0.80 0.80,class:^(ArmCord)$ # ArmCord-Electron windowrulev2 = opacity 0.80 0.80,class:^(app.drey.Warp)$ # Warp-Gtk windowrulev2 = opacity 0.80 0.80,class:^(net.davidotek.pupgui2)$ # ProtonUp-Qt windowrulev2 = opacity 0.80 0.80,class:^(yad)$ # Protontricks-Gtk windowrulev2 = opacity 0.80 0.80,class:^(Signal)$ # Signal-Gtk windowrulev2 = opacity 0.80 0.80,class:^(io.github.alainm23.planify)$ # planify-Gtk windowrulev2 = opacity 0.80 0.80,class:^(io.gitlab.theevilskeleton.Upscaler)$ # Upscaler-Gtk windowrulev2 = opacity 0.80 0.80,class:^(com.github.unrud.VideoDownloader)$ # VideoDownloader-Gtk windowrulev2 = opacity 0.80 0.80,class:^(io.gitlab.adhami3310.Impression)$ # Impression-Gtk windowrulev2 = opacity 0.80 0.80,class:^(io.missioncenter.MissionCenter)$ # MissionCenter-Gtk windowrulev2 = opacity 0.80 0.80,class:^(io.github.flattool.Warehouse)$ # Warehouse-Gtk windowrulev2 = float,class:^(org.kde.dolphin)$,title:^(Progress Dialog — Dolphin)$ windowrulev2 = float,class:^(org.kde.dolphin)$,title:^(Copying — Dolphin)$ windowrulev2 = float,title:^(About Mozilla Firefox)$ windowrulev2 = float,class:^(firefox)$,title:^(Picture-in-Picture)$ windowrulev2 = float,class:^(firefox)$,title:^(Library)$ windowrulev2 = float,class:^(kitty)$,title:^(top)$ windowrulev2 = float,class:^(kitty)$,title:^(btop)$ windowrulev2 = float,class:^(kitty)$,title:^(htop)$ windowrulev2 = float,class:^(vlc)$ windowrulev2 = float,class:^(kvantummanager)$ windowrulev2 = float,class:^(qt5ct)$ windowrulev2 = float,class:^(qt6ct)$ windowrulev2 = float,class:^(nwg-look)$ windowrulev2 = float,class:^(org.kde.ark)$ windowrulev2 = float,class:^(org.pulseaudio.pavucontrol)$ windowrulev2 = float,class:^(blueman-manager)$ windowrulev2 = float,class:^(nm-applet)$ windowrulev2 = float,class:^(nm-connection-editor)$ windowrulev2 = float,class:^(org.kde.polkit-kde-authentication-agent-1)$ windowrulev2 = float,class:^(Signal)$ # Signal-Gtk windowrulev2 = float,class:^(com.github.rafostar.Clapper)$ # Clapper-Gtk windowrulev2 = float,class:^(app.drey.Warp)$ # Warp-Gtk windowrulev2 = float,class:^(net.davidotek.pupgui2)$ # ProtonUp-Qt windowrulev2 = float,class:^(yad)$ # Protontricks-Gtk windowrulev2 = float,class:^(eog)$ # Imageviewer-Gtk windowrulev2 = float,class:^(io.github.alainm23.planify)$ # planify-Gtk windowrulev2 = float,class:^(io.gitlab.theevilskeleton.Upscaler)$ # Upscaler-Gtk windowrulev2 = float,class:^(com.github.unrud.VideoDownloader)$ # VideoDownloader-Gkk windowrulev2 = float,class:^(io.gitlab.adhami3310.Impression)$ # Impression-Gtk windowrulev2 = float,class:^(io.missioncenter.MissionCenter)$ # MissionCenter-Gtk # █░░ ▄▀█ █▄█ █▀▀ █▀█   █▀█ █░█ █░░ █▀▀ █▀ # █▄▄ █▀█ ░█░ ██▄ █▀▄   █▀▄ █▄█ █▄▄ ██▄ ▄█ layerrule = blur,rofi layerrule = ignorezero,rofi layerrule = blur,notifications layerrule = ignorezero,notifications layerrule = blur,swaync-notification-window layerrule = ignorezero,swaync-notification-window layerrule = blur,swaync-control-center layerrule = ignorezero,swaync-control-center layerrule = blur,logout_dialog Config File: /home/ben/.config/hypr/themes/common.conf: Read Succeeded # █▀▀ █░█ █▀█ █▀ █▀█ █▀█ # █▄▄ █▄█ █▀▄ ▄█ █▄█ █▀▄ exec = hyprctl setcursor Bibata-Modern-Ice 20 exec = gsettings set org.gnome.desktop.interface cursor-theme 'Bibata-Modern-Ice' exec = gsettings set org.gnome.desktop.interface cursor-size 20 # █▀▀ █▀█ █▄░█ ▀█▀ # █▀░ █▄█ █░▀█ ░█░ exec = gsettings set org.gnome.desktop.interface font-name 'Cantarell 10' exec = gsettings set org.gnome.desktop.interface document-font-name 'Cantarell 10' exec = gsettings set org.gnome.desktop.interface monospace-font-name 'CaskaydiaCove Nerd Font Mono 9' exec = gsettings set org.gnome.desktop.interface font-antialiasing 'rgba' exec = gsettings set org.gnome.desktop.interface font-hinting 'full' # █▀ █▀█ █▀▀ █▀▀ █ ▄▀█ █░░ # ▄█ █▀▀ ██▄ █▄▄ █ █▀█ █▄▄ decoration { dim_special = 0.3 blur { special = true } } Config File: /home/ben/.config/hypr/themes/theme.conf: Read Succeeded exec = gsettings set org.gnome.desktop.interface icon-theme 'Tela-circle-dracula' exec = gsettings set org.gnome.desktop.interface gtk-theme 'Catppuccin-Mocha' exec = gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark' general { gaps_in = 3 gaps_out = 8 border_size = 2 col.active_border = rgba(ca9ee6ff) rgba(f2d5cfff) 45deg col.inactive_border = rgba(b4befecc) rgba(6c7086cc) 45deg layout = dwindle resize_on_border = true } group { col.border_active = rgba(ca9ee6ff) rgba(f2d5cfff) 45deg col.border_inactive = rgba(b4befecc) rgba(6c7086cc) 45deg col.border_locked_active = rgba(ca9ee6ff) rgba(f2d5cfff) 45deg col.border_locked_inactive = rgba(b4befecc) rgba(6c7086cc) 45deg } decoration { rounding = 10 drop_shadow = false blur { enabled = yes size = 6 passes = 3 new_optimizations = on ignore_opacity = on xray = false } } layerrule = blur,waybar Config File: /home/ben/.config/hypr/themes/colors.conf: Read Succeeded Config File: /home/ben/.config/hypr/monitors.conf: Read Succeeded # █▀▄▀█ █▀█ █▄░█ █ ▀█▀ █▀█ █▀█ █▀ # █░▀░█ █▄█ █░▀█ █ ░█░ █▄█ █▀▄ ▄█ # Set your monitor configuration here # See https://wiki.hyprland.org/Configuring/Monitors/ Config File: /home/ben/.config/hypr/userprefs.conf: Read Succeeded #█░█ █▀ █▀▀ █▀█   █▀█ █▀█ █▀▀ █▀▀ █▀ #█▄█ ▄█ ██▄ █▀▄   █▀▀ █▀▄ ██▄ █▀░ ▄█ # Set your personal hyprland configuration here # for sample file, please refer https://github.com/prasanthrangan/hyprdots/blob/main/Configs/.config/hypr/userprefs.t2 # exec-once = nextcloud # start nextcloud client $term = alacritty $editor = $term nvim $browser = firefox $dataDir = $HOME/.local/share env = BROWSER,$browser env = EDITOR,nvim env = GNUPGHOME,$HOME/.config/gnupg env = PASSWORD_STORE_DIR,$dataDir/pass env = QT_QPA_PLATFORM,xcb # Fixes Jellyfin env = VISUAL,nvim input { repeat_delay = 300 repeat_rate = 50 } misc { disable_hyprland_logo = true } monitor = DP-1, 2560x1440@144, 0x0, 1 monitor = DP-3, 2560x1440@144, 2560x0, 1 bind = $mainMod SHIFT, P, exec, rofi-pass windowrule=float,^(gnome-calculator)$ debug { disable_logs = false } Config File: /home/ben/.config/hypr/nvidia.conf: Read Succeeded # █▄░█ █░█ █ █▀▄ █ ▄▀█ # █░▀█ ▀▄▀ █ █▄▀ █ █▀█ # See https://wiki.hyprland.org/Nvidia/ for more #env = GBM_BACKEND,nvidia-drm env = LIBVA_DRIVER_NAME,nvidia env = __GLX_VENDOR_LIBRARY_NAME,nvidia env = __GL_VRR_ALLOWED,1 env = WLR_NO_HARDWARE_CURSORS,1 env = WLR_DRM_NO_ATOMIC,1 ======Config-End======== ```

Description

This is more of a PSA for those using the Nvidia beta drivers 560 in Hyprland and experiencing a hard freeze shortly after the wayland compositor starts.

You should notice these errors in journalctl:

Aug 14 14:42:55 **** kernel: [drm:nv_drm_atomic_apply_modeset_config.isra.0 [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000900] Failed to initialize semaphore for plane fence
Aug 14 14:42:55 **** kernel: [drm:nv_drm_atomic_commit [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000900] Failed to apply atomic modeset.  Error code: -11

I've found that uninstalling the beta drivers and installing the main nvidia-dkms package, currently version 555.58.02-1, resolves the issue.

Hope this helps anyone else experiencing this issue.

How to reproduce

Have Nvidia beta drivers installed, version 560, and start Hyprland.

Crash reports, logs, images, videos

No response

gksudolol commented 2 months ago

Can't reproduce on 560.31.02 with hyprland/aq from git. Can you try git?

romanstingler commented 2 months ago

which version of egl-wayland do you have? arch had 1.14 reverted to 1.13, updated to 1.15 reverted to 1.13

https://gitlab.archlinux.org/archlinux/packaging/packages/egl-wayland/-/commits/main

https://gitlab.archlinux.org/archlinux/packaging/packages/egl-wayland/-/issues/?sort=created_date&state=closed&first_page_size=20

1.13 and 1.14 are very buggy especially with 560

vaxerski commented 2 months ago

nvidia issue with 560 drivers being beta quality

try disabling explicit kms in hl config

Benjman commented 2 months ago

I have egl-wayland-git version 1.1.15.r1.gf30cb0e-1.

creep1ng commented 2 months ago

Had this problem, and solved updating egl-wayland-git to the last version (mentioned by @Benjman)

dfd commented 2 months ago

I solved freezing with 560 drivers and two monitors by adding:

render {
    explicit_sync = 0
}

to the hyprland config.

elronat commented 2 months ago

I solved freezing with 560 drivers and two monitors by adding:

render {
    explicit_sync = 0
}

to the hyprland config.

That worked for me as well! thx!