sylabs / singularity

SingularityCE is the Community Edition of Singularity, an open source container platform designed to be simple, fast, and secure.
https://sylabs.io/docs/
Other
715 stars 93 forks source link

Missing "sqfstar" with singularity pull --oci in 4.0.0-rc.1-1 #2099

Closed DrDaveD closed 11 months ago

DrDaveD commented 11 months ago

Version of Singularity

singularity-ce version 4.0.0-rc.1-1

Describe the bug

Pulling docker://centos:7 in oci mode gets an error finding "sqfstar"

To Reproduce

$ sudo yum install -y https://github.com/sylabs/singularity/releases/download/v4.0.0-rc.1/singularity-ce-4.0.0.rc.1-1.el7.x86_64.rpm
$ singularity pull --oci centos7.oci-sif docker://centos:7
Getting image source signatures
Copying blob 2d473b07cdd5 done
Copying config 6d42e44a9f done
Writing manifest to image destination
INFO:    Converting OCI image to OCI-SIF format
INFO:    Squashing image to single layer
INFO:    Cleaning up.
FATAL:   While making image from oci registry: error fetching image to cache: while creating OCI-SIF: while converting to squashfs format: exec: "sqfstar": executable file not found in $PATH

Expected behavior

I expected to be able to successfully create an OCI-SIF

OS / Linux Distribution

CentOS7

Installation Method

From release rpm

Question

Is there a workaround?

dtrudg commented 11 months ago

This isn't a bug - the need to install sqfstar / tar2sqfs is documented in the INSTALL.md

https://github.com/sylabs/singularity/blob/main/INSTALL.md#install-sqfstar--tar2sqfs-for-oci-mode

It isn't distributed with SingularityCE due to GPL licensing. We will be working toward a better solution during the RC period.

dtrudg commented 11 months ago

Note that we are also considering whether to implement #2095 - but it would be unfortunate if people just relied on that fallback (which has many drawbacks vs the OCI-SIF approach).

DrDaveD commented 11 months ago

Ok thanks for the instructions. It was certainly unexpected.