Laggy cursor expirience

Hyprland version
Hyprland 0.50.1 built from branch  at commit 4e242d086e20b32951fdc0ebcbfb4d41b5be8dcc  ([gha] Nix: update inputs).
Date: Sat Jul 19 21:37:06 2025
Tag: v0.50.1, commits: 6291
built against:
 aquamarine 0.9.2
 hyprlang 0.6.3
 hyprutils 0.8.1
 hyprcursor 0.1.12
 hyprgraphics 0.1.5


no flags were set

When I launch several applications, or a game, for example, I go to the desktop when moving the cursor it lags look like low fps cursor, But my pc resources are not fully load.

i7-4790 hd graphics 4600 (Using only Integrated Graphics)

Just because you lag doesn’t mean all things will be 100%. You can be lagging due to IO, GPU, CPU, OOMing, many things.

It seems like you’re just overloading your very old laptop.

1 Like

The system is not overloaded, there are still resources available. my desktop pc is bad i know, but When running heavy applications/games on the Windows operating system and also tested on gnome, Xfce, environments, it does not affect the cursor rendering, etc. I am not an expert, I do not blame hyprland for this and i dont not say how it should work, but I am trying to get any help or a way to fix it, I am still here because I want to use (arch)linux with hyprland, I am ready to provide any information/logs. I would be grateful for any help

  • example: i m running a game or a few apps, on workspace 1, and i m going to workspace 2 my cursor is moving smoothly but whole hyprland is lagging, сursor lags returns when changing its type, selecting text, etc. its happening with (no_hardware_cursors = false), when is true, cursor just also lagging but little bit more stable. I asked for help on the Arch Linux Discord server, asked AI, I looked at the list of variables on the hyprland wiki, looked at forums, but nothing helped me. system should not depend only on powerful pc resources.
Details
Hyprland version

I also decided to use the latest version from the repository, thinking that the situation might improve. (I executing hyprland from uwsm as described in the arch wiki)

Hyprland 0.53.0 built from branch main at commit 9ea6d0e15fddccf321c035e83b007a55d6829dd9 clean (desktop/popup: only remove reserved for window popups).
Date: Thu Feb 19 18:41:17 2026
Tag: v0.53.0-146-g9ea6d0e1, commits: 6902

Libraries:
Hyprgraphics: built against 0.5.0, system has 0.5.0
Hyprutils: built against 0.11.0, system has 0.11.0
Hyprcursor: built against 0.1.13, system has 0.1.13
Hyprlang: built against 0.6.8, system has 0.6.8
Aquamarine: built against 0.10.0, system has 0.10.0

Version ABI string: 9ea6d0e15fddccf321c035e83b007a55d6829dd9_aq_0.10_hu_0.11_hg_0.5_hc_0.1_hlg_0.6
no flags were set
I seem to have the correct drivers installed, I don’t see any errors.
[Nermh@archlinux ~]$ vainfo
Trying display: wayland
vainfo: VA-API version: 1.22 (libva 2.22.0)
vainfo: Driver version: Intel i965 driver for Intel(R) Haswell Desktop - 2.4.5
vainfo: Supported profile and entrypoints
      VAProfileMPEG2Simple            :	VAEntrypointVLD
      VAProfileMPEG2Simple            :	VAEntrypointEncSlice
      VAProfileMPEG2Main              :	VAEntrypointVLD
      VAProfileMPEG2Main              :	VAEntrypointEncSlice
      VAProfileH264ConstrainedBaseline:	VAEntrypointVLD
      VAProfileH264ConstrainedBaseline:	VAEntrypointEncSlice
      VAProfileH264Main               :	VAEntrypointVLD
      VAProfileH264Main               :	VAEntrypointEncSlice
      VAProfileH264High               :	VAEntrypointVLD
      VAProfileH264High               :	VAEntrypointEncSlice
      VAProfileH264MultiviewHigh      :	VAEntrypointVLD
      VAProfileH264MultiviewHigh      :	VAEntrypointEncSlice
      VAProfileH264StereoHigh         :	VAEntrypointVLD
      VAProfileH264StereoHigh         :	VAEntrypointEncSlice
      VAProfileVC1Simple              :	VAEntrypointVLD
      VAProfileVC1Main                :	VAEntrypointVLD
      VAProfileVC1Advanced            :	VAEntrypointVLD
      VAProfileNone                   :	VAEntrypointVideoProc
      VAProfileJPEGBaseline           :	VAEntrypointVLD
[Nermh@archlinux ~]$ pacman -Qe | grep -Ei 'mesa|intel'
intel-gpu-tools 2.3-2
intel-ucode 20260210-1
libva-intel-driver-irql 2.4.5-1
libva-intel-driver-irql-debug 2.4.5-1
mesa 1:25.3.5-1
mesa-utils 9.0.0-7
vulkan-intel 1:25.3.5-1
[Nermh@archlinux ~]$ glxinfo | grep "OpenGL ES"
OpenGL ES profile version string: OpenGL ES 3.2 Mesa 25.3.5-arch1.1
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
OpenGL ES profile extensions:
Linux kernel Version
[Nermh@archlinux ~]$ uname -r
6.18.9-zen1-2-zen
Top
top - 15:28:00 up 20 min,  1 user,  load average: 1.13, 1.45, 1.01
Tasks: 214 total, 1 running, 212 sleep, 1 d-sleep, 0 stopped, 0 zombie
%Cpu(s):  5.5 us,  0.5 sy,  0.0 ni, 91.5 id,  2.3 wa,  0.2 hi,  0.0 si,  0.0 st 
MiB Mem :  15892.2 total,  11329.4 free,   2443.0 used,   2965.3 buff/cache     
MiB Swap:      0.0 total,      0.0 free,      0.0 used.  13449.2 avail Mem 

    PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND                            
   1853 Nermh     12  -8 1415.0g 558040 172780 S  38.9   3.4   0:35.96 Discord                            
    750 Nermh     20   0 1010356 111264  73044 S   4.0   0.7   1:32.07 Hyprland                           
   1798 Nermh     12  -8   32.7g 243280 193204 S   1.3   1.5   0:05.68 Discord                            
   3077 Nermh     20   0  504796 198704 157692 S   0.7   1.2   0:00.28 kitty                              
     75 root      20   0       0      0      0 S   0.3   0.0   0:00.03 kcompactd0                         
     91 root       0 -20       0      0      0 I   0.3   0.0   0:00.26 kworker/7:1H-i915_cleanup          
    119 root      20   0       0      0      0 I   0.3   0.0   0:01.76 kworker/5:1-i915-unordered         
    124 root       0 -20       0      0      0 D   0.3   0.0   0:05.98 kworker/u33:0+i915_flip            
   1318 Nermh      9 -11  107092  16992  10156 S   0.3   0.1   0:05.83 pipewire                           
   1558 Nermh      9 -11  100916  12464   9336 S   0.3   0.1   0:00.44 pipewire-pulse                     
      1 root      20   0   22756  13484   9740 S   0.0   0.1   0:00.74 systemd                            
      2 root      20   0       0      0      0 S   0.0   0.0   0:00.00 kthreadd                           
      3 root      20   0       0      0      0 S   0.0   0.0   0:00.00 pool_workqueue_release             
      4 root       0 -20       0      0      0 I   0.0   0.0   0:00.00 kworker/R-rcu_gp                   
      5 root       0 -20       0      0      0 I   0.0   0.0   0:00.00 kworker/R-sync_wq                  
      6 root       0 -20       0      0      0 I   0.0   0.0   0:00.00 kworker/R-kvfree_rcu_reclaim       
      7 root       0 -20       0      0      0 I   0.0   0.0   0:00.00 kworker/R-slub_flushwq             
      8 root       0 -20       0      0      0 I   0.0   0.0   0:00.00 kworker/R-netns                    
      9 root      20   0       0      0      0 I   0.0   0.0   0:00.24 kworker/0:0-events                 
     10 root      20   0       0      0      0 I   0.0   0.0   0:00.00 kworker/0:1-rcu_gp                 
     11 root       0 -20       0      0      0 I   0.0   0.0   0:00.00 kworker/0:0H-events_highpri        
     12 root      20   0       0      0      0 I   0.0   0.0   0:00.22 kworker/u32:0-events_power_effici+ 
     13 root       0 -20       0      0      0 I   0.0   0.0   0:00.00 kworker/R-mm_percpu_wq             
     15 root      20   0       0      0      0 S   0.0   0.0   0:00.04 ksoftirqd/0                        
     16 root      -2   0       0      0      0 I   0.0   0.0   0:00.50 rcu_preempt                        
     17 root      -2   0       0      0      0 S   0.0   0.0   0:00.00 rcub/0                             
     18 root      20   0       0      0      0 S   0.0   0.0   0:00.00 rcu_exp_par_gp_kthread_worker/0    
     19 root      20   0       0      0      0 S   0.0   0.0   0:00.00 rcu_exp_gp_kthread_worker          
     20 root      rt   0       0      0      0 S   0.0   0.0   0:00.00 migration/0                        
     21 root     -51   0       0      0      0 S   0.0   0.0   0:00.00 idle_inject/0                      
     22 root      20   0       0      0      0 S   0.0   0.0   0:00.00 cpuhp/0                            
     23 root      20   0       0      0      0 S   0.0   0.0   0:00.00 cpuhp/1                            
     24 root     -51   0       0      0      0 S   0.0   0.0   0:00.00 idle_inject/1                      
     25 root      rt   0       0      0      0 S   0.0   0.0   0:00.19 migration/1                        
     26 root      20   0       0      0      0 S   0.0   0.0   0:00.01 ksoftirqd/1                        
     27 root      20   0       0      0      0 I   0.0   0.0   0:00.21 kworker/1:0-i915-unordered         
     28 root       0 -20       0      0      0 I   0.0   0.0   0:00.00 kworker/1:0H-events_highpri        
     29 root      20   0       0      0      0 S   0.0   0.0   0:00.00 cpuhp/2                            
     30 root     -51   0       0      0      0 S   0.0   0.0   0:00.00 idle_inject/2                      
     31 root      rt   0       0      0      0 S   0.0   0.0   0:00.20 migration/2                        
     32 root      20   0       0      0      0 S   0.0   0.0   0:00.00 ksoftirqd/2                        
     33 root      20   0       0      0      0 I   0.0   0.0   0:00.18 kworker/2:0-i915-unordered         
     34 root       0 -20       0      0      0 I   0.0   0.0   0:00.00 kworker/2:0H-events_highpri        
     35 root      20   0       0      0      0 S   0.0   0.0   0:00.00 cpuhp/3                            
     36 root     -51   0       0      0      0 S   0.0   0.0   0:00.00 idle_inject/3                      
     37 root      rt   0       0      0      0 S   0.0   0.0   0:00.20 migration/3                        
     38 root      20   0       0      0      0 S   0.0   0.0   0:00.00 ksoftirqd/3

I can’t afford to upgrade pc resources at the moment. I came back here in a little despair again. ;/