I have successfully snapped and tested my app simple-pwgen. However, when I tried to release it on snap-store, I am getting the following errors.
First I tried to upload the pre-built snap using snapcraft upload simple-pwgen_1.0.9snap+git9.7ff545a_amd64.snap --release=latest/edge/master.
With this I am getting the following error:
Issues while processing snap:g
- human review required due to 'deny-connection' constraint (interface attributes)
- package contains external symlinks: bin/python -> python3, bin/python3 -> /snap/gnome-3-38-2004-sdk/140/usr/bin/python3.8
try patching your binary to use #!/usr/bin/env python3 and make sure to remove the symlink in your package … the deny-connection is caused by the dbus interface which will need manual approval …
Regarding the dbus name - you should have an email about this (the current name of org.x.simple-pwgen is too generic as org.x is a non-specific prefix - instead this should be tied to the upstream project, so perhaps something like io.github.hsbasu.simple-pwgen)
Regarding the dbus name - you should have an email about this (the current name of org.x.simple-pwgen is too generic as org.x is a non-specific prefix - instead this should be tied to the upstream project, so perhaps something like io.github.hsbasu.simple-pwgen)
I was thinking of changing the dbus name in the upcoming release.
Also, I was trying to follow the conventions used by the Mint team, as all their utility apps like webapp-manager, clicky and others use the same convention for their gschema files. Can you please explain this a little elaborately? Whether dbus and the gschema files are related or how?
I’m also getting the external symlinks error which prevents my snap publishing to the snapstore. How exactly do I remove the symlinks - via some additional commands in my snapcraft.yaml? The exact error I’m getting is
but step 3 fails because python3 cannot be found anymore:
$ snap pack squashfs-root
2023/03/08 18:40:08.157998 container.go:215: in snap "pynsource": path "bin/python3" does not exist
error: cannot pack "squashfs-root": snap is unusable due to missing files
Presumably we want to keep at least one real python3 binary around to run the python app inside the snap - why is the workaround deleting all the python binaries in step 2? How is my python app supposed to run?
Update: Or are you referring to your workaounds marked with #WORKAROUND made to snapcraft.yaml Python Plugin + Gnome 3 Extension Error My https://github.com/abulka/pynsource/blob/master/snap/snapcraft.yaml already has some of those workarounds (as inherited from the yt-dlg snapcraft.yaml) but the build-environment: paths are different and I have no stage: step. Ironically, I tried adding the additional workarounds and got a similar error Cannot pack snap file: Command '['snap', 'pack', '--filename', 'pynsource_0+git.11509e6_amd64.snap', '--compression', 'xz', PosixPath('/root/prime'), PosixPath('/root/project')]' returned non-zero exit status 1. (container.go:215: in snap "pynsource": path "bin/python3" does not exist error: cannot pack "/root/prime": snap is unusable due to missing files)
This. As far as I can tell, all of those are workarounds are required. If you don’t have a stage step you may need to add it so the workaround can be utilized by snapcraftctl.
@alexmurray As you suggested, I changed the dbus name to org.mamolinux.simple-pwgen. But still the builds are getting rejected. Do you have any further suggestion?
@emitorino I recently updated the snapcraft.yml, and then the build got rejected. Do I have have to obtain permission again? What about every time I change the snapcraft.yml? Would it need to be approved every time? Thanks in advance.
No, not at all. Unless there are further changes that require review. What I can see in the last revision, is that there is an error with arch specific binaries found, but then snanpcraft.yaml has:
architectures:
all
You should have received a notification about this error.
Hi @emitorino , I didn’t receive any error when I tested on my system. If I should not use all, Can you suggest anything? So that this would work on any architecture like,