diff options
-rw-r--r-- | gnu/packages/linux.scm | 46 |
1 files changed, 46 insertions, 0 deletions
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 <jaeme@runbox.com> ;;; Copyright © 2024 Gabriel Wicki <gabriel@erlikon.ch> ;;; Copyright © 2024 Sharlatan Hellseher <sharlatanus@gmail.com> +;;; Copyright © 2024 Arun Isaac <arunisaac@systemreboot.net> ;;; ;;; 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") |