Run app under X without wayland?

I have a graphical app that runs on Ubuntu Desktop 24. The app does not work correctly with wayland, so I disable wayland and run X instead. To do this I add a config file /etc/gdm3/custom.conf that has WaylandEnable=false.

I now want to convert this app to an Ubuntu Core 24 snap. Is this possible?

Try this:

https://canonical.com/mir/docs/packaging-an-x11-application-as-an-iot-gui

https://canonical-ubuntu-frame-documentation.readthedocs-hosted.com/how-to/packaging-iot-gui/packaging-an-application/

1 Like

I tried those and used this as a go-by for my app iot-example-graphical-snap/snap/snapcraft.yaml at 24/Qt6-example · canonical/iot-example-graphical-snap · GitHub

But that uses wayland. Is there a way to completely avoid using wayland, and instead use X?

Did you follow the links shared above? They cover packaging an X11 app for use with Ubuntu Frame (which is the recommended approach).

If you don’t want to use the graphics stack provided you’ll need to develop your own. I imagine it would be possible to package an X11 server, window manager, etc with your application

Yes, I used the links shared above as a starting point for my app, but all the examples, even the X11 ones, ultimately use wayland, do they not?

They do use a fullscreen X11 session (with all its bells and whistles) on top of wayland which has to handle the driver access, but the X11 session should have no limitations/differences compared to a native one in this setup … what are the issues you are hitting with it ?