Classic confinement request: frame-it

This is a collection of scripts for working with Ubuntu Frame

One of the things these scripts does it launch arbitrary applications as a client of Ubuntu Frame. That requires classic confinement.

I think this fits “running arbitrary command (esp if user-configurable such as a developer tool to organize dev environments)”. That it, it is for setting up a runtime environment when launching applications (so that they will connect to Ubuntu Frame)

Hi @alan_g - would this snap be able to make use of the desktop-launch interface instead for this purpose?

Also, can you please provide some more details regarding frame-it - under which known category for classic confinement do you believe it falls under - see Process for reviewing classic confinement snaps

Hi @alexmurray, thanks for the fast response.

The desktop-launch interface is too limited in a couple of ways:

  1. It does not allow passing environment variables. In particular, WAYLAND_DISPLAY, but also related ones such as SDL_VIDEODRIVER & GDK_BACKEND (that capability was dropped from my original proposal for the interface); and,
  2. It can only launch snaps that install a .desktop file in /var/lib/snapd/desktop/applications/

In order to launch arbitrary applications (including locally built ones) and connect them to ubuntu-frame (and not a host Wayland session) both are problematic.

The nearest thing I can find is “tools for local, non-root user driven configuration of/switching to development workspaces/environments”.

These scripts are envisaged as tools for developing, packaging and demonstrating applications working with Ubuntu Frame.

A simple example would be:

frame-it gnome-calendar

Which starts Ubuntu Frame as window on the user’s desktop and runs gnome-calendar as a client of Ubuntu Frame (and not the user session’s compositor, typically Mutter). This can all be done by a non-root user, but having it wrapped as a script is a convenience.

Thanks for the updated info @alan_g - based on this, frame-it's requirements for classic confinement are understood and it fits within the supported category of tools for local, non-root user driven configuration of/switching to development workspaces/environments. I have vetted the publisher. This is now live.