Ubuntu Frame snap interfaces

This document provides a reference for the snap interfaces available for Ubuntu Frame.


The current snap interface connections can be checked by issuing:

$ snap connections ubuntu-frame                     
Interface                 Plug                                Slot                                  Notes
content                   -                                   ubuntu-frame:ubuntu-frame-diagnostic  -
content[graphics-core22]  ubuntu-frame:graphics-core22        mesa-core22:graphics-core22           -
hardware-observe          ubuntu-frame:hardware-observe       :hardware-observe                     -
login-session-control     ubuntu-frame:login-session-control  -                                     -
network-bind              ubuntu-frame:network-bind           :network-bind                         -
opengl                    ubuntu-frame:opengl                 :opengl                               -
wayland                   -                                   ubuntu-frame:wayland                  -
x11                       ubuntu-frame:x11                    :x11                                  -

The above is the default set of connections upon installation. It serves the default use case of Frame running as a system service. You can change the connections through a gadget snap or manually:

sudo snap connect ubuntu-frame:login-session-control

The wayland connection will be automatic if Frame is the only provider of the slot. On Classic systems this slot is provided by snapd, so upon installing a snap that has a plugs: [wayland], a manual connection (to any wayland slot). The same applies if you have multiple snaps that have slots: [wayland] installed on a Core system:

sudo snap connect <snap>:wayland
# or, on Core
sudo snap connect <snap>:wayland <compositor>:wayland

The interface connections serve the following purposes:

Interface Purpose
ubuntu-frame-diagnostic The diagnostic screen feature
graphics-core22 GPU userspace drivers
hardware-observe Avoiding excessive logging from libinput
login-session-control Running as an unprivileged user
network-bind Operate as a X11 server
opengl Access the GPU for hardware acceleration
wayland Act as a Wayland compositor
x11 Run nested on a X11 session