[Rd] Wayland Display Support in R Plot

Simon Urbanek @|mon@urb@nek @end|ng |rom R-project@org
Sun Oct 29 21:20:07 CET 2023



> On 30/10/2023, at 8:38 AM, Dirk Eddelbuettel <edd using debian.org> wrote:
> 
> 
> On 30 October 2023 at 07:54, Paul Murrell wrote:
> | I am unaware of any Wayland display support.
> | 
> | One useful way forward would be an R package that provides such a device 
> | (along the lines of 'Cairo', 'tikzDevice', et al)
> 
> As I understand it, it is a protocol, and not a device.
> 

Well, X11 is a protocol, not a device, either.

Wayland is a lot worse, since it doesn't really do much at all - the clients are fully responsible for drawing (doesn't even support remote connections).

Given that Wayland is essentially a "dumb" framebuffer, probably the easiest way would be to take Cairo and add a libwayland back-end. Cairo is already modular so it's relatively straight-forward to add a new back-end to it (I'd probably just copy xlib-backend.c and replace X11 calls with libwayland calls since the low-level design is the same).

However, that is limited only to devices, so you would still run R code in the shell (or other GUI that may or may not by Wayland-based). Given that Wayland is so minimal, you'd need some GUI library for anything beyond that - so you may was well just run a Wayland-based browser and be done with it saving you all the bother (oh, right, that's called RStudio ;)).

One package that may be worth adding Wayland backend to is rgl so you get OpenGL on Wayland - I'd simply re-write it to use GLFW so it works across all platforms and including Wayland.

Cheers,
Simon



> Several Linux distributions have long defaulted to it, so we already should
> have thousands of users. While 'not X11' it provides a compatibility layer
> and should be seamless.
> 
> I think I needed to fall back to X11 for a particular applications (likely
> OBS) so my session tells me (under Settings -> About -> Windowing System) I
> am still running X11. I'll check again once I upgrade from Ubuntu 23.04 to
> Ubuntu 23.10
> 
> See https://en.wikipedia.org/wiki/Wayland_(protocol) for more.
> 
> Dirk
> 
> -- 
> dirk.eddelbuettel.com | @eddelbuettel | edd using debian.org
> 
> ______________________________________________
> R-devel using r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel
> 



More information about the R-devel mailing list