# Copyright 2025 Open Source Robotics Foundation # Distributed under the terms of the BSD license { lib, buildRosPackage, fetchurl, ament-cmake-auto, ament-lint-auto, ament-lint-common, geometry-msgs, message-filters, nav-msgs, octomap, octomap-msgs, octomap-ros, pcl, pcl-conversions, pcl-ros, rclcpp, rclcpp-components, sensor-msgs, std-msgs, std-srvs, tf2, tf2-eigen, tf2-geometry-msgs, tf2-ros, visualization-msgs }: buildRosPackage { pname = "ros-rolling-octomap-server"; version = "2.3.0-r1"; src = fetchurl { url = "https://github.com/ros2-gbp/octomap_mapping-release/archive/release/rolling/octomap_server/2.3.0-1.tar.gz"; name = "2.3.0-1.tar.gz"; sha256 = "e7cdc236c32cf66a2b61f8e60dcea2c500eafcf89421bbd45ce8a507cd9af86f"; }; buildType = "ament_cmake"; buildInputs = [ ament-cmake-auto ]; checkInputs = [ ament-lint-auto ament-lint-common ]; propagatedBuildInputs = [ geometry-msgs message-filters nav-msgs octomap octomap-msgs octomap-ros pcl pcl-conversions pcl-ros rclcpp rclcpp-components sensor-msgs std-msgs std-srvs tf2 tf2-eigen tf2-geometry-msgs tf2-ros visualization-msgs ]; nativeBuildInputs = [ ament-cmake-auto ]; meta = { description = "octomap_server loads a 3D map (as Octree-based OctoMap) and distributes it to other nodes in a compact binary format. It also allows to incrementally build 3D OctoMaps, and provides map saving in the node octomap_saver."; license = with lib.licenses; [ bsdOriginal ]; }; }