[meta-virtualization] [PATCH v2 1/2] Added recipe for the Singularity container platform.
Bruce Ashfield
bruce.ashfield at gmail.com
Tue Aug 29 05:44:36 PDT 2017
v2 is now merged!
Bruce
On Fri, Aug 25, 2017 at 8:27 AM, Alexandru Tiniuc <
tiniuc.alexandru at gmail.com> wrote:
> Singularity is a container platform built on the principle of mobility
> of compute. It is designed to be used on HPC clusters and, unlike
> Docker, it does not require root access to mount an image. In addition,
> it can use Docker images out-of-the-box and it can pull them from the
> Docker Hub. For more information, see singularity.lbl.gov
>
> This recipe enables building the Singularity container platform.
> Additionally, it creates a symlink from /usr/bin/python3 to
> /usr/bin/python, as well as a symlink to where python3 expects
> CA certificates to be.
>
> I have tested it on a Raspberry Pi 3: I successfully built and run
> arm32v7 images from Docker Hub. Make sure you have the right image for
> your CPU architecture: it defaults to amd64.
>
> Signed-off-by: Alexandru Tiniuc <tiniuc.alexandru at gmail dot com>
> ---
> recipes-containers/singularity/singularity_git.bb | 35
> +++++++++++++++++++++++
> 1 file changed, 35 insertions(+)
> create mode 100644 recipes-containers/singularity/singularity_git.bb
>
> diff --git a/recipes-containers/singularity/singularity_git.bb
> b/recipes-containers/singularity/singularity_git.bb
> new file mode 100644
> index 0000000..d0fbeb9
> --- /dev/null
> +++ b/recipes-containers/singularity/singularity_git.bb
> @@ -0,0 +1,35 @@
> +# Skip QA check for library symbolic links (core issue is a packaging
> problem within
> +# Singularity build / config: read up on the dev-so test for more info)
> +INSANE_SKIP_${PN} += "dev-so"
> +
> +RDEPENDS_${PN} += "glibc python3 ca-certificates openssl"
> +# Singularity expects to find python3 under the name python, therefore
> both
> +# cannot be installed at the same time.
> +RCONFLICTS_${PN} = "python"
> +
> +LICENSE = "BSD"
> +LIC_FILES_CHKSUM = "file://COPYRIGHT.md;md5=
> be78c34e483dd7d8439358b1e024b294 \
> + file://LICENSE-LBNL.md;md5=
> 45a007b527e1a9507aa7fa869f8d7ede \
> + file://LICENSE.md;md5=df4326b473db6424033f1d98a5645e30
> \
> + file://debian/copyright;md5=
> ed267cf386d9b75ab1f27f407e935b10"
> +
> +SRC_URI = "git://github.com/singularityware/singularity.
> git;protocol=https"
> +PV = "2.3.1+git${SRCPV}"
> +SRCREV = "e214d4ebf0a1274b1c63b095fd55ae61c7e92947"
> +
> +S = "${WORKDIR}/git"
> +
> +inherit pythonnative autotools-brokensep
> +EXTRA_OECONF = "--prefix=/usr/local"
> +
> +pkg_postinst_${PN}() {
> + # Singularity requires "python" to resolve to "python3" within the
> commandline.
> + # This creates a symbolic link from python3 to python. A side-effect
> of this is
> + # that scripts which expect Python 2 may fail to run correctly.
> + ln -sr $D${bindir}/python3 $D${bindir}/python
> +
> + # python3 expects CA certificates to be installed in a different
> place to where
> + # they are actually installed. These lines link the two locations.
> + rm -r $D${libdir}/ssl-1.1/certs
> + ln -sr $D${sysconfdir}/ssl/certs $D${libdir}/ssl-1.1
> +}
> --
> 2.1.4
>
> --
> _______________________________________________
> meta-virtualization mailing list
> meta-virtualization at yoctoproject.org
> https://lists.yoctoproject.org/listinfo/meta-virtualization
>
--
"Thou shalt not follow the NULL pointer, for chaos and madness await thee
at its end"
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/meta-virtualization/attachments/20170829/9acb70a0/attachment.html>
More information about the meta-virtualization
mailing list