Search code examples
pythonembeddedwxpythonembedded-linuxkiosk-mode

Run only one Python app with a GUI on an embedded computer: is a X server and a window manager really required?


I need to boot as fast as possible an embedded Linux computer (let's say < 5 seconds), and start a unique Python application (no other application will be run by the final user on this machine). The goal is something along the lines of my previous open-source project SamplerBox.

The Python app has a GUI using wxPython (i.e. wxWidgets).

Do I need a X server for this? Or could Python directly start in graphical mode, without the need of an X server?

Also, do I need a window manager, or, since only one application will use the screen, no window manager is needed?

This seems possible, as depicted here (impressive boot in 1 second from POWER BUTTON press to the GUI app!) but I wonder if it really needs to start a X server and a window manager.


Solution

  • Yes, you need a X server to run the application, but you can do it without a window manager if that's the only application that will be running.

    Just install the xorg-xinit package and create a .xinitrc file in the home directory like this:

    exec mycommand
    

    then run startx.