System File Access for Fonts & Company Vetting

Hello,

Our company Pieces (https://code.pieces.app/) recently uploaded two of our apps to the snap store for the first time and got rejected for specifying “System-Files Interface”.

We had specified this interface in each of the snapcraft.yaml as a plug to retrieve some fonts that without specifying, gave us a number of errors related to the applications not being able to find these fonts on the system.

Our applications are built with Flutter, and we use the Flutter extension to build the Snap images. If there is something that we have to do to circumvent this issue we would like to know so we can start distributing these Snap images to our users.

The review we had received has also informed us about being a vetted publisher which we are also interested in.

We are more than happy to go through a vetting process in order to establish a better collaboration with Snapcraft and related partners.

We can be contacted at the email address associated with this Forum Account if that is more preferable, and our Developer Account shares the same email address where the applications are published under.

Thank you,

Pieces Development Team

Can you please specify the names for these 2 snaps in question?

The two snap names are:

runtime

pieces-for-developers

Hi Alex,

Following up on the above. Is there anything required from us to keep this moving forward? Please let us know.

We standby awaiting further instruction.

Thanks!

Regarding the use of system-files to access /etc/fonts - if your snap plugs the desktop interface then it should be able to access these files automatically (note it will not be able to list the contents of the /etc/fonts directory but it will be able to open /etc/fonts/fonts.conf and list the contents of /etc/fonts/conf.d/ etc. So the use of system-files should not be needed IMO.

Hi Alex,

You are correct in that we do not need system file access to get these fonts.

We were originally getting this error upon boot of our application:

update.go:85: cannot change mount namespace according to change mount (/var/lib/snapd/hostfs/usr/share/fonts /usr/share/fonts-2 none bind,ro 0 0): permission denied 
update.go:85: cannot change mount namespace according to change mount (/var/lib/snapd/hostfs/var/cache/fontconfig /var/cache/fontconfig-2 none bind,ro 0 0): permission denied

We thought it was related to the system-files plug, but the error only seems to appear on first launch which we believe is a separate issue. If you know why this error gets thrown we would love to know, but upon subsequent launches the error doesn’t appear.

We do also get errors from gtk if you know anything about that:

Gtk-WARNING **: 12:19:50.387: Theme parsing error: gtk.css:1428:23: ‘font-feature-settings’ is not a valid property name
Gtk-WARNING **: 12:19:50.389: Theme parsing error: gtk.css:3318:25: ‘font-feature-settings’ is not a valid property name
Gtk-WARNING **: 12:19:50.390: Theme parsing error: gtk.css:3780:23: ‘font-feature-settings’ is not a valid property name

Our latest revision without the system-files plug has successfully passed and we are able to install our apps from the store.

Thanks for your help!