# Copyright (C) 2024 Bellande Robotics Sensors Research Innovation Center, Ronaldson Bellande # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see . ARG ROS_ARCHITECTURE_VERSION=latest FROM ronaldsonbellande/bellande_robotic_environment_ros1:latest SHELL ["/bin/bash", "-c"] ENV DEBIAN_FRONTEND noninteractive ENV PYTHON_VERSION="3.8" ARG ROS_ARCHITECTURE_VERSION_GIT_BRANCH=main ARG ROS_ARCHITECTURE_VERSION_GIT_COMMIT=HEAD ENV ROS_VERSION=noetic ENV CATKIN_WS=/opt/ros/overlay_ws LABEL maintainer=ronaldsonbellande@gmail.com LABEL author=ronaldsonbellande@gmail.com LABEL ROS_architecture_github_branchtag=${ROS_ARCHITECTURE_VERSION_GIT_BRANCH} LABEL ROS_architecture_github_commit=${ROS_ARCHITECTURE_VERSION_GIT_COMMIT} # Create local catkin workspace RUN mkdir -p $CATKIN_WS/src # Copy Every Package COPY ../ ${CATKIN_WS}/src # Set the working directory for Catkin WORKDIR $CATKIN_WS # Initialize and configure catkin workspace RUN /bin/bash -c "source /opt/ros/$ROS_VERSION/setup.bash && \ cd $CATKIN_WS && \ catkin init && \ catkin config --extend /opt/ros/$ROS_VERSION && \ catkin config --cmake-args -DCATKIN_ENABLE_TESTING=0" # Install dependencies using rosdep RUN /bin/bash -c "source /opt/ros/$ROS_VERSION/setup.bash && \ cd $CATKIN_WS && \ rosdep update && \ rosdep install -y --from-paths . --ignore-src --rosdistro $ROS_VERSION" # Always source catkin_setup.sh when launching bash COPY ../scripts/catkin_setup.sh /usr/local/bin/catkin_setup.sh RUN echo "source /usr/local/bin/catkin_setup.sh" >> /root/.bashrc && \ chmod +x /usr/local/bin/catkin_setup.sh # Run catkin setup script RUN /usr/local/bin/catkin_setup.sh CMD ["/bin/bash"]