diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml
index c75db508..eeac038f 100644
--- a/.github/workflows/docker-image.yml
+++ b/.github/workflows/docker-image.yml
@@ -58,7 +58,7 @@ jobs:
steps:
- name: Checkout
- uses: actions/checkout@v3
+ uses: actions/checkout@v6
- name: Run build script - ${{ matrix.script }}
run: |
diff --git a/.github/workflows/pr.yaml b/.github/workflows/pr.yaml
index 74908517..0bb9e0e4 100644
--- a/.github/workflows/pr.yaml
+++ b/.github/workflows/pr.yaml
@@ -11,5 +11,5 @@ jobs:
name: Space ROS Commit Message Standards
runs-on: ubuntu-latest
steps:
- - uses: actions/checkout@v4
+ - uses: actions/checkout@v6
- uses: space-ros/check-commit-message-action@main
diff --git a/canadarm2/Dockerfile b/canadarm2/Dockerfile
index 2c034ff8..835dd599 100644
--- a/canadarm2/Dockerfile
+++ b/canadarm2/Dockerfile
@@ -1,4 +1,4 @@
-FROM osrf/space-ros:jazzy-2025.10.0
+FROM osrf/space-ros:jazzy-2026.01.0
ENV RMW_IMPLEMENTATION=rmw_cyclonedds_cpp
ENV ROS_DISTRO=jazzy
diff --git a/curiosity_rover/Dockerfile b/curiosity_rover/Dockerfile
index 501866d1..dbc15e4f 100644
--- a/curiosity_rover/Dockerfile
+++ b/curiosity_rover/Dockerfile
@@ -1,4 +1,4 @@
-FROM osrf/space-ros:jazzy-2025.10.0
+FROM osrf/space-ros:jazzy-2026.01.0
ENV RMW_IMPLEMENTATION=rmw_cyclonedds_cpp
ENV ROS_DISTRO=jazzy
diff --git a/lunar_terrain/Dockerfile b/lunar_terrain/Dockerfile
index a6394016..a72e4ce6 100644
--- a/lunar_terrain/Dockerfile
+++ b/lunar_terrain/Dockerfile
@@ -19,7 +19,7 @@
# VCS_REF - The git revision of the Space ROS source code (no default value).
# VERSION - The version of Space ROS (default: "preview")
-FROM osrf/space-ros:humble-2024.10.0
+FROM osrf/space-ros:jazzy-2025.10.0
# Define arguments used in the metadata definition
ARG VCS_REF
@@ -36,15 +36,14 @@ LABEL org.label-schema.vcs-url="https://github.com/space-ros/docker"
LABEL org.label-schema.vcs-ref=${VCS_REF}
# Clone all space-ros sources
-RUN mkdir ${SPACEROS_DIR}/src \
- && vcs import ${SPACEROS_DIR}/src < ${SPACEROS_DIR}/exact.repos
+RUN sudo vcs import ${SPACEROS_DIR}/src < ${SPACEROS_DIR}/scripts/spaceros.repos
# Define a few key variables
-ENV DEMO_DIR=${HOME_DIR}/demos_ws
-ENV GZ_VERSION=garden
+ENV DEMO_DIR=${HOME}/demos_ws
+ENV GZ_VERSION=harmonic
ENV GZ_PARTITION=spaceros
-ENV GZ_SIM_RESOURCE_PATH=/home/spaceros-user/demos_ws/src/simulation/models/lunar_terrain/models
-ENV ROS_DISTRO=humble
+ENV GZ_SIM_RESOURCE_PATH=$DEMO_DIR/src/simulation/models/lunar_terrain/models
+ENV ROS_DISTRO=jazzy
# Disable prompting during package installation
ARG DEBIAN_FRONTEND=noninteractive
@@ -57,11 +56,9 @@ ADD --chmod=644 https://raw.githubusercontent.com/ros/rosdistro/master/ros.key /
# the cache won't make it into the built image but will be maintained between steps.
RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \
--mount=type=cache,target=/var/lib/apt,sharing=locked \
- sudo apt-get update
-RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \
- --mount=type=cache,target=/var/lib/apt,sharing=locked \
- sudo apt-get dist-upgrade -y
-RUN rosdep update
+ sudo apt-get update \
+ && sudo apt-get dist-upgrade -y
+RUN sudo rosdep init && rosdep update
# Install the various build and test tools
RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \
@@ -71,39 +68,41 @@ RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \
clang-format \
cmake \
git \
+ git-lfs \
libbullet-dev \
python3-colcon-common-extensions \
python3-flake8 \
python3-pip \
python3-pytest-cov \
+ python3-rosinstall-generator \
python3-rosdep \
python3-setuptools \
python3-vcstool \
wget
+# Install git-lfs for big files in simulation repo
+RUN git lfs install
+
RUN sudo add-apt-repository ppa:kisak/kisak-mesa
RUN sudo apt install xterm -y
-# Get rosinstall_generator
-# Using Docker BuildKit cache mounts for /var/cache/apt and /var/lib/apt ensures that
-# the cache won't make it into the built image but will be maintained between steps.
-RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \
- --mount=type=cache,target=/var/lib/apt,sharing=locked \
- sudo apt-get update -y && sudo apt-get install -y python3-rosinstall-generator
+# Install Gazebo Harmonic, GZ ROS packages and rviz2 from offical binaries
+RUN sudo wget https://packages.osrfoundation.org/gazebo.gpg -O /usr/share/keyrings/pkgs-osrf-archive-keyring.gpg \
+ && echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/pkgs-osrf-archive-keyring.gpg] http://packages.osrfoundation.org/gazebo/ubuntu-stable $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/gazebo-stable.list > /dev/null
-# Install Gazebo Garden
-# Using Docker BuildKit cache mounts for /var/cache/apt and /var/lib/apt ensures that
-# the cache won't make it into the built image but will be maintained between steps.
RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \
--mount=type=cache,target=/var/lib/apt,sharing=locked \
- sudo wget https://packages.osrfoundation.org/gazebo.gpg -O /usr/share/keyrings/pkgs-osrf-archive-keyring.gpg \
- && echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/pkgs-osrf-archive-keyring.gpg] http://packages.osrfoundation.org/gazebo/ubuntu-stable $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/gazebo-stable.list > /dev/null \
- && sudo apt-get update -y && sudo apt-get install -y gz-garden && sudo apt-get install -y git-lfs && git lfs install
+ sudo apt-get update -y \
+ && sudo apt-get install -y gz-$GZ_VERSION \
+ && sudo apt-get install -y ros-${ROS_DISTRO}-ros-gz \
+ && sudo apt-get install -y ros-${ROS_DISTRO}-rviz2
+
+ENV SPACEROS_USER spaceros-user
# Generate repos file for demo dependencies, excluding packages from Space ROS core.
-COPY --chown=${USERNAME}:${USERNAME} demo-pkgs.txt /tmp/
-COPY --chown=${USERNAME}:${USERNAME} excluded-pkgs.txt /tmp/
+COPY --chown=${SPACEROS_USER}:${SPACEROS_USER} demo-pkgs.txt /tmp/
+COPY --chown=${SPACEROS_USER}:${SPACEROS_USER} excluded-pkgs.txt /tmp/
RUN rosinstall_generator \
--rosdistro ${ROS_DISTRO} \
--deps \
@@ -112,44 +111,48 @@ RUN rosinstall_generator \
-- $(cat /tmp/demo-pkgs.txt) \
> /tmp/demo_generated_pkgs.repos
+# Create workspace for lunar_terrain demo
RUN mkdir -p ${DEMO_DIR}/src
WORKDIR ${DEMO_DIR}
RUN vcs import src < /tmp/demo_generated_pkgs.repos
-# Install system dependencies
-RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \
- --mount=type=cache,target=/var/lib/apt,sharing=locked \
- /bin/bash -c 'source ${SPACEROS_DIR}/install/setup.bash' \
- && rosdep install --from-paths ${SPACEROS_DIR}/src src --ignore-src --rosdistro ${ROS_DISTRO} -r -y --skip-keys "console_bridge generate_parameter_library fastcdr fastrtps rti-connext-dds-5.3.1 urdfdom_headers rmw_connextdds ros_testing rmw_connextdds rmw_fastrtps_cpp rmw_fastrtps_dynamic_cpp composition demo_nodes_py lifecycle rosidl_typesupport_fastrtps_cpp rosidl_typesupport_fastrtps_c ikos diagnostic_aggregator diagnostic_updater joy qt_gui rqt_gui rqt_gui_py"
-
# Get the source for the dependencies
# RUN vcs import src < /tmp/demo_generated_pkgs.repos
-COPY --chown=${USERNAME}:${USERNAME} demo_manual_pkgs.repos /tmp/
-RUN vcs import src < /tmp/demo_manual_pkgs.repos && /bin/bash -c 'source "${SPACEROS_DIR}/install/setup.bash"'
+COPY --chown=${SPACEROS_USER}:${SPACEROS_USER} demo_manual_pkgs.repos /tmp/
+RUN vcs import src < /tmp/demo_manual_pkgs.repos
RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \
--mount=type=cache,target=/var/lib/apt,sharing=locked \
sudo apt-get update -y \
-&& /bin/bash -c 'source "${SPACEROS_DIR}/install/setup.bash"' \
-&& rosdep install --from-paths src --ignore-src -r -y --rosdistro ${ROS_DISTRO}
+ && /bin/bash -c 'source /opt/ros/${ROS_DISTRO}/setup.bash \
+ && source "${SPACEROS_DIR}/setup.bash" \
+ && rosdep install \
+ --simulate \
+ --from-paths src \
+ --ignore-src \
+ -r -y \
+ --rosdistro ${ROS_DISTRO} > /tmp/rosdep-commands.sh \
+ && chmod +x /tmp/rosdep-commands.sh \
+ && /tmp/rosdep-commands.sh'
# Copy the demo source code
-COPY --chown=${USERNAME}:${USERNAME} lunar_sun_gz_plugin src/lunar_sun_gz_plugin
-COPY --chown=${USERNAME}:${USERNAME} lunar_terrain_gz_bringup src/lunar_terrain_gz_bringup
-COPY --chown=${USERNAME}:${USERNAME} lunar_terrain_gz_worlds src/lunar_terrain_gz_worlds
+COPY --chown=${SPACEROS_USER}:${SPACEROS_USER} lunar_sun_gz_plugin src/lunar_sun_gz_plugin
+COPY --chown=${SPACEROS_USER}:${SPACEROS_USER} lunar_terrain_gz_bringup src/lunar_terrain_gz_bringup
+COPY --chown=${SPACEROS_USER}:${SPACEROS_USER} lunar_terrain_gz_worlds src/lunar_terrain_gz_worlds
# Build the demo
-RUN /bin/bash -c 'source ${SPACEROS_DIR}/install/setup.bash \
+RUN /bin/bash -c 'source /opt/ros/${ROS_DISTRO}/setup.bash \
+ && source ${SPACEROS_DIR}/setup.bash \
&& colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release'
# Create the render group if it doesn't exist
RUN sudo groupadd -f render
# Add the user to the render group so that the user can access /dev/dri/renderD128
-RUN sudo usermod -aG render $USERNAME
+RUN sudo usermod -aG render ${SPACEROS_USER}
# Setup the entrypoint
-COPY --chown=${USERNAME}:${USERNAME} ./entrypoint.sh /
+COPY --chown=${SPACEROS_USER}:${SPACEROS_USER} ./entrypoint.sh /
# RUN chown appuser:appuser /entrypoint.sh && chmod +x /entrypoint.sh
ENTRYPOINT ["/entrypoint.sh"]
CMD ["bash"]
diff --git a/lunar_terrain/demo-pkgs.txt b/lunar_terrain/demo-pkgs.txt
index 810d8895..8baaba3f 100644
--- a/lunar_terrain/demo-pkgs.txt
+++ b/lunar_terrain/demo-pkgs.txt
@@ -1,4 +1,3 @@
leo_gz_plugins
-rviz2
xacro
-teleop_twist_keyboard
\ No newline at end of file
+teleop_twist_keyboard
diff --git a/lunar_terrain/demo_manual_pkgs.repos b/lunar_terrain/demo_manual_pkgs.repos
index 9303f68a..dcc27555 100644
--- a/lunar_terrain/demo_manual_pkgs.repos
+++ b/lunar_terrain/demo_manual_pkgs.repos
@@ -1,26 +1,9 @@
repositories:
- actuator_msgs:
- type: git
- url: https://github.com/rudislabs/actuator_msgs.git
- version: main
- ros_gz:
- type: git
- url: https://github.com/gazebosim/ros_gz.git
- version: humble
- vision_msgs:
- type: git
- url: https://github.com/ros-perception/vision_msgs.git
- version: humble
- gps_msgs:
- type: git
- url: https://github.com/swri-robotics/gps_umd.git
- path: gps_msgs
- version: 113782d
leo_common-ros2:
type: git
url: https://github.com/LeoRover/leo_common-ros2.git
- version: humble
+ version: jazzy
simulation:
type: git
url: https://github.com/space-ros/simulation.git
- version: main
\ No newline at end of file
+ version: main
diff --git a/lunar_terrain/excluded-pkgs.txt b/lunar_terrain/excluded-pkgs.txt
index e279257d..9b7a3891 100644
--- a/lunar_terrain/excluded-pkgs.txt
+++ b/lunar_terrain/excluded-pkgs.txt
@@ -2,6 +2,22 @@ fastcdr
fastrtps
fastrtps_cmake_module
generate_parameter_library
+gz_cmake_vendor
+gz_common_vendor
+gz_dartsim_vendor
+gz_fuel_tools_vendor
+gz_gui_vendor
+gz_math_vendor
+gz_msgs_vendor
+gz_ogre_next_vendor
+gz_physics_vendor
+gz_plugin_vendor
+gz_rendering_vendor
+gz_sensors_vendor
+gz_sim_vendor
+gz_tools_vendor
+gz_transport_vendor
+gz_utils_vendor
rmw_connextdds
rmw_fastrtps_cpp
rmw_fastrtps_dynamic_cpp
diff --git a/lunar_terrain/lunar_sun_gz_plugin/CMakeLists.txt b/lunar_terrain/lunar_sun_gz_plugin/CMakeLists.txt
index 6e0ff86f..41df2c76 100644
--- a/lunar_terrain/lunar_sun_gz_plugin/CMakeLists.txt
+++ b/lunar_terrain/lunar_sun_gz_plugin/CMakeLists.txt
@@ -10,32 +10,17 @@ find_package(ament_cmake REQUIRED)
add_library(lunar_sun_gz_plugin SHARED
src/lunar_sun.cpp)
-if(DEFINED ENV{GZ_VERSION} AND "$ENV{GZ_VERSION}" STREQUAL "garden")
- find_package(gz-plugin2 REQUIRED COMPONENTS register)
- set(GZ_PLUGIN_VER ${gz-plugin2_VERSION_MAJOR})
-
- find_package(gz-sim7 REQUIRED)
- set(GZ_SIM_VER ${gz-sim7_VERSION_MAJOR})
-
- target_link_libraries(lunar_sun_gz_plugin
- gz-sim${GZ_SIM_VER}::gz-sim${GZ_SIM_VER}
- gz-plugin${GZ_PLUGIN_VER}::gz-plugin${GZ_PLUGIN_VER}
- )
-else()
- #If GZ_VERSION is not set default to Fortress
- find_package(ignition-plugin1 REQUIRED COMPONENTS register)
- set(IGN_PLUGIN_VER ${ignition-plugin1_VERSION_MAJOR})
-
- find_package(ignition-gazebo6 REQUIRED)
- set(IGN_GAZEBO_VER ${ignition-gazebo6_VERSION_MAJOR})
-
- add_definitions(-DUSE_IGNITION)
-
- target_link_libraries(lunar_sun_gz_plugin
- ignition-gazebo${IGN_GAZEBO_VER}::ignition-gazebo${IGN_GAZEBO_VER}
- ignition-plugin${IGN_PLUGIN_VER}::ignition-plugin${IGN_PLUGIN_VER}
- )
-endif()
+find_package(gz_sim_vendor REQUIRED)
+find_package(gz-sim REQUIRED)
+set(GZ_SIM_VER ${gz-sim_VERSION_MAJOR})
+
+find_package(gz-plugin2 REQUIRED COMPONENTS register)
+set(GZ_PLUGIN_VER ${gz-plugin2_VERSION_MAJOR})
+
+target_link_libraries(lunar_sun_gz_plugin
+ gz-sim${GZ_SIM_VER}::gz-sim${GZ_SIM_VER}
+ gz-plugin${GZ_PLUGIN_VER}::gz-plugin${GZ_PLUGIN_VER}
+)
set_property(TARGET lunar_sun_gz_plugin PROPERTY CXX_STANDARD 17)
diff --git a/lunar_terrain/lunar_sun_gz_plugin/package.xml b/lunar_terrain/lunar_sun_gz_plugin/package.xml
index 6a9d21a7..8919d552 100644
--- a/lunar_terrain/lunar_sun_gz_plugin/package.xml
+++ b/lunar_terrain/lunar_sun_gz_plugin/package.xml
@@ -10,14 +10,8 @@
Apache License 2.0
ament_cmake
-
- gz-plugin2
- gz-sim7
-
- gz-plugin
- gz-sim6
- gz-plugin
- gz-sim6
+ gz_plugin_vendor
+ gz_sim_vendor
ament_lint_auto
ament_cmake_copyright
@@ -28,4 +22,4 @@
ament_cmake
-
\ No newline at end of file
+
diff --git a/lunar_terrain/lunar_sun_gz_plugin/src/lunar_sun.cpp b/lunar_terrain/lunar_sun_gz_plugin/src/lunar_sun.cpp
index bfa8e530..a2f70e16 100644
--- a/lunar_terrain/lunar_sun_gz_plugin/src/lunar_sun.cpp
+++ b/lunar_terrain/lunar_sun_gz_plugin/src/lunar_sun.cpp
@@ -12,68 +12,60 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-#include
-#include
-#include
-#include
-#include
-#include
+#include
+#include
+#include
+#include
+#include
+#include
#include
-#include
-#include
-#include
-#include
+#include
+#include
+#include
+#include
#include
#include
+#include
+#include
-#ifdef USE_IGNITION
-namespace gazebo = ignition::gazebo;
-#else
-namespace gazebo = gz::sim;
-#endif
-class LunarSun : public gazebo::System,
- public gazebo::ISystemConfigure,
- public gazebo::ISystemUpdate {
+class LunarSun : public gz::sim::System,
+ public gz::sim::ISystemConfigure,
+ public gz::sim::ISystemUpdate {
// Model entity
- gazebo::World world_{gazebo::kNullEntity};
+ gz::sim::World world_{gz::sim::kNullEntity};
// Joint entities
- gazebo::Entity actorEntity, lightEntity;
+ gz::sim::Entity actorEntity, lightEntity;
// Whether the system has been properly configured
bool configured_{false};
public:
- void Configure(const gazebo::Entity& entity,
- const std::shared_ptr& sdf,
- gazebo::EntityComponentManager& ecm,
- gazebo::EventManager& /*eventMgr*/) override {
- this->world_ = gazebo::World(entity);
+ void Configure(const gz::sim::Entity& entity,
+ const std::shared_ptr& /*sdf*/,
+ gz::sim::EntityComponentManager& ecm,
+ gz::sim::EventManager& /*eventMgr*/) override {
+ this->world_ = gz::sim::World(entity);
this->actorEntity =
- ecm.EntityByComponents(gazebo::components::Name("animated_sun"));
+ ecm.EntityByComponents(gz::sim::components::Name("animated_sun"));
LoadCSV("/home/spaceros-user/demos_ws/src/lunar_sun_gz_plugin/horizons_az_el.csv");
- ignition::math::Pose3d startPose(0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
+ gz::math::Pose3d startPose(0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
// Position the light above the ground
ecm.CreateComponent(this->actorEntity,
- gazebo::components::Pose(startPose));
+ gz::sim::components::Pose(startPose));
ecm.CreateComponent(this->actorEntity,
- gazebo::components::TrajectoryPose(
+ gz::sim::components::TrajectoryPose(
this->trajectory[0]));
configured_ = true;
}
- void Update(const gazebo::UpdateInfo& info,
- gazebo::EntityComponentManager& ecm) override {
- // Get actor pose
- auto actor = gazebo::Actor(this->actorEntity);
- auto actorPosition = actor.WorldPose(ecm);
-
-
+ void Update(const gz::sim::UpdateInfo& info,
+ gz::sim::EntityComponentManager& ecm) override {
// Get the current simulation time
this->currentSimTime = info.simTime;
@@ -81,28 +73,28 @@ class LunarSun : public gazebo::System,
std::chrono::_V2::steady_clock::duration elapsedTime =
this->currentSimTime - this->startWaypointTime;
- double secondElapsed =
- std::chrono::duration_cast(elapsedTime).count();
-
if (elapsedTime >= waypointDuration) {
// Move to the next waypoint
this->startWaypointTime = this->currentSimTime;
this->trajectoryIndex++;
- if (this->trajectoryIndex >= this->trajectory.size()) {
+ if (static_cast(this->trajectoryIndex) >= this->trajectory.size()) {
this->trajectoryIndex = 0;
}
// Set the actor's trajectory pose
- actor.SetTrajectoryPose(ecm, this->trajectory[this->trajectoryIndex]);
- ecm.SetChanged(this->actorEntity, gazebo::components::TrajectoryPose::typeId,
- gazebo::ComponentState::PeriodicChange);
+ auto trajPoseComp = ecm.Component(this->actorEntity);
+ if (trajPoseComp) {
+ trajPoseComp->Data() = this->trajectory[this->trajectoryIndex];
+ ecm.SetChanged(this->actorEntity, gz::sim::components::TrajectoryPose::typeId,
+ gz::sim::ComponentState::PeriodicChange);
+ }
- ignition::msgs::Light lightMsg;
+ gz::msgs::Light lightMsg;
lightMsg.set_name("sunlight");
- lightMsg.set_type(ignition::msgs::Light::DIRECTIONAL);
+ lightMsg.set_type(gz::msgs::Light::DIRECTIONAL);
// Set the pose in the light message
// Directly set the position components
- ignition::msgs::Pose* poseLight2 = lightMsg.mutable_pose();
+ gz::msgs::Pose* poseLight2 = lightMsg.mutable_pose();
poseLight2->mutable_position()->set_x(
this->trajectory[this->trajectoryIndex].X());
poseLight2->mutable_position()->set_y(
@@ -140,16 +132,16 @@ class LunarSun : public gazebo::System,
// Publish the light message to the light config service
bool result;
- ignition::msgs::Boolean res;
- ignition::transport::Node node;
+ gz::msgs::Boolean res;
+ gz::transport::Node node;
constexpr unsigned int timeout = 5000;
- bool executed = node.Request("/world/dem_heightmap/light_config", lightMsg,
- timeout, res, result);
+ node.Request("/world/dem_heightmap/light_config", lightMsg,
+ timeout, res, result);
- ecm.SetChanged(this->lightEntity, gazebo::components::Pose::typeId,
- gazebo::ComponentState::PeriodicChange);
- ecm.SetChanged(this->lightEntity, gazebo::components::Light::typeId,
- gazebo::ComponentState::PeriodicChange);
+ ecm.SetChanged(this->lightEntity, gz::sim::components::Pose::typeId,
+ gz::sim::ComponentState::PeriodicChange);
+ ecm.SetChanged(this->lightEntity, gz::sim::components::Light::typeId,
+ gz::sim::ComponentState::PeriodicChange);
} else {
return;
}
@@ -192,17 +184,17 @@ class LunarSun : public gazebo::System,
double elevation = std::stod(elevationStr);
// Convert azimuth and elevation to radians and then to a Pose
- ignition::math::Vector3d position(
+ gz::math::Vector3d position(
100000 * cos(azimuth * M_PI / 180.0) * cos(elevation * M_PI / 180.0),
100000 * sin(azimuth * M_PI / 180.0) * cos(elevation * M_PI / 180.0),
(100000 * sin(elevation * M_PI / 180.0)) - 10000);
- ignition::math::Pose3d pose(position, ignition::math::Quaterniond::Identity);
+ gz::math::Pose3d pose(position, gz::math::Quaterniond::Identity);
this->trajectory.push_back(pose);
}
}
- std::vector trajectory;
+ std::vector trajectory;
int trajectoryIndex = 0;
std::chrono::_V2::steady_clock::duration startWaypointTime =
std::chrono::steady_clock::duration::zero();
@@ -211,5 +203,5 @@ class LunarSun : public gazebo::System,
std::chrono::hours(1);
};
-IGNITION_ADD_PLUGIN(LunarSun, gazebo::System, LunarSun::ISystemConfigure,
+GZ_ADD_PLUGIN(LunarSun, gz::sim::System, LunarSun::ISystemConfigure,
LunarSun::ISystemUpdate)
diff --git a/lunar_terrain/lunar_terrain_gz_bringup/config/leo_ros_gz_bridge.yaml b/lunar_terrain/lunar_terrain_gz_bringup/config/leo_ros_gz_bridge.yaml
index 4f98732d..6da55ab5 100644
--- a/lunar_terrain/lunar_terrain_gz_bringup/config/leo_ros_gz_bridge.yaml
+++ b/lunar_terrain/lunar_terrain_gz_bringup/config/leo_ros_gz_bridge.yaml
@@ -2,20 +2,20 @@
- ros_topic_name: "/cmd_vel"
ros_type_name: "geometry_msgs/msg/Twist"
gz_topic_name: "/cmd_vel"
- gz_type_name: "ignition.msgs.Twist"
+ gz_type_name: "gz.msgs.Twist"
direction: ROS_TO_GZ
- gz_topic_name: "/imu/data_raw"
- gz_type_name: "ignition.msgs.IMU"
+ gz_type_name: "gz.msgs.IMU"
ros_topic_name: "/imu/data_raw"
ros_type_name: "sensor_msgs/msg/Imu"
direction: GZ_TO_ROS
- gz_topic_name: "/joint_states"
- gz_type_name: "ignition.msgs.Model"
+ gz_type_name: "gz.msgs.Model"
ros_topic_name: "/joint_states"
ros_type_name: "sensor_msgs/msg/JointState"
direction: GZ_TO_ROS
- gz_topic_name: "/odom"
- gz_type_name: "ignition.msgs.Odometry"
+ gz_type_name: "gz.msgs.Odometry"
ros_topic_name: "/odom"
ros_type_name: "nav_msgs/msg/Odometry"
- direction: GZ_TO_ROS
\ No newline at end of file
+ direction: GZ_TO_ROS
diff --git a/lunar_terrain/lunar_terrain_gz_bringup/launch/lunar_terrain_world.launch.py b/lunar_terrain/lunar_terrain_gz_bringup/launch/lunar_terrain_world.launch.py
index 78ad54d9..c99e877c 100644
--- a/lunar_terrain/lunar_terrain_gz_bringup/launch/lunar_terrain_world.launch.py
+++ b/lunar_terrain/lunar_terrain_gz_bringup/launch/lunar_terrain_world.launch.py
@@ -64,7 +64,7 @@ def generate_launch_description():
executable="parameter_bridge",
name="clock_bridge",
arguments=[
- "/clock@rosgraph_msgs/msg/Clock[ignition.msgs.Clock]",
+ "/clock@rosgraph_msgs/msg/Clock[gz.msgs.Clock]",
],
parameters=[
{
diff --git a/lunar_terrain/lunar_terrain_gz_worlds/package.xml b/lunar_terrain/lunar_terrain_gz_worlds/package.xml
index 22b677c6..e2bc57d4 100644
--- a/lunar_terrain/lunar_terrain_gz_worlds/package.xml
+++ b/lunar_terrain/lunar_terrain_gz_worlds/package.xml
@@ -12,7 +12,7 @@
ament_lint_auto
ament_lint_common
- ros_ign_gazebo
+ ros_gz
leo_description
diff --git a/nav2_demo/Dockerfile b/nav2_demo/Dockerfile
index 712724f5..a1909f74 100644
--- a/nav2_demo/Dockerfile
+++ b/nav2_demo/Dockerfile
@@ -19,7 +19,7 @@
# VCS_REF - The git revision of the Space ROS source code (no default value).
# VERSION - The version of Space ROS (default: "preview")
-FROM osrf/space-ros-nav2:jazzy-2025.10.0
+FROM osrf/space-ros-nav2:jazzy-2026.01.0
# Define arguments used in the metadata definition
ARG VCS_REF
diff --git a/racs2_demos_on_spaceros/Dockerfile.RACS2 b/racs2_demos_on_spaceros/Dockerfile.RACS2
index ef223364..2a8548cb 100644
--- a/racs2_demos_on_spaceros/Dockerfile.RACS2
+++ b/racs2_demos_on_spaceros/Dockerfile.RACS2
@@ -1,4 +1,4 @@
-FROM osrf/space-ros:jazzy-2025.10.0
+FROM osrf/space-ros:jazzy-2026.01.0
ENV RMW_IMPLEMENTATION=rmw_cyclonedds_cpp
ENV ROS_DISTRO=jazzy
@@ -109,4 +109,4 @@ RUN /bin/bash -lc '\
USER root
COPY start_racs2_demo.sh ${HOME}/start_racs2_demo.sh
RUN chmod +x ${HOME}/start_racs2_demo.sh
-USER spaceros-user
\ No newline at end of file
+USER spaceros-user
diff --git a/space_robots/Dockerfile b/space_robots/Dockerfile
index 1df850c1..e39fab58 100644
--- a/space_robots/Dockerfile
+++ b/space_robots/Dockerfile
@@ -19,7 +19,7 @@
# VCS_REF - The git revision of the Space ROS source code (no default value).
# VERSION - The version of Space ROS (default: "preview")
-FROM osrf/space-ros-moveit2:jazzy-2025.10.0
+FROM osrf/space-ros-moveit2:jazzy-2026.01.0
# Define arguments used in the metadata definition
ARG VCS_REF
@@ -60,6 +60,10 @@ RUN git clone https://github.com/space-ros/simulation.git ${DEMO_DIR}/src/simula
# Space Robots and RACS2 both reuse other demo assets and can lead to conflicts
# This is a temporary fix for [issue #130](https://github.com/space-ros/demos/issues/130)
RUN rm -r ${DEMO_DIR}/src/demos/racs2_demos_on_spaceros
+# the next 2 demos are not related to space_robots so we drop them from this build to not conflict on versions
+RUN rm -r ${DEMO_DIR}/src/demos/lunar_terrain
+RUN rm -r ${DEMO_DIR}/src/demos/ros_trick
+
# Get a list of all installed ros2 packges
RUN source "${SPACEROS_DIR}/setup.bash" && \