Publishing a Snap Package
I'm trying to get jas (just an installer) published in the snap package registry for a few weeks now. This is how the process is going so far.
According to the docs, I can just register a new snap and publish it. So in a fresh Ubuntu 24.04, I ran:
$ sudo apt update
$ sudo apt install neovim
$ sudo snap install snapcraft --classic
$ git clone https://github.com/rikhuijzer/jas.git
$ mv pkg/snapcraft.yaml .
$ snapcraft # installs LXD at first run
$ sudo apt install gnome-keyring
$ snapcraft login
$ snapcraft register jas
$ snapcraft upload --release=edge jas_0.2.0_amd64.snap
Store operation failed:
- resource-not-found: Snap not found for name=jas
Full execution log: '/root/.local/state/snapcraft/log/snapcraft-20250408-093243.551840.log'
This error is very strange since the snapcraft register jas
command succeeded. I could also see at https://dashboard.snapcraft.io/ that the package was registered. My issue at GitHub did not get a response between 8th of April and the 10th of April.
After I ran another registration request via https://dashboard.snapcraft.io/, a reviewer politely told me that "jas" was too short:
Hello,
There is no jas snap registered under your account.
Three-letter and shorter snap names are too generic and don't provide a good idea of what the snap actually is or does. For that reason, we prefer and suggest you select a more descriptive name for your snap (just-an-installer, or jas-installer for example). Keep in mind that even if the snap has one of those names, a command called "jas" can still be provided by the snap using the "alias" functionality, see [1].
Let me know if some of the suggested names are OK with you or if you want to pick a new one; in any case, you can simply register the new name and we will approve it promptly, only 3-letter or shorter names (well and a few other exceptions) require a more in depth manual name review/approval.
- https://snapcraft.io/docs/commands-and-aliases
Regards
So I registered just-an-installer
which then took a few days to be reviewed.
Next, I pushed to just-an-installer
and it turns out that my tool is now available as
just-an-installer.jas
Maybe I am pedantic, but I think this is quite unwieldy. just-an-installer
would be okayish, but this is quite long. So I went to the commands and aliases docs that the reviewer suggested.
From the docs:
As there is no guarantee that an alias is going to be unique, and potential conflicts create a minor inconvenience, a snap’s default aliases are only enabled after a simple public review process. [...] If you want an alias enabled for your snap, please open a small forum topic in the store requests category with the details.
So I went to the store and found an example request. Here the review took about one day from what I can see.
Next, I set out to make a similar request. However, when making an account it turns out that I need to be approved by a moderator.
Attempting to register at the snap store has now taken a month already, and it seems that it will take at least another week. I wouldn't say this situation is all bad. There are some fair arguments to be made for some checks. All this shows why I am working on jas in the first place. I'm not sure whether jas is the right solution, but I do think that there is a need for reliable, secure, and easy-to-use binary installers.