[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [EXTERNAL]Re: Modifying squashfs usage for `guix pack` for supportin
Re: [EXTERNAL]Re: Modifying squashfs usage for `guix pack` for supporting singularity
Thu, 12 Mar 2020 17:58:59 +0000
While the images seem to work well in most cases, removing ways for bits to
change seems to be in the spirit of guix, and so the "-all-time" and
"-mkfs-time" options remove one source of change. Additionally, without the
"--no-recovery" an extra file is made which is not useful to the process, and
for my manual testing seemed to cause write or permission issues which could
cause failures. Guix already handles the failure cases in mksquashfs which the
recovery file is for and so the redundant work is not helpful, can cause
problems, slows down the process, and requires more resources.
As for the information given by `guix pack --list-formats`, I'd change to
something like the following:
tarball Self-contained tarball, ready to run directly on any Linux
squashfs Container suitable for Singularity 2.x and 3.x
OCI OCI compliant tarball ready for 'docker load' and usable by
sif Unsupported; container preferred by Singularity 3.x
For more information, refer to
From: Ludovic Courtès <address@hidden>
Sent: Thursday, March 12, 2020 12:39 PM
To: Josh Marshall
Subject: Re: [EXTERNAL]Re: Modifying squashfs usage for `guix pack` for
Josh Marshall <address@hidden> skribis:
> Thanks for getting back to me on this.
> For the options I mentioned in the email, and the one not yet tracked
> in email since it is only in IRC is "--no-recovery". These are what
> stood out to me when reading the `mksquashfs` documentation (
> https://github.com/plougher/squashfs-tools/blob/master/USAGE ) and
> looking at `guix/scripts/pack.scm'.
Perhaps I’m missing something, but it’s still not clear to me why these
options would be needed, especially since images produced with ‘guix
pack -f squashfs’ today appear to work well.
What am I missing?
> The knowledge you're saying about the `guix pack` options is not
> communicated by `guix pack --list-formats`, which yields
> $ guix pack --list-formats
> The supported formats for 'guix pack' are:
> tarball Self-contained tarball, ready to run on another machine
> squashfs Squashfs image suitable for Singularity
> docker Tarball ready for 'docker load'
Right, it just says “docker”, not “OCI”. The manual is a bit more
What would you suggest adding?
> All this seems to be tangential to the fact that `guix pack --format=squashfs
> ...` fails on CentOS7 for an undescribed reason:
> $ guix pack --format=squashfs bash-minimal
> \builder for
> failed with exit code 1
> build of
> View build log at
Could you email address@hidden with the command above, the output of
‘guix describe’, and the contents of
CentOS 7 runs a very old kernel, so it could be that we’re using some
Thanks for your feedback!
The information in this email, including attachments, may be confidential and
is intended solely for the addressee(s). If you believe you received this email
by mistake, please notify the sender by return email as soon as possible.