diff --git a/env_manager b/env_manager index d3d1935..e192f74 160000 --- a/env_manager +++ b/env_manager @@ -1 +1 @@ -Subproject commit d3d19355683338c8c013fde5a7a5c6ebcd73d0f7 +Subproject commit e192f74b8c77682dd36aca44c7be076b95d16c16 diff --git a/flake.nix b/flake.nix new file mode 100644 index 0000000..c70846d --- /dev/null +++ b/flake.nix @@ -0,0 +1,94 @@ +{ + inputs = { + nix-ros-overlay.url = "github:lopsided98/nix-ros-overlay/develop"; + nixpkgs.follows = "nix-ros-overlay/nixpkgs"; # IMPORTANT!!! + }; + outputs = { + self, + nix-ros-overlay, + nixpkgs, + }: + nix-ros-overlay.inputs.flake-utils.lib.eachDefaultSystem (system: let + applyDistroOverlay = rosOverlay: rosPackages: + rosPackages + // builtins.mapAttrs ( + rosDistro: rosPkgs: + if rosPkgs ? overrideScope + then rosPkgs.overrideScope rosOverlay + else rosPkgs + ) + rosPackages; + rosDistroOverlays = self: super: { + rosPackages = applyDistroOverlay (import ./overlay.nix) super.rosPackages; + }; + pkgs = import nixpkgs { + inherit system; + overlays = [ + nix-ros-overlay.overlays.default + rosDistroOverlays + ]; + config.permittedInsecurePackages = [ + "freeimage-unstable-2021-11-01" + ]; + }; + zsh-autocompletions = pkgs.runCommand "ros-autocompletions" {} '' + for dir in {bash-completion/completions,zsh/site-functions}; do + mkdir -p $out/share/$dir + for program in {ros2,colcon,rosidl}; do + ${pkgs.python3.pkgs.argcomplete}/bin/register-python-argcomplete $program > $out/share/$dir/_$program + done + done + ''; + use_zsh = true; + + rosDistro = "jazzy"; + in { + legacyPackages = pkgs.rosPackages; + packages = builtins.intersectAttrs (import ./overlay.nix null null) pkgs.rosPackages.${rosDistro}; + checks = builtins.intersectAttrs (import ./overlay.nix null null) pkgs.rosPackages.${rosDistro}; + devShells.default = pkgs.mkShell { + name = "Robossembler ROS2"; + packages = + [ + pkgs.colcon + # ... other non-ROS packages + (with pkgs.rosPackages.${rosDistro}; + buildEnv { + paths = [ + ros-core + rbs-bringup + # Include simulation runtime + rbs-runtime + # robot package + rbs-arm + ]; + }) + ] + ++ ( + if use_zsh + then [zsh-autocompletions pkgs.zsh] + else [] + ); + shellHook = '' + ${ + if use_zsh + then '' + echo "Swithching to ZSH shell..." + export SHELL=$(which zsh) + exec zsh + '' + else '''' + } + nix store gc + ''; + }; + }); + nixConfig = { + extra-substituters = ["https://ros.cachix.org" "https://robossembler.cachix.org" "https://cuda-maintainers.cachix.org"]; + extra-trusted-public-keys = [ + "ros.cachix.org-1:dSyZxI8geDCJrwgvCOHDoAfOm5sV1wCPjBkKL+38Rvo=" + "robossembler.cachix.org-1:56jBJHroRQSGpZFkW8XMquuzQTjAF/XTo6MogmBM7SQ=" + "cuda-maintainers.cachix.org-1:0dq3bujKpuEPMCX6U4WylrUDZ9JyUG0VpVZa7CNfq5E=" + ]; + }; +} diff --git a/overlay.nix b/overlay.nix new file mode 100644 index 0000000..9c85251 --- /dev/null +++ b/overlay.nix @@ -0,0 +1,37 @@ +self: super: { + behaviortree-ros2 = super.callPackage ../BehaviorTree.ROS2/behaviortree_ros2/package.nix {}; + btcpp-ros2-interfaces = super.callPackage ../BehaviorTree.ROS2/btcpp_ros2_interfaces/package.nix {}; + btcpp-ros2-samples = super.callPackage ../BehaviorTree.ROS2/btcpp_ros2_samples/package.nix {}; + cartesian-compliance-controller = super.callPackage ../cartesian_controllers/cartesian_compliance_controller/package.nix {}; + cartesian-controller-base = super.callPackage ../cartesian_controllers/cartesian_controller_base/package.nix {}; + cartesian-controller-handles = super.callPackage ../cartesian_controllers/cartesian_controller_handles/package.nix {}; + cartesian-controller-utilities = super.callPackage ../cartesian_controllers/cartesian_controller_utilities/package.nix {}; + cartesian-force-controller = super.callPackage ../cartesian_controllers/cartesian_force_controller/package.nix {}; + cartesian-motion-controller = super.callPackage ../cartesian_controllers/cartesian_motion_controller/package.nix {}; + cartesian-twist-controller = super.callPackage ../cartesian_controllers/cartesian_twist_controller/package.nix {}; + dynmsg = super.callPackage ../dynamic_message_introspection/dynmsg/package.nix {}; + dynmsg-demo = super.callPackage ../dynamic_message_introspection/dynmsg_demo/package.nix {}; + dynmsg-msgs = super.callPackage ../dynamic_message_introspection/dynmsg_msgs/package.nix {}; + env-manager = super.callPackage ./env_manager/env_manager/package.nix {}; + env-manager-interfaces = super.callPackage ./env_manager/env_manager_interfaces/package.nix {}; + gym-gz-ros-python = super.callPackage ../gym-gz/package.nix {}; + rbs-arm = super.callPackage ../rbs_arm/package.nix {}; + rbs-bringup = super.callPackage ./rbs_bringup/package.nix {}; + rbs-bt-executor = super.callPackage ./rbs_bt_executor/package.nix {}; + rbs-gripper = super.callPackage ../rbs_gripper/package.nix {}; + rbs-gym = super.callPackage ./env_manager/rbs_gym/package.nix {}; + rbs-perception = super.callPackage ./rbs_perception/package.nix {}; + rbs-runtime = super.callPackage ./env_manager/rbs_runtime/package.nix {}; + rbs-skill-interfaces = super.callPackage ./rbs_skill_interfaces/package.nix {}; + rbs-skill-servers = super.callPackage ./rbs_skill_servers/package.nix {}; + rbs-task-planner = super.callPackage ./rbs_task_planner/package.nix {}; + rbs-utils = super.callPackage ./rbs_utils/rbs_utils/package.nix {}; + rbs-utils-interfaces = super.callPackage ./rbs_utils/rbs_utils_interfaces/package.nix {}; + rbss-movetopose = super.callPackage ./rbss_movetopose/package.nix {}; + rbss-objectdetection = super.callPackage ./rbss_objectdetection/package.nix {}; + rbss-poseestimation = super.callPackage ./rbss_poseestimation/package.nix {}; + robonomics = super.callPackage ./robonomics/package.nix {}; + robot-builder = super.callPackage ../robot_builder/package.nix {}; + scenario = super.callPackage ../scenario/package.nix {}; + test-dynmsg = super.callPackage ../dynamic_message_introspection/test_dynmsg/package.nix {}; +} diff --git a/rbs_bringup/package.nix b/rbs_bringup/package.nix new file mode 100644 index 0000000..4ac41b2 --- /dev/null +++ b/rbs_bringup/package.nix @@ -0,0 +1,42 @@ +# Automatically generated by: ros2nix --distro jazzy --flake --license Apache-2.0 +# Copyright 2025 None +# Distributed under the terms of the Apache-2.0 license +{ + lib, + buildRosPackage, + ament-cmake, + ament-lint-auto, + ament-lint-common, + env-manager, + env-manager-interfaces, + rbs-bt-executor, + rbs-gripper, + rbs-gym, + rbs-perception, + rbs-runtime, + rbs-simulation, + rbs-skill-interfaces, + rbs-skill-servers, + rbs-utils, + rbs-utils-interfaces, + rbss-movetopose, + rbss-objectdetection, + rbss-poseestimation, + robot-builder, +}: +buildRosPackage rec { + pname = "ros-jazzy-rbs-bringup"; + version = "0.0.0"; + + src = ./.; + + buildType = "ament_cmake"; + buildInputs = [ament-cmake env-manager env-manager-interfaces rbs-bt-executor rbs-gripper rbs-gym rbs-perception rbs-runtime rbs-simulation rbs-skill-interfaces rbs-skill-servers rbs-utils rbs-utils-interfaces rbss-movetopose rbss-objectdetection rbss-poseestimation robot-builder]; + checkInputs = [ament-lint-auto ament-lint-common]; + nativeBuildInputs = [ament-cmake]; + + meta = { + description = "TODO: Package description"; + license = with lib.licenses; [asl20]; + }; +} diff --git a/rbs_bringup/package.xml b/rbs_bringup/package.xml index a256110..3636b65 100644 --- a/rbs_bringup/package.xml +++ b/rbs_bringup/package.xml @@ -11,6 +11,13 @@ nav2_common + rbs_bt_executor + rbs_perception + rbs_skill_interfaces + rbs_skill_servers + rbs_utils + rbs_utils_interfaces + ament_lint_auto ament_lint_common diff --git a/rbs_bt_executor/package.nix b/rbs_bt_executor/package.nix new file mode 100644 index 0000000..fc732a7 --- /dev/null +++ b/rbs_bt_executor/package.nix @@ -0,0 +1,23 @@ +# Automatically generated by: ros2nix --distro jazzy --flake --license Apache-2.0 + +# Copyright 2025 None +# Distributed under the terms of the Apache-2.0 license + +{ lib, buildRosPackage, ament-cmake, ament-cmake-python, ament-lint-auto, ament-lint-common, behaviortree-cpp, behaviortree-ros2, control-msgs, env-manager-interfaces, geometry-msgs, lifecycle-msgs, moveit-core, moveit-ros-planning, moveit-ros-planning-interface, rbs-skill-interfaces, rbs-utils, rclpy }: +buildRosPackage rec { + pname = "ros-jazzy-rbs-bt-executor"; + version = "0.0.0"; + + src = ./.; + + buildType = "ament_cmake"; + buildInputs = [ ament-cmake ament-cmake-python ]; + checkInputs = [ ament-lint-auto ament-lint-common ]; + propagatedBuildInputs = [ behaviortree-cpp behaviortree-ros2 control-msgs env-manager-interfaces geometry-msgs lifecycle-msgs moveit-core moveit-ros-planning moveit-ros-planning-interface rbs-skill-interfaces rbs-utils rclpy ]; + nativeBuildInputs = [ ament-cmake ament-cmake-python ]; + + meta = { + description = "TODO: Package description"; + license = with lib.licenses; [ "TODO-License-declaration" ]; + }; +} diff --git a/rbs_bt_executor/package.xml b/rbs_bt_executor/package.xml index 5f109c6..e70a912 100644 --- a/rbs_bt_executor/package.xml +++ b/rbs_bt_executor/package.xml @@ -10,6 +10,11 @@ ament_cmake ament_cmake_python + moveit_core + moveit_ros_planning + moveit_ros_planning_interface + control_msgs + rclpy rbs_utils rbs_skill_interfaces diff --git a/rbs_perception/package.nix b/rbs_perception/package.nix new file mode 100644 index 0000000..154eaf4 --- /dev/null +++ b/rbs_perception/package.nix @@ -0,0 +1,23 @@ +# Automatically generated by: ros2nix --distro jazzy --flake --license Apache-2.0 + +# Copyright 2025 None +# Distributed under the terms of the Apache-2.0 license + +{ lib, buildRosPackage, ament-cmake, ament-cmake-python, ament-lint-auto, ament-lint-common, cv-bridge, image-transport, perception-pcl, rbs-skill-interfaces, rclcpp, rclpy, sensor-msgs, std-msgs, tf2-eigen, tf2-ros, visualization-msgs }: +buildRosPackage rec { + pname = "ros-jazzy-rbs-perception"; + version = "0.0.0"; + + src = ./.; + + buildType = "ament_cmake"; + buildInputs = [ ament-cmake ament-cmake-python ]; + checkInputs = [ ament-lint-auto ament-lint-common ]; + propagatedBuildInputs = [ cv-bridge image-transport perception-pcl rbs-skill-interfaces rclcpp rclpy sensor-msgs std-msgs tf2-eigen tf2-ros visualization-msgs ]; + nativeBuildInputs = [ ament-cmake ament-cmake-python ]; + + meta = { + description = "An node for robot perception"; + license = with lib.licenses; [ asl20 ]; + }; +} diff --git a/rbs_skill_interfaces/package.nix b/rbs_skill_interfaces/package.nix new file mode 100644 index 0000000..ba78a1b --- /dev/null +++ b/rbs_skill_interfaces/package.nix @@ -0,0 +1,23 @@ +# Automatically generated by: ros2nix --distro jazzy --flake --license Apache-2.0 + +# Copyright 2025 None +# Distributed under the terms of the Apache-2.0 license + +{ lib, buildRosPackage, ament-cmake, ament-cmake-gtest, ament-lint-auto, ament-lint-common, geometry-msgs, moveit-msgs, rosidl-default-generators, rosidl-default-runtime, shape-msgs, std-msgs, test-msgs }: +buildRosPackage rec { + pname = "ros-jazzy-rbs-skill-interfaces"; + version = "0.0.0"; + + src = ./.; + + buildType = "ament_cmake"; + buildInputs = [ ament-cmake rosidl-default-generators ]; + checkInputs = [ ament-cmake-gtest ament-lint-auto ament-lint-common test-msgs ]; + propagatedBuildInputs = [ geometry-msgs moveit-msgs rosidl-default-runtime shape-msgs std-msgs ]; + nativeBuildInputs = [ ament-cmake rosidl-default-generators ]; + + meta = { + description = "TODO: Package description"; + license = with lib.licenses; [ asl20 ]; + }; +} diff --git a/rbs_skill_servers/package.nix b/rbs_skill_servers/package.nix new file mode 100644 index 0000000..fad702a --- /dev/null +++ b/rbs_skill_servers/package.nix @@ -0,0 +1,49 @@ +# Automatically generated by: ros2nix --distro jazzy --flake --license Apache-2.0 +# Copyright 2025 None +# Distributed under the terms of the Apache-2.0 license +{ + lib, + buildRosPackage, + action-msgs, + ament-cmake, + ament-lint-auto, + ament-lint-common, + cartesian-compliance-controller, + cartesian-controller-base, + cartesian-controller-handles, + cartesian-controller-utilities, + cartesian-force-controller, + cartesian-motion-controller, + cartesian-twist-controller, + geometric-shapes, + geometry-msgs, + gz-ros2-control, + moveit-core, + moveit-msgs, + moveit-ros-planning, + moveit-ros-planning-interface, + rbs-skill-interfaces, + rbs-utils, + rclcpp, + rclcpp-action, + rclcpp-components, + tf2-eigen, + tf2-ros, +}: +buildRosPackage rec { + pname = "ros-jazzy-rbs-skill-servers"; + version = "0.0.0"; + + src = ./.; + + buildType = "ament_cmake"; + buildInputs = [ament-cmake]; + checkInputs = [ament-lint-auto ament-lint-common]; + propagatedBuildInputs = [action-msgs cartesian-compliance-controller cartesian-controller-base cartesian-controller-handles cartesian-controller-utilities cartesian-force-controller cartesian-motion-controller cartesian-twist-controller geometric-shapes geometry-msgs gz-ros2-control moveit-core moveit-msgs moveit-ros-planning moveit-ros-planning-interface rbs-skill-interfaces rbs-utils rclcpp rclcpp-action rclcpp-components tf2-eigen tf2-ros]; + nativeBuildInputs = [ament-cmake]; + + meta = { + description = "TODO: Package description"; + license = with lib.licenses; [asl20]; + }; +} diff --git a/rbs_skill_servers/package.xml b/rbs_skill_servers/package.xml index f4d0036..a5e1a62 100644 --- a/rbs_skill_servers/package.xml +++ b/rbs_skill_servers/package.xml @@ -8,11 +8,20 @@ Apache-2.0 ament_cmake - ign_ros2_control + + cartesian_compliance_controller + cartesian_controller_base + cartesian_controller_handles + cartesian_controller_utilities + cartesian_force_controller + cartesian_motion_controller + cartesian_twist_controller + rclcpp moveit_core moveit_ros_planning moveit_ros_planning_interface + moveit_msgs tf2_ros diff --git a/rbs_task_planner/package.nix b/rbs_task_planner/package.nix new file mode 100644 index 0000000..2860195 --- /dev/null +++ b/rbs_task_planner/package.nix @@ -0,0 +1,23 @@ +# Automatically generated by: ros2nix --distro jazzy --flake --license Apache-2.0 + +# Copyright 2025 None +# Distributed under the terms of the Apache-2.0 license + +{ lib, buildRosPackage, ament-cmake, ament-cmake-gtest, ament-index-cpp, ament-lint-auto, ament-lint-common, plansys2-bringup, plansys2-bt-actions, plansys2-domain-expert, plansys2-executor, plansys2-msgs, plansys2-pddl-parser, plansys2-planner, plansys2-problem-expert, plansys2-terminal, popf, test-msgs }: +buildRosPackage rec { + pname = "ros-jazzy-rbs-task-planner"; + version = "0.0.1"; + + src = ./.; + + buildType = "ament_cmake"; + buildInputs = [ ament-cmake ]; + checkInputs = [ ament-cmake-gtest ament-lint-auto ament-lint-common test-msgs ]; + propagatedBuildInputs = [ ament-index-cpp plansys2-bringup plansys2-bt-actions plansys2-domain-expert plansys2-executor plansys2-msgs plansys2-pddl-parser plansys2-planner plansys2-problem-expert plansys2-terminal popf ]; + nativeBuildInputs = [ ament-cmake ]; + + meta = { + description = "ROS2 task planner for manipulator"; + license = with lib.licenses; [ asl20 ]; + }; +} diff --git a/rbs_utils/rbs_utils/package.nix b/rbs_utils/rbs_utils/package.nix new file mode 100644 index 0000000..0da886f --- /dev/null +++ b/rbs_utils/rbs_utils/package.nix @@ -0,0 +1,23 @@ +# Automatically generated by: ros2nix --distro jazzy --flake --license Apache-2.0 + +# Copyright 2025 None +# Distributed under the terms of the Apache-2.0 license + +{ lib, buildRosPackage, ament-cmake, ament-lint-auto, ament-lint-common, dynmsg, dynmsg-msgs, geometry-msgs, nlohmann_json, rbs-utils-interfaces, rclcpp, rclcpp-lifecycle, rclpy, rosbag2-cpp, rosidl-default-generators, rviz-visual-tools, sensor-msgs, std-msgs, tf2-eigen, tf2-ros }: +buildRosPackage rec { + pname = "ros-jazzy-rbs-utils"; + version = "0.0.0"; + + src = ./.; + + buildType = "ament_cmake"; + buildInputs = [ ament-cmake ]; + checkInputs = [ ament-lint-auto ament-lint-common ]; + propagatedBuildInputs = [ dynmsg dynmsg-msgs geometry-msgs nlohmann_json rbs-utils-interfaces rclcpp rclcpp-lifecycle rclpy rosbag2-cpp rosidl-default-generators rviz-visual-tools sensor-msgs std-msgs tf2-eigen tf2-ros ]; + nativeBuildInputs = [ ament-cmake ]; + + meta = { + description = "TODO: Package description"; + license = with lib.licenses; [ asl20 ]; + }; +} diff --git a/rbs_utils/rbs_utils/package.xml b/rbs_utils/rbs_utils/package.xml index 4aa08d4..a01b979 100644 --- a/rbs_utils/rbs_utils/package.xml +++ b/rbs_utils/rbs_utils/package.xml @@ -9,6 +9,9 @@ ament_cmake + dynmsg + dynmsg_msgs + rclpy rclcpp rclcpp_lifecycle @@ -19,7 +22,6 @@ rosidl_default_generators std_msgs rbs_utils_interfaces - dynmsg sensor_msgs nlohmann-json-dev rosbag2_cpp diff --git a/rbs_utils/rbs_utils_interfaces/package.nix b/rbs_utils/rbs_utils_interfaces/package.nix new file mode 100644 index 0000000..9006cb6 --- /dev/null +++ b/rbs_utils/rbs_utils_interfaces/package.nix @@ -0,0 +1,22 @@ +# Automatically generated by: ros2nix --distro jazzy --flake --license Apache-2.0 + +# Copyright 2025 None +# Distributed under the terms of the Apache-2.0 license + +{ lib, buildRosPackage, ament-cmake, geometry-msgs, rosidl-default-generators, rosidl-default-runtime }: +buildRosPackage rec { + pname = "ros-jazzy-rbs-utils-interfaces"; + version = "0.0.0"; + + src = ./.; + + buildType = "ament_cmake"; + buildInputs = [ ament-cmake rosidl-default-generators ]; + propagatedBuildInputs = [ geometry-msgs rosidl-default-runtime ]; + nativeBuildInputs = [ ament-cmake rosidl-default-generators ]; + + meta = { + description = "Interfaces for read robossembler_db config"; + license = with lib.licenses; [ asl20 ]; + }; +} diff --git a/rbss_movetopose/package.nix b/rbss_movetopose/package.nix new file mode 100644 index 0000000..70ba7ae --- /dev/null +++ b/rbss_movetopose/package.nix @@ -0,0 +1,23 @@ +# Automatically generated by: ros2nix --distro jazzy --flake --license Apache-2.0 + +# Copyright 2025 None +# Distributed under the terms of the Apache-2.0 license + +{ lib, buildRosPackage, ament-cmake, ament-cmake-python, ament-lint-auto, ament-lint-common, geometry-msgs, rbs-skill-interfaces, rclcpp, rclpy, std-msgs }: +buildRosPackage rec { + pname = "ros-jazzy-rbss-movetopose"; + version = "0.0.1"; + + src = ./.; + + buildType = "ament_cmake"; + buildInputs = [ ament-cmake ament-cmake-python ]; + checkInputs = [ ament-lint-auto ament-lint-common ]; + propagatedBuildInputs = [ geometry-msgs rbs-skill-interfaces rclcpp rclpy std-msgs ]; + nativeBuildInputs = [ ament-cmake ament-cmake-python ]; + + meta = { + description = "The Move to pose skill"; + license = with lib.licenses; [ asl20 ]; + }; +} diff --git a/rbss_objectdetection/package.nix b/rbss_objectdetection/package.nix new file mode 100644 index 0000000..4e999d2 --- /dev/null +++ b/rbss_objectdetection/package.nix @@ -0,0 +1,23 @@ +# Automatically generated by: ros2nix --distro jazzy --flake --license Apache-2.0 + +# Copyright 2025 None +# Distributed under the terms of the Apache-2.0 license + +{ lib, buildRosPackage, ament-cmake, ament-cmake-python, ament-lint-auto, ament-lint-common, cv-bridge, image-transport, lifecycle-msgs, rbs-skill-interfaces, rclpy, sensor-msgs, std-msgs }: +buildRosPackage rec { + pname = "ros-jazzy-rbss-objectdetection"; + version = "0.0.1"; + + src = ./.; + + buildType = "ament_cmake"; + buildInputs = [ ament-cmake ament-cmake-python ]; + checkInputs = [ ament-lint-auto ament-lint-common ]; + propagatedBuildInputs = [ cv-bridge image-transport lifecycle-msgs rbs-skill-interfaces rclpy sensor-msgs std-msgs ]; + nativeBuildInputs = [ ament-cmake ament-cmake-python ]; + + meta = { + description = "The Object Detection skill"; + license = with lib.licenses; [ asl20 ]; + }; +} diff --git a/rbss_poseestimation/package.nix b/rbss_poseestimation/package.nix new file mode 100644 index 0000000..52b8c7e --- /dev/null +++ b/rbss_poseestimation/package.nix @@ -0,0 +1,23 @@ +# Automatically generated by: ros2nix --distro jazzy --flake --license Apache-2.0 + +# Copyright 2025 None +# Distributed under the terms of the Apache-2.0 license + +{ lib, buildRosPackage, ament-cmake, ament-cmake-python, ament-lint-auto, ament-lint-common, cv-bridge, geometry-msgs, image-transport, rclpy, sensor-msgs, std-msgs }: +buildRosPackage rec { + pname = "ros-jazzy-rbss-poseestimation"; + version = "0.0.1"; + + src = ./.; + + buildType = "ament_cmake"; + buildInputs = [ ament-cmake ament-cmake-python ]; + checkInputs = [ ament-lint-auto ament-lint-common ]; + propagatedBuildInputs = [ cv-bridge geometry-msgs image-transport rclpy sensor-msgs std-msgs ]; + nativeBuildInputs = [ ament-cmake ament-cmake-python ]; + + meta = { + description = "The Pose Estimation skill"; + license = with lib.licenses; [ asl20 ]; + }; +} diff --git a/repos/nix.repos b/repos/nix.repos new file mode 100644 index 0000000..e786879 --- /dev/null +++ b/repos/nix.repos @@ -0,0 +1,46 @@ +repositories: + rbs_arm: + type: git + url: https://github.com/solid-sinusoid/rbs-arm.git + version: main + robot_builder: + type: git + url: https://github.com/solid-sinusoid/robot-builder.git + version: main + rbs_gripper: + type: git + url: https://github.com/solid-sinusoid/rbs-gripper.git + version: main + behavior_tree: + type: git + url: https://github.com/BehaviorTree/BehaviorTree.ROS2.git + version: humble + dynamic_message_introspection: + type: git + url: https://github.com/osrf/dynamic_message_introspection.git + version: main + robot_builder: + type: git + url: https://github.com/solid-sinusoid/robot-builder.git + version: main + cartesian_controllers: + type: git + url: https://github.com/solid-sinusoid/cartesian_controllers.git + version: gazebo-simulation + ros2_control: + type: git + url: https://github.com/solid-sinusoid/ros2_control.git + version: gz-ros2-cartesian-controllers + gz_ros2_control: + type: git + url: https://github.com/solid-sinusoid/gz_ros2_control.git + version: fts-sensor +# temporal debug repositories with nix + scenario: + type: git + url: https://seed.solid-sinusoid.com/z3RBwHLb4j66Q12dwkK1RGQj3ufhi.git + version: patches/740e5c2c969c54c0779f9511b1b1d6257fff547f + gym-gz: + type: git + url: https://seed.solid-sinusoid.com/z33HXHSaU12N1tEgJCWJpB58w4KR.git + version: patches/82421599d3f30768e20f24d24eff270643956584 diff --git a/robonomics/package.nix b/robonomics/package.nix new file mode 100644 index 0000000..75872d9 --- /dev/null +++ b/robonomics/package.nix @@ -0,0 +1,21 @@ +# Automatically generated by: ros2nix --distro jazzy --flake --license Apache-2.0 + +# Copyright 2025 None +# Distributed under the terms of the Apache-2.0 license + +{ lib, buildRosPackage, ament-copyright, ament-flake8, ament-pep257, pythonPackages, rclpy }: +buildRosPackage rec { + pname = "ros-jazzy-robonomics"; + version = "0.1.0"; + + src = ./.; + + buildType = "ament_python"; + checkInputs = [ ament-copyright ament-flake8 ament-pep257 pythonPackages.pytest ]; + propagatedBuildInputs = [ rclpy ]; + + meta = { + description = "Package for Robossember-Robonomics interoperability"; + license = with lib.licenses; [ "Apache-license-2.0" ]; + }; +}