diff --git a/module.nix b/module.nix index 38dab1b..40ed340 100644 --- a/module.nix +++ b/module.nix @@ -196,6 +196,7 @@ in mc-hrp2 mc-hrp4 mc-hrp5-p + mc-miroki ]; controllers = [ robogami-controller ]; }; @@ -367,11 +368,22 @@ in ; }) (lib.optionalAttrs cfg.overlays.private { + inherit (pkgs) + hrp2-description + hrp4-description + hrp5-p-description + rhps1-description + miroki-description + ; inherit (pkgs) mc-hrp2 mc-hrp4 mc-hrp5-p mc-rhps1 + mc-miroki + ; + + inherit (pkgs) tasks-lssol politopix mc-dynamic-polytopes diff --git a/overlay-private.nix b/overlay-private.nix index 654a085..ffe6ead 100644 --- a/overlay-private.nix +++ b/overlay-private.nix @@ -14,10 +14,12 @@ hrp4-description = callWithRos ./pkgs/mc-rtc/robots/descriptions/hrp4-description.nix { }; hrp5-p-description = callWithRos ./pkgs/mc-rtc/robots/descriptions/hrp5-p-description.nix { }; rhps1-description = callWithRos ./pkgs/mc-rtc/robots/descriptions/rhps1-description.nix { }; + miroki-description = callWithRos ./pkgs/mc-rtc/robots/descriptions/miroki-description.nix { }; mc-hrp2 = prev.callPackage ./pkgs/mc-rtc/robots/modules/mc-hrp2.nix { }; mc-hrp4 = prev.callPackage ./pkgs/mc-rtc/robots/modules/mc-hrp4.nix { }; mc-hrp5-p = prev.callPackage ./pkgs/mc-rtc/robots/modules/mc-hrp5-p.nix { }; mc-rhps1 = prev.callPackage ./pkgs/mc-rtc/robots/modules/mc-rhps1.nix { }; + mc-miroki = prev.callPackage ./pkgs/mc-rtc/robots/modules/mc-miroki.nix { }; rhps1-mj-description = prev.callPackage ./pkgs/mc-rtc/mc-mujoco/robots/rhps1-mj-description.nix { }; hrp4-mj-description = prev.callPackage ./pkgs/mc-rtc/mc-mujoco/robots/hrp4-mj-description.nix { }; diff --git a/pkgs/mc-rtc/robots/descriptions/miroki-description.nix b/pkgs/mc-rtc/robots/descriptions/miroki-description.nix new file mode 100644 index 0000000..8b5b048 --- /dev/null +++ b/pkgs/mc-rtc/robots/descriptions/miroki-description.nix @@ -0,0 +1,40 @@ +{ + stdenv, + lib, + cmake, + with-ros ? true, + ament-cmake, + buildRosPackage, +}: + +(if with-ros then buildRosPackage else stdenv.mkDerivation) { + pname = "miroki-description"; + version = "0.0.0"; + separateDebugInfo = false; + + src = fetchGit { + url = "git@github.com:isri-aist/miroki_description"; + rev = "294ccaceb61f331902c5117558ddb4af82836074"; + }; + + buildType = "ament_cmake"; + nativeBuildInputs = if with-ros then [ ament-cmake ] else [ cmake ]; + propagatedBuildInputs = [ ]; + + preConfigure = '' + export ROS_VERSION=2 + ''; + + cmakeFlags = lib.optional (!with-ros) "-DDISABLE_ROS=ON" ++ [ + "-DBUILD_TESTING=OFF" + ]; + + doCheck = false; + + meta = with lib; { + description = "miroki robot description for mc_rtc"; + homepage = "https://github.com/isri-aist/miroki_description"; + license = licenses.bsd2; + platforms = platforms.all; + }; +} diff --git a/pkgs/mc-rtc/robots/modules/mc-miroki.nix b/pkgs/mc-rtc/robots/modules/mc-miroki.nix new file mode 100644 index 0000000..e458dd8 --- /dev/null +++ b/pkgs/mc-rtc/robots/modules/mc-miroki.nix @@ -0,0 +1,35 @@ +{ + stdenv, + lib, + cmake, + mc-rtc, + miroki-description, +}: +stdenv.mkDerivation { + pname = "mc-miroki"; + version = "0.0.0"; + + src = fetchGit { + url = "git@github.com:isri-aist/mc_miroki"; + rev = "f783343513a9beab86c33ce286e49f7291ed963e"; + }; + + nativeBuildInputs = [ cmake ]; + propagatedBuildInputs = [ + mc-rtc + miroki-description + ]; + + cmakeFlags = [ + "-DMC_RTC_HONOR_INSTALL_PREFIX=ON" + ]; + + doCheck = false; + + meta = with lib; { + description = "Miroki robot module for mc_rtc"; + homepage = "https://github.com/isri-aist/mc_miroki"; + license = licenses.bsd2; + platforms = platforms.all; + }; +}