gnu: Add python-cvxpy.

* gnu/packages/python-science.scm (python-cvxpy): New variable.

Co-authored-by: Ricardo Wurmus <rekado@elephly.net>
Change-Id: I440ab3768cbc4e78364dc31cf9484effd9670f49
This commit is contained in:
Marco Baggio 2024-04-29 15:11:53 +02:00 committed by Ricardo Wurmus
parent 2c0cf38f04
commit da18b8620f
No known key found for this signature in database
GPG key ID: 197A5888235FACAC

View file

@ -89,6 +89,35 @@ (define-module (gnu packages python-science)
#:use-module (guix build-system python)
#:use-module (guix build-system pyproject))
(define-public python-cvxpy
(package
(name "python-cvxpy")
(version "1.4.3")
(source
(origin
(method url-fetch)
(uri (pypi-uri "cvxpy" version))
(sha256
(base32 "0lyri9j5gyg6m1bvfy1a4q2sqdy3w45lp0bxiq9as8srq347ic5i"))))
(build-system pyproject-build-system)
;; It's odd but cvxpy appears to need pybind11 at runtime according to its
;; specification. Moving pybind11 to native-inputs would break downstream
;; packages using cvxpy.
(propagated-inputs (list pybind11
python-clarabel
python-ecos
python-numpy
python-osqp
python-scipy
python-scs))
(native-inputs (list python-pytest python-setuptools))
(home-page "https://github.com/cvxpy/cvxpy")
(synopsis "DSL for modeling convex optimization problems")
(description
"This package provides a domain-specific language for modeling convex
optimization problems in Python.")
(license license:asl2.0)))
(define-public python-ecos
(package
(name "python-ecos")