A significant amount of Snaps sandboxing model is enforced by AppArmor. AppArmor is heavily based on filesystem paths and AppArmor is smart enough to identify a symlink as a different path. By moving the location of the folder with a symlink, you're probably removing a lot of its permissions to read and write data, and if you looked at the AppArmor audit logs, you'd probably find plenty of access denied messages from this.

At a minimum, you'd need to consider using something like a Bind Mount, which AppArmor is blind to and would work as you're expecting to, but in all honesty, I'd actually just recommend using the AppImage here. The automatic update model for snaps is significantly more complex than the upgrade model for AppImages, and I wouldn't like for you to discover that changing the paths like this opens up bugs because it wouldn't be tested.

3 Likes