Improving cursor rendering on Wayland

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • Hyprland

    Hyprland is a highly customizable dynamic tiling Wayland compositor that doesn't sacrifice on its looks.

  • I have Hyprland a try some weeks/months ago, and seemingly it had a video memory leak where after some hours of usage, it ended up taking more than 5GB of VRAM, with no signs of slowing down.

    I found one issue (https://github.com/hyprwm/Hyprland/issues/1504) mentioning something similar, but it was closed and I was still experiencing the same issue, so not sure what's going on.

    Gnome3 doesn't manifest the same issue, so worth checking out if it happens to you if you're curious about moving from Gnome to Hyprland.

  • hyprcursor

    The hyprland cursor format, library and utilities.

  • The "Making themes" doc has examples.

    https://github.com/hyprwm/hyprcursor/blob/main/docs/MAKING_T...

    Looking at the full description of the format, it includes the ability to use nested config sections with { ... }, which has some obvious benefits for some use-cases. But for the complexity needed for defining cursors, I don't see the benefit of `.hl` over fdo `.desktop` configs. In fact, it looks like you could parse the hyprcursor `.hl` config files with a `.desktop` parser? Which might be more palatable for cross-desktop support?

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • ydotool

    Generic command-line automation tool (no X!)

  • Wayland provides little by design, so this is quite typical. For example:

    Screensharing is handled by pipewire [0], changing keyboard layouts aren't defined [1] by wayland, and generally anything Wayland devs think would 'corrupt' their protocol.

    They leave most things to the compositor to implement, which leads to significant fragmentation as every compositor implements it differently.

    Long gone are the days of xset and xdotool working across nearly every distro due to a common base, now the best you'll get is running a daemon as root to directly access `/dev/uinput` [2] or implementing each compositors accessibility settings (if they have them) as a workaround.

    [0] https://superuser.com/questions/1221333/screensharing-under-...

    [1] https://unix.stackexchange.com/questions/292868/how-to-custo...

    [2] https://github.com/ReimuNotMoe/ydotool

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts