summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarek Szuba <marecki@gentoo.org>2020-04-16 17:08:40 +0100
committerMarek Szuba <marecki@gentoo.org>2020-04-16 17:35:23 +0100
commite5faf5a00819f65078cbd18aa6c51f8ddfed55fa (patch)
treed30a4ef2503d303e818edc319fc321a594c5f42b /sys-cluster
parentprofiles/package.mask: Mask =dev-libs/libuv-1.36.0 (diff)
downloadgentoo-e5faf5a00819f65078cbd18aa6c51f8ddfed55fa.tar.gz
gentoo-e5faf5a00819f65078cbd18aa6c51f8ddfed55fa.tar.bz2
gentoo-e5faf5a00819f65078cbd18aa6c51f8ddfed55fa.zip
sys-cluster/singularity: bump to 3.5.3
Invoking maintainer time-out on this one, on the one hand we have been LONG overdue for a bump to major version 3 and on the other 2.6.2 has apparently got problems with squashfs on newer kernels. Discussion of dependencies, given some of them are not obvious and official "install from source" documentation seems to include packages which are not in fact needed: - sys-libs/libseccomp - looked for by mconfig, moreover at least on my system singularity binaries end up linked *dynamically* against it; - virtual/pkgconfig - used by mconfig while looking for libseccomp; - go-1.13+ - this version number is requested in mconfig; - app-crypt/gpgme - NOT looked for by mconfig but Singularity does use gpgme bindings for Go; - dev-libs/openssl - looked for by mconfig; - sys-apps/util-linux - libuuid and its header files looked for by mconfig; - sys-fs/cryptsetup - looked for by mconfig; - sys-fs/squashfs-tools - various tools from this package (e.g. unsquash) are invoked at run time, that said I have experimentally confirmed that Singularity builds fine without it. Closes: https://bugs.gentoo.org/694048 Signed-off-by: Marek Szuba <marecki@gentoo.org>
Diffstat (limited to 'sys-cluster')
-rw-r--r--sys-cluster/singularity/Manifest1
-rw-r--r--sys-cluster/singularity/metadata.xml6
-rw-r--r--sys-cluster/singularity/singularity-3.5.3.ebuild59
3 files changed, 65 insertions, 1 deletions
diff --git a/sys-cluster/singularity/Manifest b/sys-cluster/singularity/Manifest
index db1918daa9c4..452f0d8dbf6e 100644
--- a/sys-cluster/singularity/Manifest
+++ b/sys-cluster/singularity/Manifest
@@ -1 +1,2 @@
DIST singularity-2.6.1.tar.gz 835029 BLAKE2B 4a581e1bc5df9d664d68f17e275f01081c850aa53f8a9bfcceaf5eb2b8f16e3a018f88669674c7427c60ab00ec0f21b4ec5e6ecaab261c16f70a998cb54ff855 SHA512 063327c67dae2629d1decebc060c474a72e6741f6dc9b6373734e429ccf11d53ee55c1578c28e74e8f8bcda87f3e0b735a3a0e982c9ea894f03a31eaaadf617c
+DIST singularity-3.5.3.tar.gz 7885009 BLAKE2B 8afa2223906e7abf5f3d796efe7cf243dd9d91e61c8ca143a755ad772618ed01d20b7f4a030e82767cf9bf2a7431848d8344e30bde38f413ecd2eef0a9bab53e SHA512 b8bb44539e78eaf74c1b97e5bae8fae1f390412456d76b573fffe2a90240b182db1aec60aee80715547c3edfbaa0607506e2727a575bc951223f9a7c3be0a97e
diff --git a/sys-cluster/singularity/metadata.xml b/sys-cluster/singularity/metadata.xml
index f47500258195..e7f7edb94ed6 100644
--- a/sys-cluster/singularity/metadata.xml
+++ b/sys-cluster/singularity/metadata.xml
@@ -5,7 +5,11 @@
<email>jlec@gentoo.org</email>
<name>Justin Lecher</name>
</maintainer>
+ <use>
+ <flag name="network">Install network plug-ins</flag>
+ <flag name="suid">Install SUID helper binary</flag>
+ </use>
<upstream>
- <remote-id type="github">singularityware/singularity</remote-id>
+ <remote-id type="github">sylabs/singularity</remote-id>
</upstream>
</pkgmetadata>
diff --git a/sys-cluster/singularity/singularity-3.5.3.ebuild b/sys-cluster/singularity/singularity-3.5.3.ebuild
new file mode 100644
index 000000000000..2a51a4074fcd
--- /dev/null
+++ b/sys-cluster/singularity/singularity-3.5.3.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit linux-info
+
+DESCRIPTION="Application containers for Linux"
+HOMEPAGE="https://sylabs.io"
+SRC_URI="https://github.com/sylabs/${PN}/releases/download/v${PV}/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="BSD"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="examples +network +suid"
+
+# Do not complain about CFLAGS etc since go projects do not use them.
+QA_FLAGS_IGNORED='.*'
+
+COMMON="sys-libs/libseccomp"
+BDEPEND="virtual/pkgconfig"
+DEPEND="${COMMON}
+ >=dev-lang/go-1.13.0
+ app-crypt/gpgme
+ dev-libs/openssl
+ sys-apps/util-linux
+ sys-fs/cryptsetup"
+RDEPEND="${COMMON}
+ sys-fs/squashfs-tools"
+
+CONFIG_CHECK="~SQUASHFS"
+
+S=${WORKDIR}/${PN}
+
+src_configure() {
+ local myconfargs=(
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --runstatedir=/run \
+ --localstatedir=/var \
+ $(usex network "" "--without-network") \
+ $(usex suid "" "--without-suid")
+ )
+ ./mconfig -v ${myconfargs[@]} || die "Error invoking mconfig"
+}
+
+src_compile() {
+ emake -C builddir
+}
+
+src_install() {
+ emake DESTDIR="${ED}" -C builddir install
+ keepdir /var/singularity/mnt/session
+
+ dodoc README.md CONTRIBUTORS.md CONTRIBUTING.md
+ if use examples; then
+ dodoc -r examples
+ fi
+}