Smart management for smart kiosks
Tam Hanna takes a look at how Ubuntu Frame harnesses Wayland’s strengths to make smart display management more comfortable.
TUTORIALS Smart kiosks
UBUNTU FRAME
Credit: https://mir-server.io/ubuntu-frame
OUR EXPERT
Tam Hanna is an electrical engineer and accidental co-owner of a coffee shop. Smart displays can and do drive sales, but can be a pain to manage.
One of the biggest benefits of the flexible, but sometimes O cumbersome, display architecture of Linux-based operating systems is that the graphical application and the service responsible for the display and rendering of the graphics are considered two separate entities. In theory, an X server and an X client can exist on different machines, which can even be connected via a wide-area network, such as a VPN.
While the original reasons for this architecture – think about the limited computer power of early UNIX systems – no longer apply, the technical architecture, by and large, is still there.
For reasons of simplicity, we are placing these experiments firmly in the Canonical ecosystem. While one can like or dislike Canonical, its products come from one source and tend to work well in most cases.
Of course, this is not the only approach, so if this tutorial inspires you to use a different method, more power to you. Please email the author via tamhan@ tamoggemon.com and let us know how you fared.
Remote architecture, in theory
The following steps see us use the Wayland protocol instead of the tried and tested X11. While it might not have such a long legacy, it is optimised for animation-heavy display situations and tends to provide better performance. In particular, we’re using Ubuntu Frame – the product’s architecture can be seen in the screenshot (above).
When combined with the defined interface functionality of Snap packages, the display server is secured from unauthorised access. This makes attacks more difficult, thereby preventing random hackers or political groups from exploiting your smart-display technology for their own nefarious purposes.
The mention of the Snap package format leads to the use of Ubuntu Core. While the Frame server is also available on other Unixoid operating systems, optimum security (and optimal performance) occurs on using Ubuntu Core. Given that Canonical provides a relatively generous free allowance for developers interested in Ubuntu Core, very little speaks against taking the product for a spin.
How Canonical sees your Frame server running in a kiosk mode.
Canonical supports a wide range of target devices. The Raspberry Pi 3, used here, is just one candidate. More information can be found at https://ubuntu.com/core/docs/supported-platforms.