--- /etc/apparmor.d/usr.lib.snapd.snap-confine 2016-07-12 23:34:32.000000000 +0200
+++ usr.bin.snap-confine 2016-07-21 11:30:35.476441793 +0200
@@ -17,7 +17,7 @@
/usr/lib/@{multiarch}/libseccomp.so* mr,
/lib/@{multiarch}/libseccomp.so* mr,
- /usr/lib/snapd/snap-confine r,
+ /usr/bin/snap-confine r,
/dev/null rw,
/dev/full rw,
@@ -105,19 +105,28 @@
mount options=(rw rbind) /var/snap/ -> /tmp/snap.rootfs_*/var/snap/,
mount options=(rw rbind) /var/tmp/ -> /tmp/snap.rootfs_*/var/tmp/,
mount options=(rw rbind) /run/ -> /tmp/snap.rootfs_*/run/,
+ mount options=(rw rbind) /media/ -> /tmp/snap.rootfs_*/media/,
+ mount options=(rw rbind) /lib/modules/ -> /tmp/snap.rootfs_*/lib/modules/,
mount options=(rw bind) /snap/ubuntu-core/*/etc/alternatives/ -> /tmp/snap.rootfs_*/etc/alternatives/,
+ # Allow to mkdir /var/lib/snapd/hostfs
+ /var/lib/snapd/hostfs/ rw,
+ # Allow to mount / as hostfs in the chroot
+ mount options=(ro bind) / -> /tmp/snap.rootfs_*/var/lib/snapd/hostfs/,
+
# Support mount profiles via the content interface
mount options=(rw bind) /snap/*/*/** -> /snap/*/*/**,
mount options=(ro bind) /snap/*/*/** -> /snap/*/*/**,
# But we don't want anyone to touch /snap/bin
audit deny mount /snap/bin/** -> /**,
audit deny mount /** -> /snap/bin/**,
+ # Allow the content interface to bind fonts from the host filesystem
+ mount options=(ro bind) /var/lib/snapd/hostfs/usr/share/fonts/ -> /snap/*/*/**,
# nvidia handling, glob needs /usr/** and the launcher must be
# able to bind mount the nvidia dir
/usr/** r,
- mount options=(rw bind) /usr/lib/nvidia-*/ -> /var/lib/snapd/lib/gl/,
+ mount options=(rw bind) /usr/lib/nvidia-*/ -> /{tmp/snap.rootfs_*/,}var/lib/snapd/lib/gl/,
# for chroot on steroids, we use pivot_root as a better chroot that makes
# apparmor rules behave the same on classic and outside of classic.