Some updates:
- The Snap Store team has no granted auto-connect of the
cupsslot of the CUPS Snap. -
No special permission is needed for using the
cups-socket-directoryattribute. - For the CUPS Snap auto-installation to work, there must be a version of the CUPS Snap in the stable channel of the Snap Store. This I have done now.
- For the CUPS Snap we will later on look into adding appropriate functionality to snapd that it is simply done if a Snap is installed which plugs
cups. For the time being there is a workaround which does not require any change in thesnapcraft.yamlof the CUPS Snap, it is enough to add thedefault-provider: cupsto thesnapcraft.yamlfiles of the client Snaps which plugcupsusing a placeholder content interface as shown below. - Later on
default-providersupport should be added directly to thecupsinterface. @mvo, could you work on this with me?
Here is what has to be added to client application Snaps which plug cups in order to auto-install the CUPS Snap (if it is not already installed):
plugs:
foo-install-cups:
interface: content
content: foo
target: $SNAP_DATA/foo
default-provider: cups
What is mainly still missing is:
- snapd 2.55 release
-
/var/snapdirectory to be created in the base Snaps - Add
cups-socket-directory: $SNAP_COMMON/runandassumes: [snapd2.55]tosnapcraft.yamlof CUPS Snap (required snapd 2.55 release)
TODO list above updated.