This category is for handling requests for privileged interfaces, formerly known as auto-connections. The process is documented in Process for aliases, auto-connections and tracks.
To make the review of your request easier, please use the following template to provide all the required details and also include any other information that may be relevant.
name: wissance-zerial
description: GUI utility to interact with hardware via serial (COM or USB-COM)
snapcraft: https://github.com/Wissance/Zerial/blob/master/snapcraft.yaml
upstream: https://github.com/Wissance/Zerial
upstream-relation: I am the upstream developer and publisher
plugs:
wissance-zerial-serial-port:
interface: serial-port
request-type: auto-connection
reasoning: Without auto-connection, users are forced to run manual terminal commands (e.g., `sudo snap connect <snap>:<plug-name>`) before they can use the app. This creates a poor user experience and is a significant barrier for non-technical users.
...
slots:
wissance-zerial-serial-port:
interface: serial-port
request-type: auto-connection
reasoning: Without auto-connection, users are forced to run manual terminal commands (e.g., `sudo snap connect <snap>:<plug-name>`) before they can use the app. This creates a poor user experience and is a significant barrier for non-technical users.
...
where:
- : the name of the interface as defined in the snapcraft.yaml .
- interface: the interface being requested. Only required if different from interface-name
- attributes: the interface attributes. Only required if attribute are defined in the snapcraft.yaml.
- request-type: one of installation (ie. permission to upload the snap to the store using this interface), connection (ie. permission to allow the snap interface to be connected) or auto-connection (ie. permission for the snap interface to be automatically connected when the snap is installed).
Example request:
name: foo-snap
description: audio player and recorder
snapcraft: https://github.com/jslarraz/foo/snapcraft.yaml
upstream: https://github.com/jslarraz/foo
upstream-relation: maintainer
plugs:
audio-record:
request-type: auto-connection
reasoning: this is needed to record the microphone, which is one of the core
functionalities of the snap.
dot-config-foo:
interface: personal-files
attributes:
write: $HOME/.config/foo
request-type: auto-connection
reasoning: the application needs to access its configuration files
removable-media
request-type: manual-connection
reasoning: media files are frequently stored in external disk.
slots:
com-jslarraz-foo:
interface: dbus
attributes:
bus: session
name: com.jslarraz.foo
request-type: manual-connection
reasoning: Notte is a Flutter/GTK3 desktop application that requires
a D-Bus session bus slot (com.notte.notte) for proper desktop integration.
The GTK toolkit registers on the session bus for window management,
single-instance enforcement, and accessibility services. The bus name
matches the application ID. Without this slot, the app fails AppArmor
policy checks on launch.