Store-admin - export snaps with prerequesites

Store-Admin is a snap used to export snaps, to be able to import them to into an air-gapped offline snap-store.

This requires every single snap to be downloaded manually.

Why does store-admin export snaps firefox (as example) only download the main snap, but does not export requirements parallel ? Since its a gui application it also needs possibly gtk, and some other gui libraries as snap packages. I want to download those in parallel.

Downloading one snap, installing, failing install, downloading failed snap, install, failing install downloading failed snap, … is really annoying.

This experience of being able to download and install snaps in an airgapped env is nice, (and even more required soon…) but its an absolute horror experience, because automating it is hardly possible.

At least add a possible --include-prerequisites flag to the download command or something. Maybe something like this already exists, but I was unable to find it inside the documentation of the offline airgapped snap-store-proxy / store-admin…

2 Likes

I am also interested to know if there is anyway to download prerequisites ?

1 Like

I’ve never used the Store-Admin snap but done manually you’d do it like so:

james@James-Desktop:~$ snap download pinta
Fetching snap "pinta"
Fetching assertions for "pinta"
Install the snap with:
   snap ack pinta_33.assert
   snap install pinta_33.snap
james@James-Desktop:~$ unsquashfs pinta_33.snap 
Parallel unsquashfs: Using 16 processors
498 inodes (1012 blocks) to write

[=====================================================================================================================================================================================================================================|] 1510/1510 100%

created 481 files
created 200 directories
created 17 symlinks
created 0 devices
created 0 fifos
created 0 sockets
created 0 hardlinks
james@James-Desktop:~$ grep 'default-provider' squashfs-root/meta/snap.yaml | uniq
    default-provider: gtk-common-themes
    default-provider: gnome-42-2204
james@James-Desktop:~$ 

With gtk-common-themes and gnome-42-2204 being dependencies.