diff options
author | Alyssa Ross <hi@alyssa.is> | 2024-01-20 12:31:50 +0100 |
---|---|---|
committer | Alyssa Ross <hi@alyssa.is> | 2024-01-20 12:32:25 +0100 |
commit | b7baf40e099b4215181fe7b0c63083b12ef2c7fb (patch) | |
tree | a6efabd31d05b6d0a36624729e80377bbbfb0149 /nixpkgs/pkgs/development/python-modules/clarabel/default.nix | |
parent | 710028664e26e85cb831a869b3da9f6993902255 (diff) | |
parent | 0799f514b1cd74878174939df79ac60ca5036673 (diff) | |
download | nixlib-b7baf40e099b4215181fe7b0c63083b12ef2c7fb.tar nixlib-b7baf40e099b4215181fe7b0c63083b12ef2c7fb.tar.gz nixlib-b7baf40e099b4215181fe7b0c63083b12ef2c7fb.tar.bz2 nixlib-b7baf40e099b4215181fe7b0c63083b12ef2c7fb.tar.lz nixlib-b7baf40e099b4215181fe7b0c63083b12ef2c7fb.tar.xz nixlib-b7baf40e099b4215181fe7b0c63083b12ef2c7fb.tar.zst nixlib-b7baf40e099b4215181fe7b0c63083b12ef2c7fb.zip |
Merge branch 'nixos-unstable-small' of https://github.com/NixOS/nixpkgs
Conflicts: nixpkgs/pkgs/build-support/rust/build-rust-package/default.nix
Diffstat (limited to 'nixpkgs/pkgs/development/python-modules/clarabel/default.nix')
-rw-r--r-- | nixpkgs/pkgs/development/python-modules/clarabel/default.nix | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/python-modules/clarabel/default.nix b/nixpkgs/pkgs/development/python-modules/clarabel/default.nix new file mode 100644 index 000000000000..46cdc7c57611 --- /dev/null +++ b/nixpkgs/pkgs/development/python-modules/clarabel/default.nix @@ -0,0 +1,62 @@ +{ lib +, stdenv +, buildPythonPackage +, fetchFromGitHub +, rustPlatform +, libiconv +, numpy +, scipy +}: + +buildPythonPackage rec { + pname = "clarabel"; + version = "0.6.0.post1"; + pyproject = true; + + src = fetchFromGitHub { + owner = "oxfordcontrol"; + repo = "Clarabel.rs"; + rev = "refs/tags/v${version}"; + hash = "sha256-5Mw+3WRMuz3BxLWRdsnXHjetsNrM3EZRZld8lVTNKgo="; + }; + + cargoDeps = rustPlatform.importCargoLock { + lockFile = ./Cargo.lock; + }; + + postPatch = '' + ln -s ${./Cargo.lock} ./Cargo.lock + ''; + + nativeBuildInputs = with rustPlatform; [ + cargoSetupHook + maturinBuildHook + ]; + + buildInputs = lib.optional stdenv.isDarwin libiconv; + + propagatedBuildInputs = [ + numpy + scipy + ]; + + pythonImportsCheck = [ + "clarabel" + ]; + + # no tests but run the same examples as .github/workflows/pypi.yaml + checkPhase = '' + runHook preCheck + python examples/python/example_sdp.py + python examples/python/example_qp.py + runHook postCheck + ''; + + meta = { + changelog = "https://github.com/oxfordcontrol/Clarabel.rs/releases/tag/v${version}/CHANGELOG.md"; + description = "Conic Interior Point Solver"; + homepage = "https://github.com/oxfordcontrol/Clarabel.rs"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ a-n-n-a-l-e-e ]; + }; +} |