Hey there!
I’ve encountered some strange behavior when running my snap on a Raspberry Pi 3 with Ubuntu Core 18.
To demonstrate this behavior, I created the following snap declaration:
name: mytest
base: core18
version: '0.1'
summary: Single-line elevator pitch for your amazing snap
description: |
This is my-snap's description. You have a paragraph or two to tell the
most important story about your snap. Keep it under 100 words though,
we live in tweetspace and your description wants to look good in the snap
store.
grade: devel
confinement: strict
apps:
add:
command: bin/ip tuntap add mode tun tun10
adapter: full
plugs:
- network-control
delete:
command: bin/ip link delete tun10
adapter: full
plugs:
- network-control
parts:
mytest:
plugin: nil
stage-packages:
- iproute2
The snap uses the network-control interface to add and remove a tun device.
Without attaching the network-control interface, mytest.add responds with
Cannot open netlink socket: Operation not permitted
When connecting the interface, the action is executed as intended on every machine I tested, except the Raspberry Pi 3 running Ubuntu Core 18. Here, another error is displayed
open: Operation not permitted
I tested the following configurations (clean images with refreshed snaps):
- Ubuntu 19.10 amd64 desktop (working)
- Ubuntu 19.10 server armhf Raspberry Pi 3 (working)
- Ubuntu Core 18 amd64 (working)
- Ubuntu Core 18 armhf Raspberry Pi 3 (NOT working)
- Ubuntu Core 18 arm64 Raspberry Pi 3 (NOT working)
Is this a bug in snapd? Or is this somehow intended behavior?