From 8ded262f048ff457e0095070decb20603bb83763 Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Thu, 15 Feb 2024 13:57:50 +0000 Subject: gnu: Add python-spython. * gnu/packages/linux.scm (python-spython): New variable. Change-Id: I758f879608bc4b0c0411918b4ee0fa9cc3abc639 Signed-off-by: Arun Isaac --- gnu/packages/linux.scm | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) (limited to 'gnu/packages') diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 339add4d82..8eb6d9b7d3 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -80,6 +80,7 @@ ;;; Copyright © 2023 Jaeme Sifat ;;; Copyright © 2024 Gabriel Wicki ;;; Copyright © 2024 Sharlatan Hellseher +;;; Copyright © 2024 Arun Isaac ;;; ;;; This file is part of GNU Guix. ;;; @@ -5276,6 +5277,51 @@ existing Docker images. Singularity requires kernel support for container isolation or root privileges.") (license license:bsd-3))) +(define-public python-spython + (package + (name "python-spython") + (version "0.3.13") + (source + (origin + (method url-fetch) + (uri (pypi-uri "spython" version)) + (sha256 + (base32 "0kly851k6mj7xzcybciav5d0pq5q04pzg7c5a1g712bqbxkha4ck")))) + (build-system pyproject-build-system) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + ;; Configure absolute path to singularity. + (add-after 'unpack 'configure + (lambda* (#:key inputs #:allow-other-keys) + (let ((singularity (search-input-file inputs "bin/singularity"))) + (substitute* "spython/utils/terminal.py" + (("software=\"singularity\"") + (string-append "software=\"" singularity "\""))) + (substitute* (list "spython/utils/terminal.py" + "spython/main/help.py" + "spython/main/base/command.py") + (("\\[\"singularity\"") + (string-append "[\"" singularity "\""))) + (substitute* "spython/main/execute.py" + (("shutil.which\\(\"singularity\"\\)") + (string-append "shutil.which(\"" singularity "\")")))))) + ;; Skip tests that require network access. + (add-before 'check 'skip-tests + (lambda _ + (delete-file "spython/tests/test_client.py")))))) + (inputs + (list singularity)) + (native-inputs + (list python-pytest + python-pytest-runner)) + (home-page "https://github.com/singularityhub/singularity-cli") + (synopsis "Singularity Python client") + (description "@code{python-spython} is a Python library to interact with +Singularity containers.") + (license license:mpl2.0))) + (define-public libnvme (package (name "libnvme") -- cgit v1.2.3