From 5eacb43e8f0e17b474c947d89f59eeb772310f8f Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Thu, 12 Sep 2024 11:37:55 +0200 Subject: [PATCH 01/36] jrl-cmakemodules: update to 0-unstable-2024-09-17 --- pkgs/by-name/jr/jrl-cmakemodules/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/jr/jrl-cmakemodules/package.nix b/pkgs/by-name/jr/jrl-cmakemodules/package.nix index 8dc01688de66..8ad3f29eac2e 100644 --- a/pkgs/by-name/jr/jrl-cmakemodules/package.nix +++ b/pkgs/by-name/jr/jrl-cmakemodules/package.nix @@ -7,13 +7,13 @@ stdenv.mkDerivation { pname = "jrl-cmakemodules"; - version = "0-unstable-2024-08-05"; + version = "0-unstable-2024-09-17"; src = fetchFromGitHub { owner = "jrl-umi3218"; repo = "jrl-cmakemodules"; - rev = "88d3cb561d1f9faa3c6281da7b2b8d6aa76b04d5"; - hash = "sha256-3Su/tGtV39/tto1Hs5sgGgjpFWkBCvI2SZKqBIIDAjA="; + rev = "31e46019beda968ba9e516ad645a951c64256eed"; + hash = "sha256-pe21tE0ngUYGhEuGSI71TMdwyqTmZhc53hPKHngkTGQ="; }; nativeBuildInputs = [ cmake ]; From 720ee922ce08d2eb84fa3f24b9db3092f4e28aea Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Tue, 17 Sep 2024 15:41:55 +0200 Subject: [PATCH 02/36] jrl-cmakemodules: set platforms --- pkgs/by-name/jr/jrl-cmakemodules/package.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/by-name/jr/jrl-cmakemodules/package.nix b/pkgs/by-name/jr/jrl-cmakemodules/package.nix index 8ad3f29eac2e..22c9bafe6425 100644 --- a/pkgs/by-name/jr/jrl-cmakemodules/package.nix +++ b/pkgs/by-name/jr/jrl-cmakemodules/package.nix @@ -23,5 +23,6 @@ stdenv.mkDerivation { homepage = "https://github.com/jrl-umi3218/jrl-cmakemodules"; license = lib.licenses.lgpl3Plus; maintainers = [ lib.maintainers.nim65s ]; + platforms = lib.platforms.all; }; } From 3cb8663422a3517782c0b2d574e778ae5177dd24 Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Tue, 27 Aug 2024 11:32:56 +0200 Subject: [PATCH 03/36] proxsuite: 0.6.6 -> 0.6.7 Diff: https://github.com/simple-robotics/proxsuite/compare/v0.6.6...v0.6.7 --- pkgs/by-name/pr/proxsuite/package.nix | 39 ++++++--------------------- 1 file changed, 8 insertions(+), 31 deletions(-) diff --git a/pkgs/by-name/pr/proxsuite/package.nix b/pkgs/by-name/pr/proxsuite/package.nix index dcaf8bc6f7f2..eb3b28d5520c 100644 --- a/pkgs/by-name/pr/proxsuite/package.nix +++ b/pkgs/by-name/pr/proxsuite/package.nix @@ -3,7 +3,7 @@ stdenv, fetchFromGitHub, fetchpatch, - cereal, + cereal_1_3_2, cmake, doxygen, eigen, @@ -15,47 +15,24 @@ }: stdenv.mkDerivation (finalAttrs: { pname = "proxsuite"; - version = "0.6.6"; + version = "0.6.7"; src = fetchFromGitHub { owner = "simple-robotics"; repo = "proxsuite"; rev = "v${finalAttrs.version}"; - hash = "sha256-3kzFYADk3sCMU827KowilPlmOqgv69DJ3mOb7623Qdg="; + hash = "sha256-iKc55WDHArmmIM//Wir6FHrNV84HnEDcBUlwnsbtMME="; }; patches = [ - # Allow use of system jrl-cmakemodules - # This was merged upstream, and can be removed on next release + # Fix use of system cereal + # This was merged upstream and can be removed on next release (fetchpatch { - url = "https://github.com/Simple-Robotics/proxsuite/pull/334/commits/2bcadd4993a9940c545136faa71bf1e97a972735.patch"; - hash = "sha256-BPtwogSwSXcEd5FM4eTTCq6LpGWvQ1SOCFmv/GVhl18="; - }) - # Allow use of system cereal - # This was merged upstream, and can be removed on next release - (fetchpatch { - url = "https://github.com/Simple-Robotics/proxsuite/pull/334/commits/878337c6284c9fd73b19f1f80d5fa802def8cdc6.patch"; - hash = "sha256-+HWYHLGtygjlvjM+FSD9WFDIwO+qPLlzci+7q42bo0I="; - }) - # Allow use of system pybind11 - # upstream will move to nanobind for next release, so this can be dismissed - (fetchpatch { - url = "https://github.com/Simple-Robotics/proxsuite/pull/337/commits/bbed9bdfb214da7c6c6909582971bd8b877f87c2.patch"; - hash = "sha256-pYikPZinjmk7gsagiaIcQspmGFYwlhdiKdZPnqo7pcQ="; + url = "https://github.com/Simple-Robotics/proxsuite/pull/352/commits/8305864f13ca7dff7210f89004a56652b71f8891.patch"; + hash = "sha256-XMS/zHFVrEp1P6aDlGrLbrcmuKq42+GdZRH9ObewNCY="; }) ]; - postPatch = '' - # discard failing tests for now - substituteInPlace test/CMakeLists.txt \ - --replace-fail "proxsuite_test(dense_maros_meszaros src/dense_maros_meszaros.cpp)" "" \ - --replace-fail "proxsuite_test(sparse_maros_meszaros src/sparse_maros_meszaros.cpp)" "" - - # fix CMake syntax - substituteInPlace bindings/python/CMakeLists.txt \ - --replace-fail "SYSTEM PRIVATE" "PRIVATE" - ''; - outputs = [ "doc" "out" @@ -78,7 +55,7 @@ stdenv.mkDerivation (finalAttrs: { doxygen ]; propagatedBuildInputs = [ - cereal + cereal_1_3_2 eigen jrl-cmakemodules simde From d33c80812d8aacfa4c68c0e2e7648ba5bd78305b Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Tue, 17 Sep 2024 15:44:33 +0200 Subject: [PATCH 04/36] proxsuite: fix doc --- pkgs/by-name/pr/proxsuite/package.nix | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/pkgs/by-name/pr/proxsuite/package.nix b/pkgs/by-name/pr/proxsuite/package.nix index eb3b28d5520c..248be6e3e1fa 100644 --- a/pkgs/by-name/pr/proxsuite/package.nix +++ b/pkgs/by-name/pr/proxsuite/package.nix @@ -7,6 +7,8 @@ cmake, doxygen, eigen, + fontconfig, + graphviz, jrl-cmakemodules, simde, matio, @@ -53,6 +55,7 @@ stdenv.mkDerivation (finalAttrs: { nativeBuildInputs = [ cmake doxygen + graphviz ]; propagatedBuildInputs = [ cereal_1_3_2 @@ -67,6 +70,12 @@ stdenv.mkDerivation (finalAttrs: { python3Packages.scipy ]; + # Fontconfig error: Cannot load default config file: No such file: (null) + env.FONTCONFIG_FILE = "${fontconfig.out}/etc/fonts/fonts.conf"; + + # Fontconfig error: No writable cache directories + preBuild = "export XDG_CACHE_HOME=$(mktemp -d)"; + doCheck = true; meta = { From f49ed4e558818197ab3576ed91d24d28d053e311 Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Tue, 17 Sep 2024 15:44:43 +0200 Subject: [PATCH 05/36] proxsuite: python import check --- pkgs/by-name/pr/proxsuite/package.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/by-name/pr/proxsuite/package.nix b/pkgs/by-name/pr/proxsuite/package.nix index 248be6e3e1fa..2727d13022f5 100644 --- a/pkgs/by-name/pr/proxsuite/package.nix +++ b/pkgs/by-name/pr/proxsuite/package.nix @@ -56,7 +56,7 @@ stdenv.mkDerivation (finalAttrs: { cmake doxygen graphviz - ]; + ] ++ lib.optional pythonSupport python3Packages.pythonImportsCheckHook; propagatedBuildInputs = [ cereal_1_3_2 eigen @@ -77,6 +77,7 @@ stdenv.mkDerivation (finalAttrs: { preBuild = "export XDG_CACHE_HOME=$(mktemp -d)"; doCheck = true; + pythonImportsCheck = [ "proxsuite" ]; meta = { description = "The Advanced Proximal Optimization Toolbox"; From f56b1eff0a48175c0d374ee64fd16f710abfa383 Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Tue, 17 Sep 2024 15:44:53 +0200 Subject: [PATCH 06/36] proxsuite: set platforms --- pkgs/by-name/pr/proxsuite/package.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/by-name/pr/proxsuite/package.nix b/pkgs/by-name/pr/proxsuite/package.nix index 2727d13022f5..6aba0e20c76e 100644 --- a/pkgs/by-name/pr/proxsuite/package.nix +++ b/pkgs/by-name/pr/proxsuite/package.nix @@ -84,5 +84,6 @@ stdenv.mkDerivation (finalAttrs: { homepage = "https://github.com/Simple-Robotics/proxsuite"; license = lib.licenses.bsd2; maintainers = with lib.maintainers; [ nim65s ]; + platforms = lib.platforms.unix; }; }) From 547fc589b92be01ac001fcff5587dc1cec6f66f8 Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Tue, 17 Sep 2024 15:49:24 +0200 Subject: [PATCH 07/36] hpp-fcl: use pythonImportsCheckHook --- pkgs/by-name/hp/hpp-fcl/package.nix | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/pkgs/by-name/hp/hpp-fcl/package.nix b/pkgs/by-name/hp/hpp-fcl/package.nix index 78ce6456c301..17812ffbea8d 100644 --- a/pkgs/by-name/hp/hpp-fcl/package.nix +++ b/pkgs/by-name/hp/hpp-fcl/package.nix @@ -31,7 +31,10 @@ stdenv.mkDerivation (finalAttrs: { nativeBuildInputs = [ cmake doxygen - ] ++ lib.optionals pythonSupport [ python3Packages.numpy ]; + ] ++ lib.optionals pythonSupport [ + python3Packages.numpy + python3Packages.pythonImportsCheckHook + ]; propagatedBuildInputs = [ @@ -56,11 +59,7 @@ stdenv.mkDerivation (finalAttrs: { ]; doCheck = true; - # pythonImportsCheck, but in stdenv.mkDerivation - postInstall = lib.optionalString pythonSupport '' - PYTHONPATH=$out/${python3Packages.python.sitePackages}:$PYTHONPATH - python -c "import hppfcl" - ''; + pythonImportsCheck = [ "hppfcl" ]; outputs = [ "dev" From 5edda6c9d0e137b725ede3f241c24dd2f2c83c24 Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Tue, 17 Sep 2024 15:49:36 +0200 Subject: [PATCH 08/36] hpp-fcl: set platforms --- pkgs/by-name/hp/hpp-fcl/package.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/by-name/hp/hpp-fcl/package.nix b/pkgs/by-name/hp/hpp-fcl/package.nix index 17812ffbea8d..1c20411b1184 100644 --- a/pkgs/by-name/hp/hpp-fcl/package.nix +++ b/pkgs/by-name/hp/hpp-fcl/package.nix @@ -76,5 +76,6 @@ stdenv.mkDerivation (finalAttrs: { homepage = "https://github.com/humanoid-path-planner/hpp-fcl"; license = lib.licenses.bsd3; maintainers = with lib.maintainers; [ nim65s ]; + platforms = lib.platforms.unix; }; }) From 92f4e6f3c344e60c244f1dbe4c638c27c2519627 Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Wed, 18 Sep 2024 10:19:22 +0200 Subject: [PATCH 09/36] hpp-fcl: format --- pkgs/by-name/hp/hpp-fcl/package.nix | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/pkgs/by-name/hp/hpp-fcl/package.nix b/pkgs/by-name/hp/hpp-fcl/package.nix index 1c20411b1184..80e715425034 100644 --- a/pkgs/by-name/hp/hpp-fcl/package.nix +++ b/pkgs/by-name/hp/hpp-fcl/package.nix @@ -28,13 +28,15 @@ stdenv.mkDerivation (finalAttrs: { strictDeps = true; - nativeBuildInputs = [ - cmake - doxygen - ] ++ lib.optionals pythonSupport [ - python3Packages.numpy - python3Packages.pythonImportsCheckHook - ]; + nativeBuildInputs = + [ + cmake + doxygen + ] + ++ lib.optionals pythonSupport [ + python3Packages.numpy + python3Packages.pythonImportsCheckHook + ]; propagatedBuildInputs = [ From 696bd353a6f6aa5b4accd95bc8a04852bf5fe6e1 Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Mon, 16 Sep 2024 08:56:16 +0200 Subject: [PATCH 10/36] pinocchio: set MPLCONFIGDIR in check fix: > Matplotlib created a temporary cache directory at > /private/tmp/nix-build-pinocchio-3.2.0.drv-0/matplotlib-cgeg512t > because the default path (/homeless-shelter/.matplotlib) is not a > writable directory; it is highly recommended to set the MPLCONFIGDIR > environment variable to a writable directory, in particular to speed > up the import of Matplotlib and to better support multiprocessing. --- pkgs/development/libraries/pinocchio/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/development/libraries/pinocchio/default.nix b/pkgs/development/libraries/pinocchio/default.nix index e03ac9ee854d..33fb913ca9e9 100644 --- a/pkgs/development/libraries/pinocchio/default.nix +++ b/pkgs/development/libraries/pinocchio/default.nix @@ -41,6 +41,9 @@ stdenv.mkDerivation (finalAttrs: { # allow package:// uri use in examples export ROS_PACKAGE_PATH=${example-robot-data}/share + + # silence matplotlib warning + export MPLCONFIGDIR=$(mktemp -d) ''; # CMAKE_BUILD_TYPE defaults to Release in this package, From 4b7ee3013e569488a9b587b9dde7f437e301fcd3 Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Mon, 16 Sep 2024 09:03:31 +0200 Subject: [PATCH 11/36] pinocchio: use pythonImportsCheckHook --- pkgs/development/libraries/pinocchio/default.nix | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/pkgs/development/libraries/pinocchio/default.nix b/pkgs/development/libraries/pinocchio/default.nix index 33fb913ca9e9..238ae8d46337 100644 --- a/pkgs/development/libraries/pinocchio/default.nix +++ b/pkgs/development/libraries/pinocchio/default.nix @@ -59,6 +59,7 @@ stdenv.mkDerivation (finalAttrs: { cmake ] ++ lib.optionals pythonSupport [ python3Packages.python + python3Packages.pythonImportsCheckHook ]; propagatedBuildInputs = [ @@ -91,12 +92,7 @@ stdenv.mkDerivation (finalAttrs: { ]; doCheck = true; - - # pythonImportsCheck, but in stdenv.mkDerivation - postInstall = lib.optionalString pythonSupport '' - PYTHONPATH=$out/${python3Packages.python.sitePackages}:$PYTHONPATH - python -c "import pinocchio" - ''; + pythonImportsCheck = [ "pinocchio" ]; meta = { description = "Fast and flexible implementation of Rigid Body Dynamics algorithms and their analytical derivatives"; From 49518d287b1f3221e6481e88192258f0a93cb690 Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Tue, 17 Sep 2024 15:52:06 +0200 Subject: [PATCH 12/36] pinocchio: move to pkgs/by-name --- .../pinocchio/default.nix => by-name/pi/pinocchio/package.nix} | 0 pkgs/top-level/all-packages.nix | 2 -- 2 files changed, 2 deletions(-) rename pkgs/{development/libraries/pinocchio/default.nix => by-name/pi/pinocchio/package.nix} (100%) diff --git a/pkgs/development/libraries/pinocchio/default.nix b/pkgs/by-name/pi/pinocchio/package.nix similarity index 100% rename from pkgs/development/libraries/pinocchio/default.nix rename to pkgs/by-name/pi/pinocchio/package.nix diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 03e316163bcd..02e5add33ed2 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -22977,8 +22977,6 @@ with pkgs; pingvin-share = callPackage ../servers/pingvin-share { }; - pinocchio = callPackage ../development/libraries/pinocchio { }; - pipelight = callPackage ../tools/misc/pipelight { stdenv = stdenv_32bit; wine-staging = pkgsi686Linux.wine-staging; From f048cdeba0b5112a95656e87979b168a8384d5c6 Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Tue, 17 Sep 2024 15:52:22 +0200 Subject: [PATCH 13/36] pinocchio: format --- pkgs/by-name/pi/pinocchio/package.nix | 87 ++++++++++++++------------- 1 file changed, 45 insertions(+), 42 deletions(-) diff --git a/pkgs/by-name/pi/pinocchio/package.nix b/pkgs/by-name/pi/pinocchio/package.nix index 238ae8d46337..ff1b5cf9572f 100644 --- a/pkgs/by-name/pi/pinocchio/package.nix +++ b/pkgs/by-name/pi/pinocchio/package.nix @@ -1,19 +1,20 @@ -{ lib -, stdenv -, fetchFromGitHub -, casadi -, cmake -, boost -, eigen -, example-robot-data -, casadiSupport ? true -, collisionSupport ? true -, console-bridge -, jrl-cmakemodules -, hpp-fcl -, urdfdom -, pythonSupport ? false -, python3Packages +{ + lib, + stdenv, + fetchFromGitHub, + casadi, + cmake, + boost, + eigen, + example-robot-data, + casadiSupport ? true, + collisionSupport ? true, + console-bridge, + jrl-cmakemodules, + hpp-fcl, + urdfdom, + pythonSupport ? false, + python3Packages, }: stdenv.mkDerivation (finalAttrs: { @@ -55,32 +56,31 @@ stdenv.mkDerivation (finalAttrs: { strictDeps = true; - nativeBuildInputs = [ - cmake - ] ++ lib.optionals pythonSupport [ - python3Packages.python - python3Packages.pythonImportsCheckHook - ]; + nativeBuildInputs = + [ cmake ] + ++ lib.optionals pythonSupport [ + python3Packages.python + python3Packages.pythonImportsCheckHook + ]; - propagatedBuildInputs = [ - console-bridge - jrl-cmakemodules - urdfdom - ] ++ lib.optionals (!pythonSupport) [ - boost - eigen - ] ++ lib.optionals (!pythonSupport && collisionSupport) [ - hpp-fcl - ] ++ lib.optionals pythonSupport [ - python3Packages.boost - python3Packages.eigenpy - ] ++ lib.optionals (pythonSupport && collisionSupport) [ - python3Packages.hpp-fcl - ] ++ lib.optionals (!pythonSupport && casadiSupport) [ - casadi - ] ++ lib.optionals (pythonSupport && casadiSupport) [ - python3Packages.casadi - ]; + propagatedBuildInputs = + [ + console-bridge + jrl-cmakemodules + urdfdom + ] + ++ lib.optionals (!pythonSupport) [ + boost + eigen + ] + ++ lib.optionals (!pythonSupport && collisionSupport) [ hpp-fcl ] + ++ lib.optionals pythonSupport [ + python3Packages.boost + python3Packages.eigenpy + ] + ++ lib.optionals (pythonSupport && collisionSupport) [ python3Packages.hpp-fcl ] + ++ lib.optionals (!pythonSupport && casadiSupport) [ casadi ] + ++ lib.optionals (pythonSupport && casadiSupport) [ python3Packages.casadi ]; checkInputs = lib.optionals (pythonSupport && casadiSupport) [ python3Packages.matplotlib ]; @@ -98,7 +98,10 @@ stdenv.mkDerivation (finalAttrs: { description = "Fast and flexible implementation of Rigid Body Dynamics algorithms and their analytical derivatives"; homepage = "https://github.com/stack-of-tasks/pinocchio"; license = lib.licenses.bsd2; - maintainers = with lib.maintainers; [ nim65s wegank ]; + maintainers = with lib.maintainers; [ + nim65s + wegank + ]; platforms = lib.platforms.unix; }; }) From da033dc206c64ba954d740f7f982db5028a19cfa Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Wed, 18 Sep 2024 12:20:46 +0200 Subject: [PATCH 14/36] pinocchio: build documentation --- pkgs/by-name/pi/pinocchio/package.nix | 32 ++++++++++++++++++--------- 1 file changed, 22 insertions(+), 10 deletions(-) diff --git a/pkgs/by-name/pi/pinocchio/package.nix b/pkgs/by-name/pi/pinocchio/package.nix index ff1b5cf9572f..e754078a3805 100644 --- a/pkgs/by-name/pi/pinocchio/package.nix +++ b/pkgs/by-name/pi/pinocchio/package.nix @@ -1,20 +1,22 @@ { - lib, - stdenv, - fetchFromGitHub, - casadi, - cmake, boost, - eigen, - example-robot-data, + casadi, casadiSupport ? true, + cmake, collisionSupport ? true, console-bridge, - jrl-cmakemodules, + doxygen, + eigen, + example-robot-data, + fetchFromGitHub, hpp-fcl, - urdfdom, + jrl-cmakemodules, + lib, + pkg-config, pythonSupport ? false, python3Packages, + stdenv, + urdfdom, }: stdenv.mkDerivation (finalAttrs: { @@ -28,6 +30,11 @@ stdenv.mkDerivation (finalAttrs: { hash = "sha256-8V+n1TwFojXKOVkGG8k9aXVadt2NBFlZKba93L+NRNU="; }; + outputs = [ + "out" + "doc" + ]; + # test failure, ref https://github.com/stack-of-tasks/pinocchio/issues/2277 prePatch = lib.optionalString (stdenv.isLinux && stdenv.isAarch64) '' substituteInPlace unittest/algorithm/utils/CMakeLists.txt \ @@ -57,7 +64,11 @@ stdenv.mkDerivation (finalAttrs: { strictDeps = true; nativeBuildInputs = - [ cmake ] + [ + cmake + doxygen + pkg-config + ] ++ lib.optionals pythonSupport [ python3Packages.python python3Packages.pythonImportsCheckHook @@ -89,6 +100,7 @@ stdenv.mkDerivation (finalAttrs: { (lib.cmakeBool "BUILD_WITH_LIBPYTHON" pythonSupport) (lib.cmakeBool "BUILD_WITH_CASADI_SUPPORT" casadiSupport) (lib.cmakeBool "BUILD_WITH_COLLISION_SUPPORT" collisionSupport) + (lib.cmakeBool "INSTALL_DOCUMENTATION" true) ]; doCheck = true; From 1e402edf61e73d7c77ef57b316a101e76bdb850e Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Mon, 1 Jul 2024 14:20:50 +0200 Subject: [PATCH 15/36] example-robot-data: propagate pinocchio --- pkgs/development/libraries/example-robot-data/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/libraries/example-robot-data/default.nix b/pkgs/development/libraries/example-robot-data/default.nix index d4211be982ef..39ccda1b6309 100644 --- a/pkgs/development/libraries/example-robot-data/default.nix +++ b/pkgs/development/libraries/example-robot-data/default.nix @@ -37,7 +37,7 @@ stdenv.mkDerivation (finalAttrs: { python3Packages.python ]; - buildInputs = lib.optionals pythonSupport [ + propagatedBuildInputs = lib.optionals pythonSupport [ python3Packages.pinocchio ]; From b94714421b4bcc18f7d2449c8f56f54e75ae2527 Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Tue, 17 Sep 2024 16:15:13 +0200 Subject: [PATCH 16/36] example-robot-data: use pythonImportsCheckHook --- pkgs/development/libraries/example-robot-data/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/libraries/example-robot-data/default.nix b/pkgs/development/libraries/example-robot-data/default.nix index 39ccda1b6309..a67c16cf0a4e 100644 --- a/pkgs/development/libraries/example-robot-data/default.nix +++ b/pkgs/development/libraries/example-robot-data/default.nix @@ -35,6 +35,7 @@ stdenv.mkDerivation (finalAttrs: { cmake ] ++ lib.optionals pythonSupport [ python3Packages.python + python3Packages.pythonImportsCheckHook ]; propagatedBuildInputs = lib.optionals pythonSupport [ From 85e430220204641cf2f7da5f635a3d0936b991b5 Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Tue, 17 Sep 2024 16:15:44 +0200 Subject: [PATCH 17/36] example-robot-data: clean cmakeFlags --- pkgs/development/libraries/example-robot-data/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/example-robot-data/default.nix b/pkgs/development/libraries/example-robot-data/default.nix index a67c16cf0a4e..551d7b72479d 100644 --- a/pkgs/development/libraries/example-robot-data/default.nix +++ b/pkgs/development/libraries/example-robot-data/default.nix @@ -42,8 +42,8 @@ stdenv.mkDerivation (finalAttrs: { python3Packages.pinocchio ]; - cmakeFlags = lib.optionals (!pythonSupport) [ - "-DBUILD_PYTHON_INTERFACE=OFF" + cmakeFlags = [ + (lib.cmakeBool "BUILD_PYTHON_INTERFACE" pythonSupport) ]; doCheck = true; From 1fd7006d7b5eaa6c28f9d748fb73bf6117571503 Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Tue, 17 Sep 2024 16:16:39 +0200 Subject: [PATCH 18/36] example-robot-data: move to pkgs/by-name --- .../default.nix => by-name/ex/example-robot-data/package.nix} | 0 pkgs/top-level/all-packages.nix | 2 -- 2 files changed, 2 deletions(-) rename pkgs/{development/libraries/example-robot-data/default.nix => by-name/ex/example-robot-data/package.nix} (100%) diff --git a/pkgs/development/libraries/example-robot-data/default.nix b/pkgs/by-name/ex/example-robot-data/package.nix similarity index 100% rename from pkgs/development/libraries/example-robot-data/default.nix rename to pkgs/by-name/ex/example-robot-data/package.nix diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 02e5add33ed2..ab75913571da 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -19832,8 +19832,6 @@ with pkgs; libesmtp = callPackage ../development/libraries/libesmtp { }; - example-robot-data = callPackage ../development/libraries/example-robot-data { }; - exiv2 = callPackage ../development/libraries/exiv2 { }; expat = callPackage ../development/libraries/expat { }; From 9d0031ed340620c104b2d1f8a3069a110804b535 Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Tue, 17 Sep 2024 16:16:53 +0200 Subject: [PATCH 19/36] example-robot-data: format --- .../by-name/ex/example-robot-data/package.nix | 44 +++++++++---------- 1 file changed, 21 insertions(+), 23 deletions(-) diff --git a/pkgs/by-name/ex/example-robot-data/package.nix b/pkgs/by-name/ex/example-robot-data/package.nix index 551d7b72479d..a63fafed7fd4 100644 --- a/pkgs/by-name/ex/example-robot-data/package.nix +++ b/pkgs/by-name/ex/example-robot-data/package.nix @@ -1,10 +1,11 @@ -{ lib -, stdenv -, fetchFromGitHub -, fetchpatch -, cmake -, pythonSupport ? false -, python3Packages +{ + lib, + stdenv, + fetchFromGitHub, + fetchpatch, + cmake, + pythonSupport ? false, + python3Packages, }: stdenv.mkDerivation (finalAttrs: { @@ -31,35 +32,32 @@ stdenv.mkDerivation (finalAttrs: { }) ]; - nativeBuildInputs = [ - cmake - ] ++ lib.optionals pythonSupport [ - python3Packages.python - python3Packages.pythonImportsCheckHook - ]; + nativeBuildInputs = + [ cmake ] + ++ lib.optionals pythonSupport [ + python3Packages.python + python3Packages.pythonImportsCheckHook + ]; - propagatedBuildInputs = lib.optionals pythonSupport [ - python3Packages.pinocchio - ]; + propagatedBuildInputs = lib.optionals pythonSupport [ python3Packages.pinocchio ]; - cmakeFlags = [ - (lib.cmakeBool "BUILD_PYTHON_INTERFACE" pythonSupport) - ]; + cmakeFlags = [ (lib.cmakeBool "BUILD_PYTHON_INTERFACE" pythonSupport) ]; doCheck = true; # The package expect to find an `example-robot-data/robots` folder somewhere # either in install prefix or in the sources # where it can find the meshes for unit tests preCheck = "ln -s source ../../${finalAttrs.pname}"; - pythonImportsCheck = [ - "example_robot_data" - ]; + pythonImportsCheck = [ "example_robot_data" ]; meta = with lib; { description = "Set of robot URDFs for benchmarking and developed examples"; homepage = "https://github.com/Gepetto/example-robot-data"; license = licenses.bsd3; - maintainers = with maintainers; [ nim65s wegank ]; + maintainers = with maintainers; [ + nim65s + wegank + ]; platforms = platforms.unix; }; }) From e84ff8070a8e9860c7d2d1ac4a6679d6cba975fc Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Wed, 18 Sep 2024 12:17:20 +0200 Subject: [PATCH 20/36] example-robot-data: build documentation --- .../by-name/ex/example-robot-data/package.nix | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/pkgs/by-name/ex/example-robot-data/package.nix b/pkgs/by-name/ex/example-robot-data/package.nix index a63fafed7fd4..63331bbf5a84 100644 --- a/pkgs/by-name/ex/example-robot-data/package.nix +++ b/pkgs/by-name/ex/example-robot-data/package.nix @@ -1,11 +1,13 @@ { - lib, - stdenv, + cmake, + doxygen, fetchFromGitHub, fetchpatch, - cmake, + lib, + pkg-config, pythonSupport ? false, python3Packages, + stdenv, }: stdenv.mkDerivation (finalAttrs: { @@ -20,6 +22,11 @@ stdenv.mkDerivation (finalAttrs: { hash = "sha256-Heq+c8SSYNO8ksTv5FphRBRStlTakm9T66jlPXon5tI="; }; + outputs = [ + "out" + "doc" + ]; + strictDeps = true; patches = [ @@ -33,7 +40,11 @@ stdenv.mkDerivation (finalAttrs: { ]; nativeBuildInputs = - [ cmake ] + [ + cmake + doxygen + pkg-config + ] ++ lib.optionals pythonSupport [ python3Packages.python python3Packages.pythonImportsCheckHook From 5c9dd453f88acc4b731ac653d67873a83cd28f32 Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Tue, 17 Sep 2024 15:53:08 +0200 Subject: [PATCH 21/36] crocoddyl: use pythonImportsCheckHook --- pkgs/development/libraries/crocoddyl/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/libraries/crocoddyl/default.nix b/pkgs/development/libraries/crocoddyl/default.nix index 046a6a014d1a..ac6efdc90c89 100644 --- a/pkgs/development/libraries/crocoddyl/default.nix +++ b/pkgs/development/libraries/crocoddyl/default.nix @@ -25,6 +25,7 @@ stdenv.mkDerivation (finalAttrs: { cmake ] ++ lib.optionals pythonSupport [ python3Packages.python + python3Packages.pythonImportsCheckHook ]; propagatedBuildInputs = lib.optionals (!pythonSupport) [ From 17d7e76bbdd31d6cc2be1d9705b8d8dcfee3de41 Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Tue, 17 Sep 2024 15:54:22 +0200 Subject: [PATCH 22/36] crocoddyl: move to pkgs/by-name --- .../crocoddyl/default.nix => by-name/cr/crocoddyl/package.nix} | 0 pkgs/top-level/all-packages.nix | 2 -- 2 files changed, 2 deletions(-) rename pkgs/{development/libraries/crocoddyl/default.nix => by-name/cr/crocoddyl/package.nix} (100%) diff --git a/pkgs/development/libraries/crocoddyl/default.nix b/pkgs/by-name/cr/crocoddyl/package.nix similarity index 100% rename from pkgs/development/libraries/crocoddyl/default.nix rename to pkgs/by-name/cr/crocoddyl/package.nix diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index ab75913571da..9ae026075589 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -19663,8 +19663,6 @@ with pkgs; croaring = callPackage ../development/libraries/croaring { }; - crocoddyl = callPackage ../development/libraries/crocoddyl { }; - crossguid = callPackage ../development/libraries/crossguid { }; cryptopp = callPackage ../development/libraries/crypto++ { }; From f13a44ac822377063ed16e3f51088241ec12793b Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Tue, 17 Sep 2024 15:54:31 +0200 Subject: [PATCH 23/36] crocoddyl: format --- pkgs/by-name/cr/crocoddyl/package.nix | 58 ++++++++++++++------------- 1 file changed, 30 insertions(+), 28 deletions(-) diff --git a/pkgs/by-name/cr/crocoddyl/package.nix b/pkgs/by-name/cr/crocoddyl/package.nix index ac6efdc90c89..dba1442ac0ae 100644 --- a/pkgs/by-name/cr/crocoddyl/package.nix +++ b/pkgs/by-name/cr/crocoddyl/package.nix @@ -1,11 +1,12 @@ -{ lib -, stdenv -, fetchFromGitHub -, cmake -, example-robot-data -, pinocchio -, pythonSupport ? false -, python3Packages +{ + lib, + stdenv, + fetchFromGitHub, + cmake, + example-robot-data, + pinocchio, + pythonSupport ? false, + python3Packages, }: stdenv.mkDerivation (finalAttrs: { @@ -21,20 +22,22 @@ stdenv.mkDerivation (finalAttrs: { strictDeps = true; - nativeBuildInputs = [ - cmake - ] ++ lib.optionals pythonSupport [ - python3Packages.python - python3Packages.pythonImportsCheckHook - ]; + nativeBuildInputs = + [ cmake ] + ++ lib.optionals pythonSupport [ + python3Packages.python + python3Packages.pythonImportsCheckHook + ]; - propagatedBuildInputs = lib.optionals (!pythonSupport) [ - example-robot-data - pinocchio - ] ++ lib.optionals pythonSupport [ - python3Packages.example-robot-data - python3Packages.pinocchio - ]; + propagatedBuildInputs = + lib.optionals (!pythonSupport) [ + example-robot-data + pinocchio + ] + ++ lib.optionals pythonSupport [ + python3Packages.example-robot-data + python3Packages.pinocchio + ]; cmakeFlags = lib.optionals (!pythonSupport) [ "-DBUILD_EXAMPLES=OFF" @@ -49,18 +52,17 @@ stdenv.mkDerivation (finalAttrs: { ''; doCheck = true; - pythonImportsCheck = [ - "crocoddyl" - ]; - checkInputs = lib.optionals pythonSupport [ - python3Packages.scipy - ]; + pythonImportsCheck = [ "crocoddyl" ]; + checkInputs = lib.optionals pythonSupport [ python3Packages.scipy ]; meta = with lib; { description = "Crocoddyl optimal control library"; homepage = "https://github.com/loco-3d/crocoddyl"; license = licenses.bsd3; - maintainers = with maintainers; [ nim65s wegank ]; + maintainers = with maintainers; [ + nim65s + wegank + ]; platforms = platforms.unix; }; }) From a8dfcd8732924e10ff3c79a2ade4d9953fdaeced Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Wed, 18 Sep 2024 11:52:04 +0200 Subject: [PATCH 24/36] crocoddyl: build documentation --- pkgs/by-name/cr/crocoddyl/package.nix | 26 +++++++++++++++++++------- 1 file changed, 19 insertions(+), 7 deletions(-) diff --git a/pkgs/by-name/cr/crocoddyl/package.nix b/pkgs/by-name/cr/crocoddyl/package.nix index dba1442ac0ae..28f59d44d3e4 100644 --- a/pkgs/by-name/cr/crocoddyl/package.nix +++ b/pkgs/by-name/cr/crocoddyl/package.nix @@ -1,12 +1,14 @@ { - lib, - stdenv, - fetchFromGitHub, cmake, + doxygen, example-robot-data, + fetchFromGitHub, + lib, pinocchio, + pkg-config, pythonSupport ? false, python3Packages, + stdenv, }: stdenv.mkDerivation (finalAttrs: { @@ -20,10 +22,19 @@ stdenv.mkDerivation (finalAttrs: { hash = "sha256-SVV9sleDXLm2QJmNgL25XLHC3y5bfKab4GSlE8jbT8w="; }; + outputs = [ + "out" + "doc" + ]; + strictDeps = true; nativeBuildInputs = - [ cmake ] + [ + cmake + doxygen + pkg-config + ] ++ lib.optionals pythonSupport [ python3Packages.python python3Packages.pythonImportsCheckHook @@ -39,9 +50,10 @@ stdenv.mkDerivation (finalAttrs: { python3Packages.pinocchio ]; - cmakeFlags = lib.optionals (!pythonSupport) [ - "-DBUILD_EXAMPLES=OFF" - "-DBUILD_PYTHON_INTERFACE=OFF" + cmakeFlags = [ + (lib.cmakeBool "INSTALL_DOCUMENTATION" true) + (lib.cmakeBool "BUILD_EXAMPLES" pythonSupport) + (lib.cmakeBool "BUILD_PYTHON_INTERFACE" pythonSupport) ]; prePatch = '' From f25bd60c8acd77ce2942ec3cc3262a9cb3ca59c0 Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Wed, 18 Sep 2024 11:52:42 +0200 Subject: [PATCH 25/36] crocoddyl: update substituteInPlace use --- pkgs/by-name/cr/crocoddyl/package.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/by-name/cr/crocoddyl/package.nix b/pkgs/by-name/cr/crocoddyl/package.nix index 28f59d44d3e4..3dd3058460ff 100644 --- a/pkgs/by-name/cr/crocoddyl/package.nix +++ b/pkgs/by-name/cr/crocoddyl/package.nix @@ -60,7 +60,7 @@ stdenv.mkDerivation (finalAttrs: { substituteInPlace \ examples/CMakeLists.txt \ examples/log/check_logfiles.sh \ - --replace /bin/bash ${stdenv.shell} + --replace-fail /bin/bash ${stdenv.shell} ''; doCheck = true; From a2e568bb557fed13aec0de8f815a3c95bb50b6e9 Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Wed, 18 Sep 2024 12:08:41 +0200 Subject: [PATCH 26/36] crocoddyl: add optional dependencies --- pkgs/by-name/cr/crocoddyl/package.nix | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/pkgs/by-name/cr/crocoddyl/package.nix b/pkgs/by-name/cr/crocoddyl/package.nix index 3dd3058460ff..a1a283727743 100644 --- a/pkgs/by-name/cr/crocoddyl/package.nix +++ b/pkgs/by-name/cr/crocoddyl/package.nix @@ -1,8 +1,11 @@ { + blas, cmake, doxygen, example-robot-data, fetchFromGitHub, + ipopt, + lapack, lib, pinocchio, pkg-config, @@ -41,13 +44,19 @@ stdenv.mkDerivation (finalAttrs: { ]; propagatedBuildInputs = - lib.optionals (!pythonSupport) [ + [ + blas + ipopt + lapack + ] + ++ lib.optionals (!pythonSupport) [ example-robot-data pinocchio ] ++ lib.optionals pythonSupport [ python3Packages.example-robot-data python3Packages.pinocchio + python3Packages.scipy ]; cmakeFlags = [ From 641aa81f638b75ab44b2220441c39c5084f22707 Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Tue, 17 Sep 2024 15:56:10 +0200 Subject: [PATCH 27/36] eiquadprog: set platforms --- pkgs/by-name/ei/eiquadprog/package.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/by-name/ei/eiquadprog/package.nix b/pkgs/by-name/ei/eiquadprog/package.nix index 9380e7f9d2bf..40696872fce9 100644 --- a/pkgs/by-name/ei/eiquadprog/package.nix +++ b/pkgs/by-name/ei/eiquadprog/package.nix @@ -34,5 +34,6 @@ stdenv.mkDerivation (finalAttrs: { changelog = "https://github.com/stack-of-tasks/eiquadprog/blob/v${finalAttrs.version}/CHANGELOG.md"; license = lib.licenses.gpl3Only; maintainers = with lib.maintainers; [ nim65s ]; + platforms = lib.platforms.unix; }; }) From 784a937962b8488ca51aaecaa6232d0efa5fe0a2 Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Wed, 18 Sep 2024 12:14:59 +0200 Subject: [PATCH 28/36] eiquadprog: build documentation --- pkgs/by-name/ei/eiquadprog/package.nix | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/pkgs/by-name/ei/eiquadprog/package.nix b/pkgs/by-name/ei/eiquadprog/package.nix index 40696872fce9..70242a2aa9a0 100644 --- a/pkgs/by-name/ei/eiquadprog/package.nix +++ b/pkgs/by-name/ei/eiquadprog/package.nix @@ -1,10 +1,12 @@ { boost, cmake, + doxygen, eigen, fetchFromGitHub, jrl-cmakemodules, lib, + pkg-config, stdenv, }: @@ -19,8 +21,15 @@ stdenv.mkDerivation (finalAttrs: { hash = "sha256-VqRx06sCCZrnB+NWm6Z9OMKzjKQIydGgKQU6fMY7phk="; }; + outputs = [ + "out" + "doc" + ]; + nativeBuildInputs = [ cmake + doxygen + pkg-config jrl-cmakemodules ]; propagatedBuildInputs = [ eigen ]; From 26f9c195cc10d412e01fb97afdf9f56e07057dd3 Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Wed, 18 Sep 2024 23:28:08 +0200 Subject: [PATCH 29/36] tsid: set platforms --- pkgs/by-name/ts/tsid/package.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/by-name/ts/tsid/package.nix b/pkgs/by-name/ts/tsid/package.nix index 054857f8b222..80a5e1346bf2 100644 --- a/pkgs/by-name/ts/tsid/package.nix +++ b/pkgs/by-name/ts/tsid/package.nix @@ -62,5 +62,6 @@ stdenv.mkDerivation (finalAttrs: { homepage = "https://github.com/stack-of-tasks/tsid"; license = lib.licenses.bsd2; maintainers = with lib.maintainers; [ nim65s ]; + platforms = lib.platforms.unix; }; }) From ad86b6f652c493cf8a7715b8eccdd5512d52c0b1 Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Wed, 18 Sep 2024 23:28:46 +0200 Subject: [PATCH 30/36] tsid: use pythonImportsCheckHook --- pkgs/by-name/ts/tsid/package.nix | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/pkgs/by-name/ts/tsid/package.nix b/pkgs/by-name/ts/tsid/package.nix index 80a5e1346bf2..d1413f072d2e 100644 --- a/pkgs/by-name/ts/tsid/package.nix +++ b/pkgs/by-name/ts/tsid/package.nix @@ -36,11 +36,16 @@ stdenv.mkDerivation (finalAttrs: { "out" ]; - nativeBuildInputs = [ - doxygen - cmake - pkg-config - ] ++ lib.optional pythonSupport python3Packages.python; + nativeBuildInputs = + [ + doxygen + cmake + pkg-config + ] + ++ lib.optionals pythonSupport [ + python3Packages.python + python3Packages.pythonImportsCheckHook + ]; propagatedBuildInputs = [ @@ -51,11 +56,7 @@ stdenv.mkDerivation (finalAttrs: { ++ lib.optional (!pythonSupport) pinocchio ++ lib.optional pythonSupport python3Packages.pinocchio; doCheck = true; - # pythonImportsCheck, but in stdenv.mkDerivation - postInstall = lib.optionalString pythonSupport '' - PYTHONPATH=$out/${python3Packages.python.sitePackages}:$PYTHONPATH - python -c "import tsid" - ''; + pythonImportsCheck = [ "tsid" ]; meta = { description = "Efficient Task Space Inverse Dynamics (TSID) based on Pinocchio"; From c2a7f3309661ddc008553e891360c65e0c283200 Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Wed, 18 Sep 2024 23:29:14 +0200 Subject: [PATCH 31/36] tsid: outputs out first --- pkgs/by-name/ts/tsid/package.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/by-name/ts/tsid/package.nix b/pkgs/by-name/ts/tsid/package.nix index d1413f072d2e..0bd4b08b6025 100644 --- a/pkgs/by-name/ts/tsid/package.nix +++ b/pkgs/by-name/ts/tsid/package.nix @@ -32,8 +32,8 @@ stdenv.mkDerivation (finalAttrs: { ]; outputs = [ - "doc" "out" + "doc" ]; nativeBuildInputs = From 22e19d0b933f6ca61b9f2221e96d7a5a66f17090 Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Thu, 12 Sep 2024 11:32:04 +0200 Subject: [PATCH 32/36] aligator: init at v0.7.0 --- pkgs/by-name/al/aligator/package.nix | 97 ++++++++++++++++++++++++++++ pkgs/top-level/python-packages.nix | 5 ++ 2 files changed, 102 insertions(+) create mode 100644 pkgs/by-name/al/aligator/package.nix diff --git a/pkgs/by-name/al/aligator/package.nix b/pkgs/by-name/al/aligator/package.nix new file mode 100644 index 000000000000..8b0eb712ce2e --- /dev/null +++ b/pkgs/by-name/al/aligator/package.nix @@ -0,0 +1,97 @@ +{ + cmake, + crocoddyl, + doxygen, + fetchFromGitHub, + fmt, + fontconfig, + gbenchmark, + graphviz, + lib, + llvmPackages, # llvm/Support/Host.h required by casadi 3.6.5 and not available in llvm 18 + pinocchio, + pkg-config, + proxsuite-nlp, + python3Packages, + pythonSupport ? false, + stdenv, + suitesparse, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "aligator"; + version = "0.7.0"; + + src = fetchFromGitHub { + owner = "Simple-Robotics"; + repo = "aligator"; + rev = "v${finalAttrs.version}"; + hash = "sha256-397WWL3hb5Q/mic54s5LUuz54bh7vwG53WIq5ljDe7g="; + }; + + outputs = [ + "doc" + "out" + ]; + + strictDeps = true; + + nativeBuildInputs = [ + doxygen + cmake + graphviz + pkg-config + ] ++ lib.optional pythonSupport python3Packages.pythonImportsCheckHook; + buildInputs = [ fmt ] ++ lib.optional stdenv.isDarwin llvmPackages.openmp; + propagatedBuildInputs = + [ suitesparse ] + ++ lib.optionals pythonSupport [ + python3Packages.crocoddyl + python3Packages.matplotlib + python3Packages.pinocchio + python3Packages.proxsuite-nlp + ] + ++ lib.optionals (!pythonSupport) [ + crocoddyl + pinocchio + proxsuite-nlp + ]; + checkInputs = + [ gbenchmark ] + ++ lib.optionals pythonSupport [ + python3Packages.matplotlib + python3Packages.pytest + ]; + + cmakeFlags = + [ + (lib.cmakeBool "BUILD_PYTHON_INTERFACE" pythonSupport) + (lib.cmakeBool "BUILD_WITH_PINOCCHIO_SUPPORT" true) + (lib.cmakeBool "BUILD_CROCODDYL_COMPAT" true) + (lib.cmakeBool "BUILD_WITH_OPENMP_SUPPORT" true) + (lib.cmakeBool "BUILD_WITH_CHOLMOD_SUPPORT" true) + (lib.cmakeBool "GENERATE_PYTHON_STUBS" false) # this need git at configure time + ] + ++ lib.optionals (stdenv.hostPlatform.isDarwin && pythonSupport) [ + # ignore one failing test for now + (lib.cmakeFeature "CMAKE_CTEST_ARGUMENTS" "--exclude-regex;aligator-test-py-integrators") + ]; + + # Fontconfig error: Cannot load default config file: No such file: (null) + env.FONTCONFIG_FILE = "${fontconfig.out}/etc/fonts/fonts.conf"; + + # Fontconfig error: No writable cache directories + preBuild = "export XDG_CACHE_HOME=$(mktemp -d)"; + + doCheck = true; + pythonImportsCheck = [ "aligator" ]; + + meta = { + description = "Versatile and efficient framework for constrained trajectory optimization"; + homepage = "https://github.com/Simple-Robotics/aligator"; + changelog = "https://github.com/Simple-Robotics/aligator/blob/v${finalAttrs.version}/CHANGELOG.md"; + license = lib.licenses.bsd2; + maintainers = with lib.maintainers; [ nim65s ]; + platforms = lib.platforms.unix; + }; +}) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 6e673f7f6a83..e4468a54ad4f 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -521,6 +521,11 @@ self: super: with self; { algebraic-data-types = callPackage ../development/python-modules/algebraic-data-types { }; + aligator = toPythonModule (pkgs.aligator.override { + python3Packages = self; + pythonSupport = true; + }); + alive-progress = callPackage ../development/python-modules/alive-progress { }; aliyun-python-sdk-cdn = callPackage ../development/python-modules/aliyun-python-sdk-cdn { }; From d69eafbf4856045ba6fea3bf6c1989aa06813fea Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Tue, 17 Sep 2024 11:56:42 +0200 Subject: [PATCH 33/36] proxsuite-nlp: 0.7.1 -> 0.8.0 Diff: https://github.com/Simple-Robotics/proxsuite-nlp/compare/v0.7.1...v0.8.0 Changelog: https://github.com/Simple-Robotics/proxsuite-nlp/blob/v0.8.0/CHANGELOG.md --- pkgs/by-name/pr/proxsuite-nlp/package.nix | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/pkgs/by-name/pr/proxsuite-nlp/package.nix b/pkgs/by-name/pr/proxsuite-nlp/package.nix index 234cc93febc7..211d9a634063 100644 --- a/pkgs/by-name/pr/proxsuite-nlp/package.nix +++ b/pkgs/by-name/pr/proxsuite-nlp/package.nix @@ -19,13 +19,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "proxsuite-nlp"; - version = "0.7.1"; + version = "0.8.0"; src = fetchFromGitHub { owner = "Simple-Robotics"; repo = "proxsuite-nlp"; rev = "v${finalAttrs.version}"; - hash = "sha256-aMTEjAu1ltjorx5vhz7klB0cGgdm+7STAPhi+NA6mnI="; + hash = "sha256-Dy8+pPTv/B6vVdpGndVOV16WSLiENJfaIrn1+FYwcI0="; }; outputs = [ @@ -37,14 +37,8 @@ stdenv.mkDerivation (finalAttrs: { # Fix use of system jrl-cmakemodules # This patch was merged upstream and can be removed on next release (fetchpatch { - url = "https://github.com/Simple-Robotics/proxsuite-nlp/pull/106/commits/c653ab67860fdf7b53b1a919f0b8a7746eba016b.patch"; - hash = "sha256-Kw2obJGOWms/Lr4cVkLFpaLTickCq5WQyDVbwi8Bd58="; - }) - # Fix use of system EigenRand - # This patch was merged upstream and can be removed on next release - (fetchpatch { - url = "https://github.com/Simple-Robotics/proxsuite-nlp/pull/106/commits/25370417755f003708b5b2b81e253797e8d96928.patch"; - hash = "sha256-PKijVmttt5JakF3X/GiVWptncxHJUbs/aikgwgB5NME="; + url = "https://github.com/Simple-Robotics/proxsuite-nlp/pull/109/commits/9bf741ce6010052a773071472891f42adc6cbbea.patch"; + hash = "sha256-sluMVrTw7EXLFa0dqkoZTkpGjKe7zODqIqbJxCdfSwY="; }) ]; From 4908d90b1a8c7a4f4a5400fe3e8b67c009f46b24 Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Thu, 19 Sep 2024 01:14:04 +0200 Subject: [PATCH 34/36] proxsuite-nlp: outputs out first --- pkgs/by-name/pr/proxsuite-nlp/package.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/by-name/pr/proxsuite-nlp/package.nix b/pkgs/by-name/pr/proxsuite-nlp/package.nix index 211d9a634063..194ff2fe967d 100644 --- a/pkgs/by-name/pr/proxsuite-nlp/package.nix +++ b/pkgs/by-name/pr/proxsuite-nlp/package.nix @@ -29,8 +29,8 @@ stdenv.mkDerivation (finalAttrs: { }; outputs = [ - "doc" "out" + "doc" ]; patches = [ From 08c9dcf9621a1f85ef29d8ac12d4c08040d2840d Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Thu, 19 Sep 2024 01:15:50 +0200 Subject: [PATCH 35/36] aligator: 0.7.0 -> 0.8.0 Diff: https://github.com/Simple-Robotics/aligator/compare/v0.7.0...v0.8.0 Changelog: https://github.com/Simple-Robotics/aligator/blob/v0.8.0/CHANGELOG.md --- pkgs/by-name/al/aligator/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/al/aligator/package.nix b/pkgs/by-name/al/aligator/package.nix index 8b0eb712ce2e..53346434be78 100644 --- a/pkgs/by-name/al/aligator/package.nix +++ b/pkgs/by-name/al/aligator/package.nix @@ -20,13 +20,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "aligator"; - version = "0.7.0"; + version = "0.8.0"; src = fetchFromGitHub { owner = "Simple-Robotics"; repo = "aligator"; rev = "v${finalAttrs.version}"; - hash = "sha256-397WWL3hb5Q/mic54s5LUuz54bh7vwG53WIq5ljDe7g="; + hash = "sha256-o4QjxTaZUa17hZsCv4hCI2cedaHoojBtLe8SVUkl0bo="; }; outputs = [ From 5108a107b244c127ea2d1097a8322ff06aebaab5 Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Thu, 19 Sep 2024 15:11:45 +0200 Subject: [PATCH 36/36] python3Packages.eigenpy: 3.9.0 -> 3.9.1 Diff: https://github.com/stack-of-tasks/eigenpy/compare/refs/tags/v3.9.0...v3.9.1 Changelog: https://github.com/stack-of-tasks/eigenpy/releases/tag/v3.9.1 --- pkgs/development/python-modules/eigenpy/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/eigenpy/default.nix b/pkgs/development/python-modules/eigenpy/default.nix index 41066ba788a6..e45b5424a4b0 100644 --- a/pkgs/development/python-modules/eigenpy/default.nix +++ b/pkgs/development/python-modules/eigenpy/default.nix @@ -13,14 +13,14 @@ buildPythonPackage rec { pname = "eigenpy"; - version = "3.9.0"; + version = "3.9.1"; pyproject = false; # Built with cmake src = fetchFromGitHub { owner = "stack-of-tasks"; repo = "eigenpy"; rev = "refs/tags/v${version}"; - hash = "sha256-fJLX3ZhcgevXcXkR00fzDh9LtfMwaHsJWQgUexmuKLc="; + hash = "sha256-nRslQMnVaVN7S20RuJDp+e9p+oMhsR03EjHYpvkuBYk="; }; outputs = [