Snap does not currently have any way to easily add any external repositories. You are forced to use Canonical’s servers, which could be seen as a monopoly.
This also could scare away developers. For example, let’s say I have made an app called AwesomeApplication1 (very unique name). I decide I want to publish it, but find that Snap is a monopoly of sorts, whereas Flatpak is not. Because I want to support the thing that isn’t a monopoly, I go with Flatpak and run my own server, or publish to Flathub.
A way to fix this would be to add commands similar to:
- snap repo list
- snap repo add REMOTE_ADDRESS
- snap repo remove REMOTE_NAME or REMOTE_ADDRESS
Furthermore, some distributions like being extremely neutral, and don’t even like it when people ask for donations before you can download (they don’t like how Ubuntu, Elementary do that). To support them, there should also be an option to disable the Canonical store. It could be like:
- snap repo disable Ubuntu.Store
- snap repo enable Ubuntu.Store