Yes, it became clear to me that this would get controversial after I read other threads of developers requesting removable-media auto-connect.
In my opinion - but that’s just mine - it would make sense to allow auto-connecting the removable-media interface for apps like media players, converters, editors and file utilities. These types of apps simply are not very usable without having access to the files that a user might want to open with them and media files are commonly stored on external drives.
I think that most users won’t bother to find out why a Snap cannot open their files or how to fix it. They would just uninstall the Snap and look for alternatives. There are several posts in different forums and bug trackers complaining about e.g. the VLC Snap not being able to open files, without any indication that the users know what’s going on (e.g. ).
As far as I know, the removable-media interface currently is the only way for Snaps to access files outside of the users home directory, so to make these types of apps actually usable by default, I would expect them to be allowed to auto-connect this interface.
I know that work is going on to support the XDG desktop portal which would allow opening arbitrary files via the GTK and Qt file selector dialogs. That would be great and probably eliminate the need for bulk removable media access for some apps.
Ideally, from my developer perspective, the sandbox would automatically grant access to files if:
- They have been selected via a file selector dialog (would be possible with XDG desktop portal support)
- They have been dragged & dropped into the sandboxed application (there seems to be work going on on the XDK desktop portal side to support this)
- They have been passed as command line arguments
I think this would remove the need to use the removable-media interface for most apps. So maybe auto-connect could be granted now, as long as other options are not yet available, but be reviewed once desktop portal support or some other solution is ready?
Of course it could (and probably should) be indicated to the user more clearly what access rights are requested before installing - e.g. by displaying the existing access rights dialog when confirming to install in Gnome Software.