diff --git a/.github/workflows/ubuntu_20_04.yml b/.github/workflows/ubuntu_20_04.yml index 890b29e..7c49e94 100644 --- a/.github/workflows/ubuntu_20_04.yml +++ b/.github/workflows/ubuntu_20_04.yml @@ -5,7 +5,7 @@ on: workflow_dispatch: jobs: - ubuntu2004and2204: + ubuntu2004: runs-on: ubuntu-20.04 # env: steps: @@ -19,30 +19,24 @@ jobs: run: | mkdir staging cd staging - sudo ../ros_from_src/dependencies.sh + mkdir -p underlay_ws/src + cp ../ros_from_src/*sh underlay_ws + sudo underlay_ws/dependencies.sh - name: local git dependencies run: | cd staging + cp ../ros_from_src/*yaml underlay_ws/src + sed -i 's/git@github.com:/https:\/\/github.com\//' underlay_ws/src/underlay_repos.yaml # override rosconsole in 20.04 for log4cxx compatibility - ROSCONSOLE=https://github.com/ros/rosconsole ../ros_from_src/git_clone.sh + underlay_ws/git_clone.sh - name: local build run: | cd staging - ../ros_from_src/build.sh + underlay_ws/build.sh - - name: docker build from source 20.04 + - name: local catkin build run: | - cd ros_from_src - docker build --build-arg IMAGE=ubuntu:20.04 --build-arg ROSCONSOLE=https://github.com/ros/rosconsole --build-arg PYTHON_MINOR_VERSION=8 . -t ros2004 - - - name: docker build from source 22.04 - run: | - cd ros_from_src - docker build --build-arg IMAGE=ubuntu:22.04 --build-arg PYTHON_MINOR_VERSION=10 . -t ros2204 - - - name: docker build from source and debian 22.04 - run: | - cd ros_from_src/ubuntu_2204 - docker build . -t ros_debian_2204 + cd staging + underlay_ws/catkin.sh diff --git a/.github/workflows/ubuntu_20_04_docker.yml b/.github/workflows/ubuntu_20_04_docker.yml new file mode 100644 index 0000000..7d33f22 --- /dev/null +++ b/.github/workflows/ubuntu_20_04_docker.yml @@ -0,0 +1,23 @@ +name: Ubuntu 20.04 Noetic ROS build from source + +on: + push: + workflow_dispatch: + +jobs: + ubuntu2004: + runs-on: ubuntu-20.04 + # env: + steps: + - name: git clone git@github.com:lucasw/ros_from_src + uses: actions/checkout@v2 + with: + path: ros_from_src + submodules: recursive + + # TODO(lucasw) probably could combine 20.04, 22.04, and 24.04 docker builds into a single action yaml + # with matrix branches that execute simultaneously + - name: docker build from source 20.04 + run: | + cd ros_from_src + docker build --build-arg IMAGE=ubuntu:20.04 --build-arg SUBDIR=ubuntu_2004 . -t ros2004 diff --git a/.github/workflows/ubuntu_22_04.yml b/.github/workflows/ubuntu_22_04.yml index 2675d1e..b2d8e10 100644 --- a/.github/workflows/ubuntu_22_04.yml +++ b/.github/workflows/ubuntu_22_04.yml @@ -210,9 +210,6 @@ jobs: touch other/fuse/CATKIN_IGNORE - touch other/lvr2/CATKIN_IGNORE - touch other/mesh_tools/CATKIN_IGNORE - touch other/rtabmap/CATKIN_IGNORE touch other/rtabmap_ros/CATKIN_IGNORE diff --git a/.github/workflows/ubuntu_22_04_docker.yml b/.github/workflows/ubuntu_22_04_docker.yml new file mode 100644 index 0000000..0f5a0c7 --- /dev/null +++ b/.github/workflows/ubuntu_22_04_docker.yml @@ -0,0 +1,26 @@ +name: Ubuntu 22.04 Noetic ROS build from source in docker + +on: + push: + workflow_dispatch: + +jobs: + ubuntu2204docker: + runs-on: ubuntu-22.04 + steps: + - name: git clone git@github.com:lucasw/ros_from_src + uses: actions/checkout@v2 + with: + path: ros_from_src + submodules: recursive + + # TODO(lucasw) move these 22.04 builds into separate action + - name: docker build from source 22.04 + run: | + cd ros_from_src + docker build --build-arg IMAGE=ubuntu:22.04 --build-arg SUBDIR=ubuntu_2404 . -t ros2204 + + - name: docker build from source and debian 22.04 + run: | + cd ros_from_src/ubuntu_2204 + docker build . -t ros_debian_2204 diff --git a/.github/workflows/ubuntu_24_04.yml b/.github/workflows/ubuntu_24_04.yml new file mode 100644 index 0000000..1d1cc80 --- /dev/null +++ b/.github/workflows/ubuntu_24_04.yml @@ -0,0 +1,42 @@ +name: Ubuntu 24.04 Noetic ROS build from source in docker + +on: + push: + workflow_dispatch: + +jobs: + ubuntu2404: + runs-on: ubuntu-24.04 + # env: + steps: + - name: git clone git@github.com:lucasw/ros_from_src + uses: actions/checkout@v4 + with: + path: ros_from_src + submodules: recursive + + - name: local apt dependencies + run: | + mkdir staging + cd staging + mkdir -p underlay_ws/src + cp ../ros_from_src/*sh underlay_ws + sudo underlay_ws/dependencies.sh + sudo ../ros_from_src/ubuntu_2404/dependencies.sh + + - name: local git dependencies + run: | + cd staging + cp ../ros_from_src/*yaml underlay_ws/src + sed -i 's/git@github.com:/https:\/\/github.com\//' underlay_ws/src/underlay_repos.yaml + underlay_ws/git_clone.sh + + - name: local build + run: | + cd staging + underlay_ws/build.sh + + - name: local catkin build + run: | + cd staging + underlay_ws/catkin.sh diff --git a/.github/workflows/ubuntu_24_04_docker.yml b/.github/workflows/ubuntu_24_04_docker.yml new file mode 100644 index 0000000..cf9c327 --- /dev/null +++ b/.github/workflows/ubuntu_24_04_docker.yml @@ -0,0 +1,23 @@ +name: Ubuntu 24.04 Noetic ROS build from source in docker + +on: + push: + workflow_dispatch: + +jobs: + ubuntu2404docker: + runs-on: ubuntu-24.04 + steps: + - name: git clone git@github.com:lucasw/ros_from_src + uses: actions/checkout@v4 + with: + path: ros_from_src + submodules: recursive + + - name: docker build from source 24.04 + run: | + cd ros_from_src + docker build --build-arg IMAGE=ubuntu:24.04 --build-arg SUBDIR=ubuntu_2404 . -t ros2404 + + # TODO(lucasw) ubuntu_2404/Dockerfile doesn't work, was depending on the now-removed + # apt debian science ros packages diff --git a/Dockerfile b/Dockerfile index c69f55d..05f5364 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,7 +1,8 @@ -ARG IMAGE=ubuntu:22.04 +ARG IMAGE=ubuntu:24.04 FROM ${IMAGE} ARG IMAGE RUN echo ${IMAGE} +ARG SUBDIR ENV DEBIAN_FRONTEND="noninteractive" @@ -9,192 +10,50 @@ ENV DEBIAN_FRONTEND="noninteractive" RUN rm /bin/sh && ln -s /bin/bash /bin/sh RUN apt-get update -RUN apt-get install -y apt-utils - -# apt installs -# TODO(lucasw) used to do these on separate layers but github actions has a layer limit? -# it was failing later with 'ERROR: failed to solve: failed to prepare...max depth exceeded' -RUN apt-get install -y build-essential bzip2 libbz2-dev cmake git libboost-dev libboost-filesystem-dev libboost-program-options-dev libboost-regex-dev libboost-thread-dev libfmt-dev libgpgme-dev libgtest-dev liblog4cxx-dev liblz4-dev lz4 libpoco-dev libtinyxml2-dev mawk coreutils python-is-python3 python3 python3-dev python3-empy python3-setuptools python3-yaml -RUN apt-get update && apt-get install -yqq libgsl-dev wget libspnav-dev liburdfdom-dev libyaml-cpp-dev cython3 freeglut3-dev libapriltag-dev libcgal-dev libhdf5-dev libturbojpeg0-dev libzmq3-dev ocl-icd-opencl-dev opencl-headers - -ENV SRC=/src -RUN mkdir $SRC -p -ENV BUILD=/build -RUN mkdir $BUILD -p -ENV WS=/catkin_ws/src -RUN mkdir $WS -p - -ENV DEST=/opt/ros/noetic +RUN apt-get install -yqq apt-utils +RUN apt-get install -yqq git # TODO(lucasw) this doesn't work in 20.04 because of log # --build-args ROSCONSOLE=https://github.com/ros-o/rosconsole -ARG ROSCONSOLE=https://github.com/ros-o/rosconsole +# ARG ROSCONSOLE=https://github.com/ros-o/rosconsole # ENV ROSCONSOLE=$ROSCONSOLE -RUN echo $ROSCONSOLE +# RUN echo $ROSCONSOLE # packages that need to be cmake installed, and are ros packages in a catkin workspace RUN mkdir $SRC/ros_from_src -p WORKDIR / -COPY git_clone.sh $SRC/ros_from_src -# WORKDIR $SRC/ros_from_src -RUN ROS_CONSOLE=$ROSCONSOLE $SRC/ros_from_src/git_clone.sh - -# python installs - -RUN python --version | awk '{print $2}' | cut -d'.' -f1 -RUN python --version | awk '{print $2}' | cut -d'.' -f2 -# TODO(lucasw) these aren't working -# RUN export PYTHON_MAJOR_VERSION=`python --version | awk '{print $2}' | cut -d'.' -f1` -# RUN export PYTHON_MINOR_VERSION=`python --version | awk '{print $2}' | cut -d'.' -f2` -# RUN PYTHON_MINOR_VERSION=`python --version | awk '{print $2}' | cut -d'.' -f2` -ARG PYTHON_MAJOR_VERSION=3 -ARG PYTHON_MINOR_VERSION=10 -ENV OPT_PYTHONPATH=$DEST/lib/python$PYTHON_MAJOR_VERSION.$PYTHON_MINOR_VERSION/site-packages/ -RUN echo $PYTHONPATH -ENV PYTHONPATH=$OPT_PYTHONPATH -RUN echo $PYTHONPATH - -# catkin_pkg -WORKDIR $SRC/catkin_pkg -RUN pwd -RUN python3 setup.py install --prefix=$DEST --record install_manifest.txt --single-version-externally-managed -RUN ls -l $OPT_PYTHONPATH -RUN ls -l $OPT_PYTHONPATH/catkin_pkg -# RUN python -c "import sys; print(sys.path)" -RUN python -c "import catkin_pkg; print(catkin_pkg.__version__)" -RUN apt-get install -y python3-pyparsing -RUN python -c "from catkin_pkg.package import parse_package" - -# osrf pycommon -WORKDIR $SRC/osrf_pycommon -# TODO(lucasw) install to $DEST -RUN python3 setup.py install --prefix=$DEST --record install_manifest.txt --single-version-externally-managed - -# catkin tools -WORKDIR $SRC/catkin_tools -RUN python3 setup.py install --prefix=$DEST --record install_manifest.txt --single-version-externally-managed - -# cmake install -RUN mkdir $BUILD/catkin -p -WORKDIR $BUILD/catkin -RUN cmake $WS/catkin -DCATKIN_BUILD_BINARY_PACKAGE=ON -DCMAKE_INSTALL_PREFIX=$DEST -DPYTHON_EXECUTABLE=/usr/bin/python -DSETUPTOOLS_DEB_LAYOUT=OFF -DCATKIN_INSTALL_INTO_PREFIX_ROOT=true && make && make install -RUN python -c "import catkin; print(catkin)" -RUN ls -l $DEST/bin -ENV PATH=$PATH:$DEST/bin - -# console_bridge -RUN mkdir $BUILD/console_bridge -p -WORKDIR $BUILD/console_bridge -# RUN cmake ../../console_bridge -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_LIBDIR=lib && make && make install -RUN cmake $WS/console_bridge -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$DEST -DCMAKE_INSTALL_LIBDIR=lib -RUN make -RUN make install - -# cmake_modules -WORKDIR $WS -RUN mkdir $BUILD/cmake_modules -p -RUN ls -l $DEST/lib -WORKDIR $BUILD/cmake_modules -RUN cmake $WS/cmake_modules -DCATKIN_BUILD_BINARY_PACKAGE=ON -DCMAKE_INSTALL_PREFIX=$DEST -DPYTHON_EXECUTABLE=/usr/bin/python -DSETUPTOOLS_DEB_LAYOUT=OFF -RUN make -RUN make install - -# class_loader -RUN mkdir $BUILD/class_loader -p -RUN export CMAKE_PREFIX_PATH=$CMAKE_PREFIX_PATH:$DEST:$DEST/lib/cmake -RUN ls -l $DEST -RUN ls -l $DEST/share/cmake_modules/cmake/ -WORKDIR $BUILD/class_loader -RUN cmake $WS/class_loader -DCATKIN_BUILD_BINARY_PACKAGE=ON -DCMAKE_INSTALL_PREFIX=$DEST -DPYTHON_EXECUTABLE=/usr/bin/python -DSETUPTOOLS_DEB_LAYOUT=OFF -Dcmake_modules_DIR=$DEST/share/cmake_modules/cmake/ -RUN make -RUN make install -# ros_environment -RUN mkdir $BUILD/ros_environment -p -RUN pwd -WORKDIR $BUILD/ros_environment -RUN cmake $SRC/ros_environment -DCATKIN_BUILD_BINARY_PACKAGE=ON -DCMAKE_INSTALL_PREFIX=$DEST -DPYTHON_EXECUTABLE=/usr/bin/python -DSETUPTOOLS_DEB_LAYOUT=OFF -RUN make -RUN make install +COPY dependencies.sh $SRC/ros_from_src +RUN $SRC/ros_from_src/dependencies.sh -# ros_pack -RUN mkdir $BUILD/rospack -p -WORKDIR $BUILD/rospack -RUN cmake $WS/rospack -DCATKIN_BUILD_BINARY_PACKAGE=ON -DCMAKE_INSTALL_PREFIX=$DEST -DPYTHON_EXECUTABLE=/usr/bin/python -DSETUPTOOLS_DEB_LAYOUT=OFF -Dcmake_modules_DIR=$DEST/share/cmake_modules/cmake/ -RUN make -RUN make install +COPY ${SUBDIR}/dependencies.sh $SRC/ros_from_src/base_dependencies.sh +RUN $SRC/ros_from_src/base_dependencies.sh -# genmsg -RUN mkdir $BUILD/genmsg -p -WORKDIR $BUILD/genmsg -RUN cmake $WS/genmsg -DCATKIN_BUILD_BINARY_PACKAGE=ON -DCMAKE_INSTALL_PREFIX=$DEST -DPYTHON_EXECUTABLE=/usr/bin/python -DSETUPTOOLS_DEB_LAYOUT=OFF -RUN make -RUN make install - -# roslib -RUN mkdir $BUILD/roslib -p -WORKDIR $BUILD/roslib -RUN cmake $WS/ros/core/roslib -DCATKIN_BUILD_BINARY_PACKAGE=ON -DCMAKE_INSTALL_PREFIX=$DEST -DPYTHON_EXECUTABLE=/usr/bin/python -DSETUPTOOLS_DEB_LAYOUT=OFF -Drospack_DIR=$DEST/share/rospack/cmake/ -RUN make -RUN make install - -# rosbuild -RUN mkdir $BUILD/rosbuild -p -WORKDIR $BUILD/rosbuild -RUN cmake $WS/ros/core/rosbuild -DCATKIN_BUILD_BINARY_PACKAGE=ON -DCMAKE_INSTALL_PREFIX=$DEST -DPYTHON_EXECUTABLE=/usr/bin/python -DSETUPTOOLS_DEB_LAYOUT=OFF # -Drospack_DIR=$DEST/share/rospack/cmake/ -RUN make -RUN make install - -RUN apt-get update -RUN apt-get install -y python3-dateutil -RUN apt-get install -y python3-docutils -RUN export PATH=$PATH:/usr/local/bin -RUN catkin --help - -RUN apt-get install -y python3-defusedxml -RUN apt-get install -y python3-distro - -# ros packages, regular catkin build only for these -WORKDIR $WS - - -# runtime dependencies -# rosbuild -WORKDIR $SRC/rospkg -RUN python3 setup.py install --prefix=$DEST --record install_manifest.txt --single-version-externally-managed - -WORKDIR $SRC/rosdistro -RUN python3 setup.py install --prefix=$DEST --record install_manifest.txt --single-version-externally-managed - -# can be sudo in docker, but otherwise want git clone https://github.com/lucasw/rosdep --branch disable_root_etc_ros -WORKDIR $SRC/rosdep -RUN python3 setup.py install --prefix=$DEST --record install_manifest.txt --single-version-externally-managed -RUN rosdep init -# ERROR: unable to process source [https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/base.yaml]: -RUN rosdep update || true +# WORKDIR $SRC/ros_from_src +RUN mkdir -p underlay_ws/src +COPY underlay_repos.yaml underlay_ws/src +RUN sed -i 's/git@github.com:/https:\/\/github.com\//' underlay_ws/src/underlay_repos.yaml +COPY git_clone.sh $SRC/ros_from_src +# RUN ROS_CONSOLE=$ROSCONSOLE $SRC/ros_from_src/git_clone.sh +RUN $SRC/ros_from_src/git_clone.sh -# TODO(lucasw) already have a copy of this but needs to be in the workspace -# RUN find / | grep setup.bash -# RUN find / | grep catkin-config.cmake -WORKDIR $WS/.. -RUN source $DEST/setup.bash -RUN catkin init -RUN source $DEST/setup.bash && catkin config --install --cmake-args -DCMAKE_BUILD_TYPE=Release -Wno-deprecated -# rospack list won't work by itself -RUN source $DEST/setup.bash && rospack list +COPY env.sh underlay_ws +COPY build.sh $SRC/ros_from_src +RUN $SRC/ros_from_src/build.sh -# regular catkin build -# RUN rosdep install --from-paths src --ignore-src -r -s # do a dry-run first -# RUN rosdep install --from-paths src --ignore-src -r -y -ENV CMAKE_PREFIX_PATH=$CMAKE_PREFIX_PATH:$DEST:$DEST/lib/cmake -RUN echo $CMAKE_PREFIX_PATH -# TODO(lucasw) put this in WS to begin with -RUN echo $ROS_PACKAGE_PATH -RUN catkin build -# rospack list won't work by itself -RUN source install/setup.bash && rospack list +COPY catkin.sh $SRC/ros_from_src +RUN $SRC/ros_from_src/catkin.sh -RUN apt-get install python3-netifaces +# WORKDIR $SRC/ros_from_src +RUN mkdir -p base_ws/src +COPY ${SUBDIR}/base_repos.yaml base_ws/src +RUN sed -i 's/git@github.com:/https:\/\/github.com\//' base_ws/src/base_repos.yaml +COPY ${SUBDIR}/base_git_clone.sh $SRC/ros_from_src +# RUN ROS_CONSOLE=$ROSCONSOLE $SRC/ros_from_src/git_clone.sh +RUN $SRC/ros_from_src/base_git_clone.sh + +COPY ${SUBDIR}/base_catkin.sh $SRC/ros_from_src +RUN $SRC/ros_from_src/base_catkin.sh WORKDIR $WS/.. # TODO(lucasw) run tests diff --git a/build.sh b/build.sh index 170c64b..cc8fdb4 100755 --- a/build.sh +++ b/build.sh @@ -12,49 +12,44 @@ BUILD=`pwd`/build echo $BUILD mkdir -p $BUILD -WS=`pwd`/catkin_ws/src -echo $WS -mkdir -p $WS || true - DEST=`pwd`/ros -# python installs +WS=`pwd`/underlay_ws/src +echo $WS +mkdir $WS -p + +mkdir -p $DEST/local/bin -python --version | awk '{print $2}' | cut -d'.' -f1 -# TODO(lucasw) these aren't working -PYTHON_MAJOR_VERSION=`python --version | awk '{print $2}' | cut -d'.' -f1` -PYTHON_MINOR_VERSION=`python --version | awk '{print $2}' | cut -d'.' -f2` -OPT_PYTHONPATH=$DEST/lib/python$PYTHON_MAJOR_VERSION.$PYTHON_MINOR_VERSION/site-packages/ -echo $PYTHONPATH -export PYTHONPATH=$PYTHONPATH:$OPT_PYTHONPATH -echo PYTHONPATH=\$PYTHONPATH:$OPT_PYTHONPATH +ROS_DEST=$DEST source $WS/../env.sh # catkin_pkg -cd $SRC/catkin_pkg +cd $WS/catkin_pkg python3 setup.py install --prefix=$DEST --record install_manifest.txt --single-version-externally-managed -ls -l $OPT_PYTHONPATH -ls -l $OPT_PYTHONPATH/catkin_pkg # python -c "import sys; print(sys.path)" python -c "import catkin_pkg; print(catkin_pkg.__version__)" python -c "from catkin_pkg.package import parse_package" - # osrf pycommon -cd $SRC/osrf_pycommon +cd $WS/osrf_pycommon # TODO(lucasw) install to $DEST python3 setup.py install --prefix=$DEST --record install_manifest.txt --single-version-externally-managed # catkin tools -cd $SRC/catkin_tools +cd $WS/catkin_tools python3 setup.py install --prefix=$DEST --record install_manifest.txt --single-version-externally-managed # catkin install mkdir -p $BUILD/catkin cd $BUILD/catkin cmake $WS/catkin -DCATKIN_BUILD_BINARY_PACKAGE=ON -DCMAKE_INSTALL_PREFIX=$DEST -DPYTHON_EXECUTABLE=/usr/bin/python -DSETUPTOOLS_DEB_LAYOUT=OFF -DCATKIN_INSTALL_INTO_PREFIX_ROOT=true && make && make install -python -c "import catkin; print(catkin)" +echo $PATH +ls -l $DEST/local/bin ls -l $DEST/bin -PATH=$PATH:$DEST/bin +which catkin +echo $PYTHONPATH +# ls -l $DEST/local/lib/python3.8/dist-packages/ || ls -l $DEST/lib/python3.8/site-packages/ +catkin --version +python -c "import catkin; print(catkin)" # console_bridge mkdir -p $BUILD/console_bridge @@ -63,6 +58,7 @@ cd $BUILD/console_bridge cmake $WS/console_bridge -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$DEST -DCMAKE_INSTALL_LIBDIR=lib make make install +echo "console bridge" # cmake_modules cd $WS @@ -87,7 +83,7 @@ make install mkdir -p $BUILD/ros_environment pwd cd $BUILD/ros_environment -cmake $SRC/ros_environment -DCATKIN_BUILD_BINARY_PACKAGE=ON -DCMAKE_INSTALL_PREFIX=$DEST -DPYTHON_EXECUTABLE=/usr/bin/python -DSETUPTOOLS_DEB_LAYOUT=OFF +cmake $WS/ros_environment -DCATKIN_BUILD_BINARY_PACKAGE=ON -DCMAKE_INSTALL_PREFIX=$DEST -DPYTHON_EXECUTABLE=/usr/bin/python -DSETUPTOOLS_DEB_LAYOUT=OFF make make install @@ -97,6 +93,8 @@ cd $BUILD/rospack cmake $WS/rospack -DCATKIN_BUILD_BINARY_PACKAGE=ON -DCMAKE_INSTALL_PREFIX=$DEST -DPYTHON_EXECUTABLE=/usr/bin/python -DSETUPTOOLS_DEB_LAYOUT=OFF -Dcmake_modules_DIR=$DEST/share/cmake_modules/cmake/ make make install +ls -l $DEST/lib +rospack help # genmsg mkdir -p $BUILD/genmsg @@ -127,34 +125,27 @@ make make install # rospkg -cd $SRC/rospkg +cd $WS/rospkg python3 setup.py install --prefix=$DEST --record install_manifest.txt --single-version-externally-managed -cd $SRC/rosdistro +cd $WS/rosdistro python3 setup.py install --prefix=$DEST --record install_manifest.txt --single-version-externally-managed -cd $SRC/rosdep +cd $WS/rosdep python3 setup.py install --prefix=$DEST --record install_manifest.txt --single-version-externally-managed +echo $PATH +which rosdep rosdep init || true rosdep update +# TODO(lucasw) wouldn't need to ignore most of these if the non-catkin packages +# that have catkin test packages in them were cloned separately +touch $WS/rosdep/test/CATKIN_IGNORE +touch $WS/catkin_pkg/test/CATKIN_IGNORE +touch $WS/catkin_tools/docs/examples/CATKIN_IGNORE +touch $WS/catkin_tools/tests/CATKIN_IGNORE +touch $WS/rospkg/test/CATKIN_IGNORE + # TODO(lucasw) already have a copy of this but needs to be in the workspace # find / | grep setup.bash # find / | grep catkin-config.cmake -cd $WS/.. -catkin init -source $DEST/setup.bash -catkin config -rospack list - -# rosdep install --from-paths src --ignore-src -r -s # do a dry-run first -# rosdep install --from-paths src --ignore-src -r -y -CMAKE_PREFIX_PATH=$CMAKE_PREFIX_PATH:$DEST:$DEST/lib/cmake -echo $CMAKE_PREFIX_PATH -# TODO(lucasw) put this in WS to begin with -# TODO(lucasw) was this needed? Need a bunch of CATKIN_IGNOREs in every package/test dir to make it build -# ln -s $SRC/ros $WS/ros -catkin build --cmake-args -DCMAKE_BUILD_TYPE=Release -Wno-deprecated -source devel/setup.bash -rospack list -# TODO(lucasw) run tests diff --git a/catkin.sh b/catkin.sh new file mode 100755 index 0000000..1203538 --- /dev/null +++ b/catkin.sh @@ -0,0 +1,27 @@ +#!/bin/bash +set -e +set -x + +ls -l +ls -l ros/bin +ROS_DEST=`pwd`/ros source underlay_ws/env.sh + +WS=`pwd`/underlay_ws/src +echo $WS + +cd $WS/.. +echo "#####################" +pwd +# TODO(lucasw) would need to run unminimize to restore man pages +man g++ # grep "This is the default for C++ code" +catkin init +catkin config --install --cmake-args -DCMAKE_BUILD_TYPE=Release -Wno-deprecated -DCATKIN_ENABLE_TESTING=False +echo $PATH +echo $LD_LIBRARY_PATH +rospack list + +catkin build --no-status urdf +catkin build --no-status +source install/setup.bash +rospack list +# TODO(lucasw) run tests diff --git a/dependencies.sh b/dependencies.sh index f207f8c..bd476be 100755 --- a/dependencies.sh +++ b/dependencies.sh @@ -2,23 +2,33 @@ # build apt installs apt-get update + +apt-get install -y python3-pip +apt-get install -y vcstool || pip install vcstool # vcs is in apt 24.04 but only pip in 20.04 + apt-get install -y build-essential apt-get install -y bzip2 libbz2-dev apt-get install -y cmake apt-get install -y coreutils apt-get install -y git +apt-get install -y libb64-dev apt-get install -y libboost-dev apt-get install -y libboost-filesystem-dev apt-get install -y libboost-program-options-dev apt-get install -y libboost-regex-dev apt-get install -y libboost-thread-dev +apt-get install -y libcurl4-openssl-dev apt-get install -y libfmt-dev apt-get install -y libgpgme-dev apt-get install -y libgtest-dev apt-get install -y liblog4cxx-dev apt-get install -y liblz4-dev lz4 +apt-get install -y liborocos-kdl-dev apt-get install -y libpoco-dev +apt-get install -y libtinyxml-dev apt-get install -y libtinyxml2-dev +apt-get install -y liburdfdom-dev +apt-get install -y liburdfdom-headers-dev apt-get install -y mawk apt-get install -y python-is-python3 apt-get install -y python3 @@ -27,6 +37,7 @@ apt-get install -y python3-dev apt-get install -y python3-docutils apt-get install -y python3-empy apt-get install -y python3-pyparsing +apt-get install -y python3-rospkg apt-get install -y python3-setuptools apt-get install -y python3-yaml @@ -39,4 +50,7 @@ apt-get install -y python3-pycryptodome apt-get install -y python3-gnupg # TODO(lucasw) get this from source later -apt-get install -y python3-rosunit +# apt-get install -y python3-rosunit + +apt-get install -y catkin-tools || true # not available in 20.04 +apt-get install -y libbullet-dev diff --git a/env.sh b/env.sh new file mode 100755 index 0000000..ee45ac8 --- /dev/null +++ b/env.sh @@ -0,0 +1,17 @@ +#!/usr/bin/bash +# ROS_DEST=`pwd`/ros source ros_from_src/env.sh +# export ROS_DEST=`pwd`/ros +export PATH=$PATH:$ROS_DEST/bin:$ROS_DEST/local/bin +export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ROS_DEST/lib +# export PATH=$PATH:$ROS_DEST/local/bin + +# python --version | awk '{print $2}' | cut -d'.' -f1 +PYTHON_MAJOR_VERSION=`python --version | awk '{print $2}' | cut -d'.' -f1` +PYTHON_MINOR_VERSION=`python --version | awk '{print $2}' | cut -d'.' -f2` +OPT_PYTHONPATH0=$ROS_DEST/lib/python$PYTHON_MAJOR_VERSION.$PYTHON_MINOR_VERSION/site-packages/ +OPT_PYTHONPATH1=$ROS_DEST/local/lib/python$PYTHON_MAJOR_VERSION.$PYTHON_MINOR_VERSION/dist-packages/ + +export PYTHONPATH=$PYTHONPATH:$OPT_PYTHONPATH0:$OPT_PYTHONPATH1 +echo "PYTHONPATH $PYTHONPATH" +export CMAKE_PREFIX_PATH=$CMAKE_PREFIX_PATH:$ROS_DEST:$ROS_DEST/lib/cmake +echo "CMAKE_PREFIXPATH $CMAKE_PREFIX_PATH" diff --git a/git_clone.sh b/git_clone.sh index ebcb3e9..9324552 100755 --- a/git_clone.sh +++ b/git_clone.sh @@ -1,52 +1,20 @@ #!/bin/bash # TODO(lucasw) replace the below with submodules # export PATH=$PATH:/usr/local/bin +set -e + SRC=`pwd`/src echo $SRC mkdir $SRC -p -WS=`pwd`/catkin_ws/src + +WS=`pwd`/underlay_ws/src echo $WS mkdir $WS -p # TODO(lucasw) replace these git clones with vcs # packages that need to be cmake installed, and are ros packages in a catkin workspace cd $WS -git clone https://github.com/ros/catkin -git clone https://github.com/ros/console_bridge -git clone https://github.com/ros/cmake_modules -git clone https://github.com/ros-o/class_loader -git clone https://github.com/ros/rospack -git clone https://github.com/ros/genmsg - -# ros packages, regular catkin build only for these -git clone https://github.com/ros/ros_comm -git clone https://github.com/ros/roscpp_core -git clone https://github.com/ros/ros_comm_msgs -git clone https://github.com/ros/message_generation -git clone https://github.com/ros/gencpp -git clone https://github.com/jsk-ros-pkg/geneus -git clone https://github.com/RethinkRobotics-opensource/gennodejs -git clone https://github.com/ros/genlisp -git clone https://github.com/ros/genpy -git clone https://github.com/ros/std_msgs -git clone https://github.com/ros/message_runtime -git clone https://github.com/ros-o/pluginlib -git clone https://github.com/ros/ros - -ROSCONSOLE1=${ROSCONSOLE:-https://github.com/ros-o/rosconsole} -git clone $ROSCONSOLE1 - -# pure python -cd $SRC -git clone https://github.com/ros-infrastructure/catkin_pkg -git clone https://github.com/osrf/osrf_pycommon -git clone https://github.com/catkin/catkin_tools - -# cmake installs -git clone https://github.com/ros-o/ros_environment - +vcs import --input underlay_repos.yaml --retry 10 -# runtime -git clone https://github.com/ros-infrastructure/rospkg -git clone https://github.com/ros-infrastructure/rosdistro -git clone https://github.com/lucasw/rosdep --branch disable_root_etc_ros +# ROSCONSOLE1=${ROSCONSOLE:-https://github.com/ros-o/rosconsole} +# git clone $ROSCONSOLE1 diff --git a/ubuntu_2004/base_catkin.sh b/ubuntu_2004/base_catkin.sh new file mode 100755 index 0000000..4d3256a --- /dev/null +++ b/ubuntu_2004/base_catkin.sh @@ -0,0 +1,25 @@ +#!/bin/bash +set -e +set -x + +ls -l +ls -l ros/bin +ROS_DEST=`pwd`/ros source underlay_ws/env.sh + +WS=`pwd`/base_ws/src +echo $WS + +cd $WS/.. +echo "#####################" +pwd +source ../underlay_ws/install/setup.bash +catkin init +catkin config --install --cmake-args -DCMAKE_BUILD_TYPE=Release -Wno-deprecated -DCATKIN_ENABLE_TESTING=False +echo $PATH +echo $LD_LIBRARY_PATH +rospack list + +catkin build ros_comm +source install/setup.bash +rospack list +# TODO(lucasw) run tests diff --git a/ubuntu_2004/base_git_clone.sh b/ubuntu_2004/base_git_clone.sh new file mode 100755 index 0000000..4daac20 --- /dev/null +++ b/ubuntu_2004/base_git_clone.sh @@ -0,0 +1,17 @@ +#!/bin/bash +# TODO(lucasw) replace the below with submodules +# export PATH=$PATH:/usr/local/bin +set -e +set -x + +WS=`pwd`/base_ws/src +echo $WS +mkdir $WS -p + +# TODO(lucasw) replace these git clones with vcs +# packages that need to be cmake installed, and are ros packages in a catkin workspace +cd $WS +vcs import --input base_repos.yaml --retry 10 + +# ROSCONSOLE1=${ROSCONSOLE:-https://github.com/ros-o/rosconsole} +# git clone $ROSCONSOLE1 diff --git a/ubuntu_2004/base_repos.yaml b/ubuntu_2004/base_repos.yaml new file mode 100644 index 0000000..5d50f08 --- /dev/null +++ b/ubuntu_2004/base_repos.yaml @@ -0,0 +1,418 @@ +repositories: + # extra/common_msgs: # in underlay_ws + # type: git + # url: git@github.com:ros/common_msgs + # version: noetic-devel + # extra/geometry: + # type: git + # url: git@github.com:ros-o/geometry + # version: obese-devel + extra/laser_geometry: + type: git + url: git@github.com:ros-o/laser_geometry + version: obese-devel + extra/navigation_msgs: + type: git + url: git@github.com:ros-planning/navigation_msgs + version: ros1 + extra/pcl_msgs: + type: git + url: git@github.com:ros-perception/pcl_msgs + version: noetic-devel + extra/perception_pcl: + type: git + url: git@github.com:ros-o/perception_pcl + version: obese-devel + extra/python_qt_binding: + type: git + url: git@github.com:ros-o/python_qt_binding + version: obese-devel + extra/vision_opencv: + type: git + url: git@github.com:ros-perception/vision_opencv + version: noetic + lucasw/dynamic_reconfigure_tools: + type: git + url: git@github.com:lucasw/dynamic_reconfigure_tools + version: master + lucasw/image_manip: + type: git + url: git@github.com:lucasw/image_manip + version: fix_zero_frame_rate + lucasw/nodelet_demo: + type: git + url: git@github.com:lucasw/nodelet_demo + version: master + lucasw/ros1_lifecycle: + type: git + url: git@github.com:lucasw/ros1_lifecycle + version: misc_fixes + lucasw/ros_example: + type: git + url: git@github.com:lucasw/ros_example + version: main + lucasw/ros_system_monitor: + type: git + url: git@github.com:lucasw/ros_system_monitor + version: chrony_monitor + lucasw/screengrab_ros: + type: git + url: git@github.com:lucasw/screengrab_ros + version: master + lucasw/signal_generator: + type: git + url: git@github.com:lucasw/signal_generator + version: master + lucasw/tf_demo: + type: git + url: git@github.com:lucasw/tf_demo + version: old_tf_to_new_tf + lucasw/timer_test: + type: git + url: git@github.com:lucasw/timer_test + version: master + lucasw/topic_state: + type: git + url: git@github.com:lucasw/topic_state + version: master + lucasw/transform_point_cloud: + type: git + url: git@github.com:lucasw/transform_point_cloud + version: master + lucasw/v4l2ucp: + type: git + url: git@github.com:lucasw/v4l2ucp + version: master + lucasw/vimjay: + type: git + url: git@github.com:lucasw/vimjay + version: eliminate_build_warnings + opencv_apps: + type: git + # url: git@github.com:ros-perception/opencv_apps + url: git@github.com:muellerbernd/opencv_apps + version: indigo + other/PlotJuggler: + type: git + url: git@github.com:facontidavide/PlotJuggler + version: main + other/apriltag_ros: + type: git + url: git@github.com:AprilRobotics/apriltag_ros + version: master + other/camera_throttler_nodelets: + type: git + url: git@github.com:lucasw/camera_throttler_nodelets + version: noetic_aggregated + other/catkin_virtualenv: + type: git + url: git@github.com:locusrobotics/catkin_virtualenv + version: master + other/ddynamic_reconfigure: + type: git + url: git@github.com:ros-o/ddynamic_reconfigure + version: obese-devel + other/euslisp-release: + type: git + url: git@github.com:tork-a/euslisp-release + version: release/melodic/euslisp + other/fiducials: + type: git + url: git@github.com:lucasw/fiducials + version: cmake_vision_msgs + # other/geneus: # in underlay_ws + # type: git + # url: git@github.com:jsk-ros-pkg/geneus + # version: master + other/jsk_common: + type: git + url: git@github.com:lucasw/jsk_common + version: video_to_bag_features + other/jsk_common_msgs: + type: git + url: git@github.com:lucasw/jsk_common_msgs + version: master + other/jsk_recognition: + type: git + url: git@github.com:lucasw/jsk_recognition + version: pcl_vtk_isfinite + other/jsk_roseus: + type: git + url: git@github.com:jsk-ros-pkg/jsk_roseus + version: master + other/libnabo: + type: git + url: git@github.com:ethz-asl/libnabo + version: master + other/lvr2: + type: git + url: git@github.com:uos/lvr2 + version: develop + other/marti_messages: + type: git + url: git@github.com:swri-robotics/marti_messages + version: master + other/message_filters: + type: git + url: git@github.com:fkie/message_filters + version: master + other/nmea_navsat_driver: + type: git + url: git@github.com:ros-drivers/nmea_navsat_driver + version: master + other/nodelet_rosbag: + type: git + url: git@github.com:lucasw/nodelet_rosbag + version: pluginlib_hpp + other/pal_statistics: + type: git + url: git@github.com:pal-robotics/pal_statistics + version: kinetic-devel + other/pid: + type: git + url: git@github.com:lucasw/pid + version: boost_placeholders + other/plotjuggler-ros-plugins: + type: git + url: git@github.com:PlotJuggler/plotjuggler-ros-plugins + version: main + other/plotjuggler_msgs: + type: git + url: git@github.com:PlotJuggler/plotjuggler_msgs + version: main + other/point_cloud_converter: + type: git + url: git@github.com:pal-robotics-forks/point_cloud_converter + version: hydro-devel + other/ros_control_boilerplate: + type: git + url: git@github.com:lucasw/ros_control_boilerplate + version: cpp17 + other/ros_numpy: + type: git + url: git@github.com:lucasw/ros_numpy + version: collections_abc + other/ros_rtsp: + type: git + url: git@github.com:lucasw/ros_rtsp + version: pluginlib_hpp + other/ros_type_introspection: + type: git + url: git@github.com:lucasw/ros_type_introspection + version: build_2204 + other/rosbag_snapshot: + type: git + url: git@github.com:ros/rosbag_snapshot + version: main + other/static_transform_mux: + type: git + url: git@github.com:tradr-project/static_transform_mux + version: master + other/tf2_2d: + type: git + url: git@github.com:locusrobotics/tf2_2d + version: devel + other/wu_ros_tools: + type: git + url: git@github.com:lucasw/wu_ros_tools + version: noetic + ros/audio_common: + type: git + url: git@github.com:ros-drivers/audio_common + version: master + ros/camera_info_manager_py: + type: git + url: git@github.com:lucasw/camera_info_manager_py + version: noetic-devel + ros/common_tutorials: + type: git + url: git@github.com:lucasw/common_tutorials + version: boost_placeholders + ros/control_msgs: + type: git + url: git@github.com:ros-controls/control_msgs + version: kinetic-devel + ros/ddynamic_reconfigure_python: + type: git + url: git@github.com:pal-robotics/ddynamic_reconfigure_python + version: master + ros/diagnostics: + type: git + url: git@github.com:ros/diagnostics + version: noetic-devel + ros/dynamic_reconfigure: + type: git + url: git@github.com:lucasw/dynamic_reconfigure + version: init_default_values + ros/filters: + type: git + url: git@github.com:ros/filters + version: noetic-devel + ros/four_wheel_steering_msgs: + type: git + url: git@github.com:ros-drivers/four_wheel_steering_msgs + version: master + ros/geographic_info: + type: git + url: git@github.com:ros-geographic-info/geographic_info + version: master + # ros/geometry2: # in underlay_ws + # type: git + # url: git@github.com:lucasw/geometry2 + # version: noetic_aggregated + ros/grid_map: + type: git + url: git@github.com:lucasw/grid_map + version: tbb_2021 + ros/image_common: + type: git + url: git@github.com:lucasw/image_common + version: ubuntu_2210 + ros/image_pipeline: + type: git + url: git@github.com:lucasw/image_pipeline + version: rgb_in_depth_range + ros/image_transport_plugins: + type: git + url: git@github.com:lucasw/image_transport_plugins + version: enable_pub + ros/joint_state_publisher: + type: git + url: git@github.com:lucasw/joint_state_publisher + version: noetic_aggregated + ros/joystick_drivers: + type: git + url: git@github.com:lucasw/joystick_drivers + version: warn_not_error_if_no_joy + ros/laser_assembler: + type: git + url: git@github.com:lucasw/laser_assembler + version: noetic-devel + ros/libuvc_ros: + type: git + url: git@github.com:lucasw/libuvc_ros + version: libuvc_0_0_7 + ros/media_export: + type: git + url: git@github.com:ros/media_export + version: kinetic-devel + ros/navigation: + type: git + url: git@github.com:lucasw/navigation + version: lucasw_debug + ros/nmea_msgs: + type: git + url: git@github.com:ros-drivers/nmea_msgs + version: master + ros/nodelet_core: + type: git + url: git@github.com:lucasw/nodelet_core + version: throttle_looping_time + ros/octomap_msgs: + type: git + url: git@github.com:OctoMap/octomap_msgs + version: melodic-devel + ros/realtime_tools: + type: git + url: git@github.com:ros-controls/realtime_tools + version: noetic-devel + ros/robot_state_publisher: + type: git + url: git@github.com:lucasw/robot_state_publisher + version: robot_state_function + ros/ros_comm: # custom overlay with logging mods + type: git + url: git@github.com:lucasw/ros_comm + version: salsa_noetic_aggregated + ros/ros_control: + type: git + url: git@github.com:lucasw/ros_control + version: acceleration_limits + ros/ros_controllers: + type: git + url: git@github.com:lucasw/ros_controllers + version: avoid_no_trajectory_defined + ros/ros_tutorials: + type: git + url: git@github.com:lucasw/ros_tutorials + version: boost_placeholders + ros/rosconsole: # lucasw logging mods + type: git + url: git@github.com:lucasw/rosconsole + version: ubuntu_2210 + ros/roscpp_core: # lucasw fixes + type: git + url: git@github.com:lucasw/roscpp_core + version: duration_out_of_dual_range + ros/rospack: # debian patches + type: git + url: git@github.com:lucasw/rospack + version: salsa + ros/rqt: + type: git + url: git@github.com:lucasw/rqt + version: ubuntu_2210 + ros/teleop_twist_joy: + type: git + url: git@github.com:lucasw/teleop_twist_joy + version: cmp0115_cpp_extension + ros/teleop_twist_keyboard: + type: git + url: git@github.com:ros-teleop/teleop_twist_keyboard + version: master + ros/twist_mux: + type: git + url: git@github.com:lucasw/twist_mux + version: ubuntu2210 + ros/twist_mux_msgs: + type: git + url: git@github.com:ros-teleop/twist_mux_msgs + version: melodic-devel + ros/unique_identifier: + type: git + url: git@github.com:ros-geographic-info/unique_identifier + version: master + ros/urdf_geometry_parser: + type: git + url: git@github.com:ros-controls/urdf_geometry_parser + version: kinetic-devel + ros/urdf_parser_py: + type: git + url: git@github.com:ros/urdf_parser_py + version: melodic-devel + ros/usb_cam: + type: git + url: git@github.com:ros-drivers/usb_cam + version: develop + ros/video_stream_opencv: + type: git + url: git@github.com:lucasw/video_stream_opencv + version: build_2204 + ros/view_controller_msgs: + type: git + url: git@github.com:ros-visualization/view_controller_msgs + version: lunar-devel + ros/vision_msgs: + type: git + url: git@github.com:ros-perception/vision_msgs + version: noetic-devel + ros/web_video_server: + type: git + url: git@github.com:lucasw/web_video_server + version: boost_placeholders + ros/xacro: + type: git + url: git@github.com:lucasw/xacro + version: cleanup_roslint + roso/control_toolbox: + type: git + url: git@github.com:ros-o/control_toolbox + version: obese-devel + roso/qt_gui_core: + type: git + url: git@github.com:lucasw/qt_gui_core + version: ubuntu_2210 + roso/rosparam_shortcuts: + type: git + url: git@github.com:lucasw/rosparam_shortcuts + version: cleanup_lint diff --git a/ubuntu_2004/dependencies.sh b/ubuntu_2004/dependencies.sh new file mode 100755 index 0000000..af7ee78 --- /dev/null +++ b/ubuntu_2004/dependencies.sh @@ -0,0 +1,3 @@ +#!/bin/bash + +apt-get install -yq libboost-iostreams-dev libboost-test-dev libboost-timer-dev libcgal-dev libgdal-dev libopencv-dev liboctomap-dev libpcl-dev libvtk7-dev sip-dev diff --git a/ubuntu_2204/Dockerfile b/ubuntu_2204/Dockerfile index 7a581a7..f4abef1 100644 --- a/ubuntu_2204/Dockerfile +++ b/ubuntu_2204/Dockerfile @@ -15,6 +15,8 @@ RUN apt-get install -yqq apt-utils # apt installs RUN apt-get update && apt-get install -yqq git +RUN apt-get update && apt-cache search ros- +RUN apt-get update && apt-cache search catkin RUN apt-get update && apt-get install -yqq ros-* RUN apt-get update && apt-get install -yqq catkin-lint cython3 libapriltag-dev libceres-dev libfmt-dev libfrei0r-ocaml-dev libgeographic-dev libgmock-dev libgoogle-glog-dev libgst-dev libgstreamer-plugins-base1.0-dev libgstreamer1.0-dev libimage-view-dev liborocos-bfl-dev libpcl-ros-dev libqt5svg5-dev libqt5websockets5-dev libqt5x11extras5-dev libqwt-qt5-dev libsdl-image1.2-dev libspnav-dev liburdfdom-dev libuvc-dev libv4l-dev libyaml-cpp-dev python-is-python3 python3-tf2-geometry-msgs python3-venv vim curl jq RUN apt-get update && apt-get install -yqq libgsl-dev wget freeglut3-dev libcgal-dev libhdf5-dev libturbojpeg0-dev libzmq3-dev @@ -38,7 +40,7 @@ RUN ls -l RUN python3 setup.py install --prefix=$DEST --record install_manifest.txt --single-version-externally-managed WORKDIR $SRC -RUN git clone https://github.com/lucasw/catkin_tools.git --branch sanitize_cmake_prefix_path +RUN git clone https://github.com/catkin/catkin_tools.git WORKDIR $SRC/catkin_tools RUN python3 setup.py install --prefix=$DEST --record install_manifest.txt --single-version-externally-managed diff --git a/ubuntu_2204/Dockerfile.minimal b/ubuntu_2204/Dockerfile.minimal new file mode 100644 index 0000000..3945c50 --- /dev/null +++ b/ubuntu_2204/Dockerfile.minimal @@ -0,0 +1,103 @@ +# docker build . -f Dockerfile.minimal -t ros_from_src_ubuntu_2204_minimal +# build ros basic packages on top of what's available in debian in 22.04, +# doesn't build rqt or rviz +ARG IMAGE=ubuntu:22.04 +FROM ${IMAGE} +ARG IMAGE +RUN echo ${IMAGE} + +ENV DEBIAN_FRONTEND="noninteractive" + +# be able to source files +RUN rm /bin/sh && ln -s /bin/bash /bin/sh + +RUN apt-get update -yqq +RUN apt-get upgrade -yqq +RUN apt-get install -yqq apt-utils + +# apt installs +RUN apt-get update && apt-get install -yqq git +RUN apt-get update && apt-cache search ros- +RUN apt-get update && apt-cache search catkin +RUN apt-get update && apt-get install -yqq ros-* +RUN apt-get update && apt-get install -yqq catkin-lint cython3 libapriltag-dev libceres-dev libfmt-dev libfrei0r-ocaml-dev libgeographic-dev libgmock-dev libgoogle-glog-dev libgst-dev libgstreamer-plugins-base1.0-dev libgstreamer1.0-dev libimage-view-dev liborocos-bfl-dev libpcl-ros-dev libsdl-image1.2-dev libspnav-dev liburdfdom-dev libuvc-dev libv4l-dev libyaml-cpp-dev python-is-python3 python3-tf2-geometry-msgs python3-venv vim curl jq +RUN apt-get update && apt-get install -yqq libgsl-dev wget freeglut3-dev libcgal-dev libhdf5-dev libturbojpeg0-dev libzmq3-dev +RUN apt-get -y install ocl-icd-opencl-dev opencl-headers +RUN apt-get -y install libopenvdb-dev + +ENV DEST=/opt/ros/base +RUN mkdir $DEST -p +ENV SRC=/opt/src +RUN mkdir $SRC -p + +# TODO(lucasw) turn this into a script to make it easy to use outside of docker +WORKDIR $SRC +RUN git clone https://github.com/dirk-thomas/vcstool.git +WORKDIR $SRC/vcstool +RUN python3 setup.py install --prefix=$DEST --record install_manifest.txt --single-version-externally-managed + +WORKDIR $SRC +RUN git clone https://github.com/osrf/osrf_pycommon.git +WORKDIR $SRC/osrf_pycommon +RUN ls -l +RUN python3 setup.py install --prefix=$DEST --record install_manifest.txt --single-version-externally-managed + +WORKDIR $SRC +RUN git clone https://github.com/catkin/catkin_tools.git +WORKDIR $SRC/catkin_tools +RUN python3 setup.py install --prefix=$DEST --record install_manifest.txt --single-version-externally-managed + +WORKDIR $SRC +RUN python --version | awk '{print $2}' | cut -d'.' -f1 +RUN python --version | awk '{print $2}' | cut -d'.' -f2 +# TODO(lucasw) these aren't working +# RUN export PYTHON_MAJOR_VERSION=`python --version | awk '{print $2}' | cut -d'.' -f1` +# RUN export PYTHON_MINOR_VERSION=`python --version | awk '{print $2}' | cut -d'.' -f2` +# RUN PYTHON_MINOR_VERSION=`python --version | awk '{print $2}' | cut -d'.' -f2` +ARG PYTHON_MAJOR_VERSION=3 +ARG PYTHON_MINOR_VERSION=10 +ENV OPT_PYTHONPATH=$DEST/lib/python$PYTHON_MAJOR_VERSION.$PYTHON_MINOR_VERSION/site-packages/ +RUN echo $PYTHONPATH +ENV PYTHONPATH=$OPT_PYTHONPATH +RUN echo $PYTHONPATH + +ENV PATH=$DEST/bin:$PATH +ENV CMAKE_PREFIX_PATH=$CMAKE_PREFIX_PATH:$DEST/lib/cmake + +# WORKDIR $SRC +# RUN git clone https://github.com/lucasw/ros_from_src.git +WORKDIR $SRC/ros_from_src/ubuntu_2204 +COPY minimal_repos.yaml . +# make git clone work through vcs without git credentials +RUN sed -i 's/git@github.com:/https:\/\/github.com\//' minimal_repos.yaml + +# get packages and build +ENV WS=/base_catkin_ws/src +RUN mkdir $WS -p +WORKDIR $WS +RUN vcs import --shallow < $SRC/ros_from_src/ubuntu_2204/minimal_repos.yaml +# COPY ignore.sh $SRC/ros_from_src/ubuntu_2204/ +# RUN $SRC/ros_from_src/ubuntu_2204/ignore.sh +RUN touch ros/grid_map/grid_map_rviz_plugin/CATKIN_IGNORE + +# ENV ROS_DISTRO="noetic" +RUN echo $CMAKE_PREFIX_PATH + +WORKDIR $WS/.. +RUN catkin config --install --cmake-args -DCMAKE_BUILD_TYPE=Release -Wno-deprecated -Wno-dev -DCMAKE_CXX_STANDARD_INCLUDE_DIRECTORIES=$DEST/include -DCMAKE_LIBRARY_PATH=$DEST/lib +RUN catkin build --no-status -j1 robot_localization +RUN catkin build --no-status -j1 image_transport +RUN catkin build --no-status -j1 grid_map_cv +RUN touch src/ros/grid_map/grid_map_demos/CATKIN_IGNORE +RUN catkin build --no-status -j1 + +# rospack list won't work by itself +# RUN source install/setup.bash && rospack list + +# TODO(lucasw) run more tests than this +RUN ln -s /base_catkin_ws/install /opt/ros/one +RUN ls -l /opt/ros/one +# make 'source' work +SHELL ["/bin/bash", "-c"] +RUN source /opt/ros/one/setup.sh && rospack list +# RUN source install/setup.sh && rostest joint_trajectory_controller joint_trajectory_controller.test diff --git a/ubuntu_2204/base_repos.yaml b/ubuntu_2204/base_repos.yaml index 018b8be..78271f8 100644 --- a/ubuntu_2204/base_repos.yaml +++ b/ubuntu_2204/base_repos.yaml @@ -1,7 +1,7 @@ repositories: clearpath/cpr_gazebo: type: git - url: https://github.com/clearpathrobotics/cpr_gazebo.git + url: git@github.com:clearpathrobotics/cpr_gazebo.git version: noetic-devel clearpath/husky: type: git @@ -269,8 +269,8 @@ repositories: version: master other/lvr2: type: git - url: git@github.com:lucasw/lvr2 - version: ros1_or_2 + url: git@github.com:uos/lvr2 + version: develop other/marti_messages: type: git url: git@github.com:swri-robotics/marti_messages.git @@ -314,7 +314,7 @@ repositories: other/people: type: git url: git@github.com:wg-perception/people.git - version: melodic + version: noetic other/pid: type: git url: git@github.com:lucasw/pid.git @@ -355,14 +355,6 @@ repositories: type: git url: git@github.com:dheera/rosboard.git version: main - other/rosfmt: - type: git - url: git@github.com:lucasw/rosfmt - version: build_2204 - other/rosmon: - type: git - url: git@github.com:lucasw/rosmon - version: build_2204 other/rosshow: type: git url: git@github.com:dheera/rosshow @@ -494,7 +486,7 @@ repositories: ros/libuvc_ros: type: git url: git@github.com:lucasw/libuvc_ros.git - version: boost_placeholders + version: libuvc_0_0_7 ros/media_export: type: git url: git@github.com:ros/media_export.git @@ -507,6 +499,10 @@ repositories: type: git url: git@github.com:ros-drivers/nmea_msgs version: master + ros/nodelet_core: + type: git + url: git@github.com:lucasw/nodelet_core.git + version: throttle_looping_time ros/octomap_msgs: type: git url: git@github.com:OctoMap/octomap_msgs.git @@ -581,7 +577,7 @@ repositories: version: master ros/rqt_reconfigure: type: git - url: https://github.com/ros-visualization/rqt_reconfigure + url: git@github.com:ros-visualization/rqt_reconfigure version: master ros/rqt_robot_monitor: type: git diff --git a/ubuntu_2204/minimal_repos.yaml b/ubuntu_2204/minimal_repos.yaml new file mode 100644 index 0000000..869f6e0 --- /dev/null +++ b/ubuntu_2204/minimal_repos.yaml @@ -0,0 +1,145 @@ +repositories: + lucasw/image_manip: + type: git + url: https://github.com/lucasw/image_manip + version: fix_zero_frame_rate + lucasw/tf_demo: + type: git + url: https://github.com/lucasw/tf_demo + version: old_tf_to_new_tf + lucasw/topic_state: + type: git + url: https://github.com/lucasw/topic_state + version: master + lucasw/transform_point_cloud: + type: git + url: https://github.com/lucasw/transform_point_cloud.git + version: master + lucasw/vimjay: + type: git + url: https://github.com/lucasw/vimjay + version: eliminate_build_warnings + other/ddynamic_reconfigure: + type: git + url: https://github.com/ros-o/ddynamic_reconfigure + version: obese-devel + other/jsk_common_msgs: + type: git + url: https://github.com/lucasw/jsk_common_msgs + version: master + # other/message_filters: + # type: git + # url: https://github.com/fkie/message_filters.git + # version: master + other/marti_messages: + type: git + url: https://github.com/swri-robotics/marti_messages.git + version: master + # other/opencv_apps: + # type: git + # url: https://github.com/ros-perception/opencv_apps.git + # version: indigo + ros/camera_info_manager_py: + type: git + url: https://github.com/lucasw/camera_info_manager_py + version: noetic-devel + ros/control_msgs: + type: git + url: https://github.com/ros-controls/control_msgs.git + version: kinetic-devel + ros/diagnostics: + type: git + url: git@github.com:ros/diagnostics.git + version: noetic-devel + ros/ddynamic_reconfigure_python: + type: git + url: https://github.com/pal-robotics/ddynamic_reconfigure_python + version: master + ros/filters: + type: git + url: git@github.com:ros/filters.git + version: noetic-devel + ros/four_wheel_steering_msgs: + type: git + url: https://github.com/ros-drivers/four_wheel_steering_msgs.git + version: master + ros/geographic_info: + type: git + url: https://github.com/ros-geographic-info/geographic_info.git + version: master + ros/geometry2: + type: git + url: https://github.com/lucasw/geometry2 + version: noetic_aggregated + ros/grid_map: + type: git + url: https://github.com/lucasw/grid_map + version: tbb_2021 + ros/image_common: + type: git + url: https://github.com/lucasw/image_common + version: ubuntu_2210 + ros/image_pipeline: + type: git + url: https://github.com/lucasw/image_pipeline + version: rgb_in_depth_range + ros/joint_state_publisher: + type: git + url: https://github.com/lucasw/joint_state_publisher + version: noetic_aggregated + ros/navigation: + type: git + url: git@github.com:lucasw/navigation + version: lucasw_debug + ros/nmea_msgs: + type: git + url: https://github.com/ros-drivers/nmea_msgs + version: master + ros/octomap_msgs: + type: git + url: https://github.com/OctoMap/octomap_msgs.git + version: melodic-devel + ros/robot_localization: + type: git + url: git@github.com:lucasw/robot_localization + version: boost_placeholders_cpp17 + ros/robot_state_publisher: + type: git + url: https://github.com/lucasw/robot_state_publisher + version: robot_state_function + # ros/ros_comm: + # type: git + # url: https://github.com/lucasw/ros_comm + # version: salsa_noetic_aggregated + # ros/rosconsole: + # type: git + # url: https://github.com/lucasw/rosconsole + # version: ubuntu_2210 + # ros/roscpp_core: + # type: git + # url: https://github.com/lucasw/roscpp_core + # version: duration_out_of_dual_range + ros/roslint: + type: git + url: https://github.com/lucasw/roslint + version: roslint_rust + ros/unique_identifier: + type: git + url: https://github.com/ros-geographic-info/unique_identifier.git + version: master + ros/urdf_geometry_parser: + type: git + url: https://github.com/ros-controls/urdf_geometry_parser.git + version: kinetic-devel + ros/urdf_parser_py: + type: git + url: https://github.com/ros/urdf_parser_py.git + version: melodic-devel + ros/vision_msgs: + type: git + url: https://github.com/ros-perception/vision_msgs.git + version: noetic-devel + ros/xacro: + type: git + url: https://github.com/lucasw/xacro.git + version: cleanup_roslint diff --git a/ubuntu_2404/Dockerfile b/ubuntu_2404/Dockerfile new file mode 100644 index 0000000..ec22b50 --- /dev/null +++ b/ubuntu_2404/Dockerfile @@ -0,0 +1,189 @@ +# docker build . -t ros_from_src_ubuntu_2404 +ARG IMAGE=ubuntu:24.04 +FROM ${IMAGE} +ARG IMAGE +RUN echo ${IMAGE} + +ENV DEBIAN_FRONTEND="noninteractive" + +# be able to source files +RUN rm /bin/sh && ln -s /bin/bash /bin/sh + +RUN apt-get update -yqq +RUN apt-get upgrade -yqq +RUN apt-get install -yqq apt-utils + +# apt installs +RUN apt-get update && apt-get install -yqq git +RUN apt-get update && apt-cache search ros- +RUN apt-get update && apt-cache search catkin +RUN apt-get update && apt-cache search vcs +RUN apt-get update && apt-get install -yqq catkin-tools vcstool +RUN apt-get update && apt-get install -yqq libgsl-dev wget freeglut3-dev libcgal-dev libhdf5-dev libturbojpeg0-dev libzmq3-dev +RUN apt-get -y install ocl-icd-opencl-dev opencl-headers +RUN apt-get update && apt-get install -yqq cython3 libapriltag-dev libceres-dev libfmt-dev libfrei0r-ocaml-dev libgmock-dev libgoogle-glog-dev +RUN apt-get update && apt-get install -yqq libgstreamer-plugins-base1.0-dev libgstreamer1.0-dev liborocos-bfl-dev +RUN apt-get update && apt-get install -yqq curl jq +RUN apt-get update && apt-get install -yqq libyaml-cpp-dev +RUN apt-get update && apt-get install -yqq python-is-python3 python3-venv +RUN apt-get update && apt-get install -yqq libsdl-image1.2-dev libspnav-dev libuvc-dev libv4l-dev +RUN apt-get update && apt-get install -yqq libopenvdb-dev +RUN apt-get update && apt-get install -yqq catkin-lint +RUN apt-get update && apt-get install -yqq liburdfdom-dev +# RUN apt-get update && apt-get install -yqq libqt5svg5-dev libqt5websockets5-dev libqt5x11extras5-dev libqwt-qt5-dev +# libgeographic-dev libgst-dev +# vim is broken 'you have held broken packages' +RUN apt-cache search geographic +RUN apt-get update && apt-get install -yqq libimage-view-dev +RUN apt-get update && apt-get install -yqq libpcl-ros-dev +RUN apt-get update && apt-get install -yqq python3-tf2-geometry-msgs +RUN apt-get update && apt-get install -yqq libgeographiclib-dev +RUN apt-cache search gst | grep dev +RUN apt-get update && apt-get install -yqq ros-core +RUN apt-get update && apt-get install -yqq ros-core-dev +RUN apt-get update && apt-cache search ros- +RUN apt-get update && apt-get install -yqq ros-desktop-full + +# install every ros package +RUN apt-get update && apt-get install -yqq `apt-cache search "Robot OS" | awk '{print $1}' | xargs | sed 's/\n/ /g'` +RUN apt-get install -yqq libtf-conversions-dev + +RUN apt-get install -yqq build-essential + +RUN apt-get install -yqq libboost-iostreams-dev +RUN apt-get install -yqq libjemalloc-dev + +# from rosdep +RUN apt-get install -yqq binutils-dev festival festvox-kallpc16k ffmpeg flite google-mock gstreamer1.0-alsa gstreamer1.0-plugins-good gstreamer1.0-plugins-ugly gstreamer1.0-tools +RUN apt-get install -yqq ifstat iproute2 iputils-ping joystick libassimp-dev libbullet-dev libgstreamer-plugins-good1.0-0 libprotobuf-dev libprotoc-dev +RUN apt-get install -yqq libqt5svg5-dev libqt5websockets5-dev libqt5x11extras5-dev libqwt-qt5-dev +RUN apt-get install -yqq libshiboken2-dev libxmu-dev lm-sensors protobuf-compiler +RUN apt-get install -yqq python3-cairo python3-cairosvg python3-click python3-colorama python3-coverage python3-imageio python3-joblib python3-matplotlib python3-mock python3-nose python3-opencv python3-progressbar python3-psutil python3-pydot python3-pygraphviz +# python-pil python3-catkin-pkg-modules +RUN apt-get install -yqq python3-pyproj python3-pyqt5.qtsvg python3-pyside2.qtsvg python3-scipy python3-serial python3-shapely python3-skimage python3-sklearn python3-tabulate python3-texttable python3-tornado python3-websocket +# python3-rosdep python3-rosdep-modules python3-rospkg-modules +RUN apt-get install -yqq qt5-image-formats-plugins shiboken2 sysstat tango-icon-theme virtualenv + +RUN apt-get install -yqq libpyside2-dev +RUN apt-get install -yqq python3-sip-dev +RUN apt-get install -yqq pyqt5-dev + +RUN apt-get install -yqq libapriltag-dev +RUN apt-get install -yqq vim + +ENV DEST=/opt/ros/base +RUN mkdir $DEST -p +ENV SRC=/opt/src +RUN mkdir $SRC -p + +WORKDIR $SRC +RUN python --version | awk '{print $2}' | cut -d'.' -f1 +RUN python --version | awk '{print $2}' | cut -d'.' -f2 +# TODO(lucasw) these aren't working +RUN export PYTHON_MAJOR_VERSION=`python --version | awk '{print $2}' | cut -d'.' -f1` +RUN export PYTHON_MINOR_VERSION=`python --version | awk '{print $2}' | cut -d'.' -f2` +RUN echo $PYTHON_MAJOR_VERSION +RUN echo $PYTHON_MINOR_VERSION +RUN python --version +# RUN PYTHON_MINOR_VERSION=`python --version | awk '{print $2}' | cut -d'.' -f2` +ARG PYTHON_MAJOR_VERSION=3 +ARG PYTHON_MINOR_VERSION=12 +ENV OPT_PYTHONPATH=$DEST/lib/python$PYTHON_MAJOR_VERSION.$PYTHON_MINOR_VERSION/site-packages/ +RUN echo $PYTHONPATH +ENV PYTHONPATH=$OPT_PYTHONPATH +RUN echo $PYTHONPATH + +ENV PATH=$DEST/bin:$PATH +ENV CMAKE_PREFIX_PATH=$CMAKE_PREFIX_PATH:$DEST/lib/cmake + +# WORKDIR $SRC +# RUN git clone https://github.com/lucasw/ros_from_src.git +WORKDIR $SRC/ros_from_src/ubuntu_2404 +COPY base_repos.yaml . +# make git clone work through vcs without git credentials +RUN sed -i 's/git@github.com:/https:\/\/github.com\//' base_repos.yaml + +# get packages and build +ENV WS=/base_catkin_ws/src +RUN mkdir $WS -p +WORKDIR $WS +RUN vcs import --shallow < $SRC/ros_from_src/ubuntu_2404/base_repos.yaml +COPY ignore.sh $SRC/ros_from_src/ubuntu_2404/ +RUN $SRC/ros_from_src/ubuntu_2404/ignore.sh +RUN touch other/catkin_virtualenv/test_catkin_virtualenv_inherited/CATKIN_IGNORE +RUN touch other/catkin_virtualenv/test_catkin_virtualenv_isolated/CATKIN_IGNORE + +RUN apt-cache search openvdb +RUN dpkg -l | grep openvdb +# RUN mkdir -p $HOME/other/build/openvdb +# WORKDIR other/build/openvdb +# RUN cmake $WS/other/vdb/openvdb/ -DCMAKE_INSTALL_PREFIX=$DEST +# RUN make -j2 # it's a slow build +# RUN make install +RUN dpkg -l | grep ros +# RUN dpkg -l | grep rqt + +# ENV ROS_DISTRO="noetic" +RUN echo $CMAKE_PREFIX_PATH + +WORKDIR $WS/.. +RUN catkin config --install --cmake-args -DCMAKE_BUILD_TYPE=Release -Wno-deprecated -Wno-dev -DCMAKE_CXX_STANDARD_INCLUDE_DIRECTORIES=$DEST/include -DCMAKE_LIBRARY_PATH=$DEST/lib +# split these up so can take advantage of docker layers, otherwise one failure +# means a huge rebuild +# RUN catkin build --no-status -j1 fuse_core +# disabling this because it is too slow to build +# RUN catkin build --no-status -j1 rtabmap_ros +RUN rosdep update +RUN rosdep install --from-paths src --ignore-src -r -s || true +RUN catkin build --no-status -j1 libuvc_camera +RUN catkin build --no-status -j1 rqt +RUN catkin build --no-status -j1 vdb_mapping* +RUN catkin build --no-status -j1 jsk_rviz_plugins +RUN catkin build --no-status -j1 rviz +RUN catkin build --no-status -j1 plotjuggler* +RUN catkin build --no-status -j1 octomap_server +RUN catkin build --no-status -j1 people_tracking_filter +RUN catkin build --no-status -j1 laser_assembler +RUN catkin build --no-status -j1 catkin_virtualenv +# RUN catkin build --no-status -j1 nmea_navsat_driver +RUN catkin build --no-status -j1 grid_map_visualization +RUN catkin build --no-status -j1 stereo_image_proc +RUN catkin build --no-status -j1 jsk_topic_tools +RUN catkin build --no-status -j1 jsk_interactive_marker +# RUN catkin build --no-status -j1 test_catkin_virtualenv_inherited +# RUN catkin build --no-status -j1 test_catkin_virtualenv_py3_isolated +# the navsat tests are broken +RUN catkin build --no-status -j1 nmea_navsat_driver --cmake-args -DCATKIN_ENABLE_TESTING=False +RUN catkin build --no-status -j1 lvr2 +RUN catkin build --no-status -j1 ros_type_introspection +RUN catkin build --no-status -j1 actionlib_tutorials +RUN catkin build --no-status -j1 rospack +RUN catkin build --no-status -j1 libnabo +RUN catkin build --no-status -j1 rqt* +RUN catkin build --no-status -j1 jsk* +# there's a bug with libapriltag-dev 3.3.0-2.1build1, could patch but skip for now +# probably they'll update it soon? +# RUN catkin build --no-status -j1 apriltag_ros +RUN touch src/other/apriltag_ros/CATKIN_IGNORE +RUN catkin build --no-status -j1 rtabmap* +RUN catkin build --no-status -j1 fuse_viz +RUN catkin build --no-status -j1 fuse* +RUN catkin build --no-status -j1 grid_map* +RUN catkin build --no-status -j1 rviz* +RUN catkin build --no-status -j1 octomap* +RUN catkin build --no-status -j1 opencv_apps +RUN catkin build --no-status -j1 aruco* +RUN catkin build --no-status -j1 vimjay +RUN catkin build --no-status -j1 + +# rospack list won't work by itself +# RUN source install/setup.bash && rospack list + +# TODO(lucasw) run more tests than this +RUN catkin build joint_trajectory_controller --no-status --no-deps --catkin-make-args tests +RUN ln -s /base_catkin_ws/install /opt/ros/one +RUN ls -l /opt/ros/one +# make 'source' work +SHELL ["/bin/bash", "-c"] +RUN source /opt/ros/one/setup.sh && rospack list +# RUN source install/setup.sh && rostest joint_trajectory_controller joint_trajectory_controller.test diff --git a/ubuntu_2404/README.md b/ubuntu_2404/README.md new file mode 100644 index 0000000..dfa17df --- /dev/null +++ b/ubuntu_2404/README.md @@ -0,0 +1,47 @@ +Additional dependencies + +``` +apt-get install +libb64-dev +libboost-iostreams-dev +libboost-test-dev +libboost-timer-dev +libcgal-dev +libgdal-dev +libopencv-dev +liboctomap-dev +libpcl-dev +libvtk9-dev +sip-dev +``` + +``` +apt-get install +libassimp-dev +libogre-1.12-dev +``` + +``` +python3-opencv +python3-pykdl +``` + +``` +pip install cmake +``` + +Some packages (like jsk_recognition_msgs) expect ROS_DISTRO to exist, so: + +``` +export ROS_DISTRO=one +``` + + +``` +catkin config --cmake-args -DCMAKE_BUILD_TYPE=Release -Wno-deprecated -DCATKIN_ENABLE_TESTING=False +``` + + +``` +catkin config --install --cmake-args -DCMAKE_BUILD_TYPE=Release -Wno-deprecated -DCATKIN_ENABLE_TESTING=False +``` diff --git a/ubuntu_2404/base_catkin.sh b/ubuntu_2404/base_catkin.sh new file mode 100755 index 0000000..4d3256a --- /dev/null +++ b/ubuntu_2404/base_catkin.sh @@ -0,0 +1,25 @@ +#!/bin/bash +set -e +set -x + +ls -l +ls -l ros/bin +ROS_DEST=`pwd`/ros source underlay_ws/env.sh + +WS=`pwd`/base_ws/src +echo $WS + +cd $WS/.. +echo "#####################" +pwd +source ../underlay_ws/install/setup.bash +catkin init +catkin config --install --cmake-args -DCMAKE_BUILD_TYPE=Release -Wno-deprecated -DCATKIN_ENABLE_TESTING=False +echo $PATH +echo $LD_LIBRARY_PATH +rospack list + +catkin build ros_comm +source install/setup.bash +rospack list +# TODO(lucasw) run tests diff --git a/ubuntu_2404/base_git_clone.sh b/ubuntu_2404/base_git_clone.sh new file mode 100755 index 0000000..4daac20 --- /dev/null +++ b/ubuntu_2404/base_git_clone.sh @@ -0,0 +1,17 @@ +#!/bin/bash +# TODO(lucasw) replace the below with submodules +# export PATH=$PATH:/usr/local/bin +set -e +set -x + +WS=`pwd`/base_ws/src +echo $WS +mkdir $WS -p + +# TODO(lucasw) replace these git clones with vcs +# packages that need to be cmake installed, and are ros packages in a catkin workspace +cd $WS +vcs import --input base_repos.yaml --retry 10 + +# ROSCONSOLE1=${ROSCONSOLE:-https://github.com/ros-o/rosconsole} +# git clone $ROSCONSOLE1 diff --git a/ubuntu_2404/base_repos.yaml b/ubuntu_2404/base_repos.yaml new file mode 100644 index 0000000..b2e5b62 --- /dev/null +++ b/ubuntu_2404/base_repos.yaml @@ -0,0 +1,410 @@ +repositories: + # extra/common_msgs: # in underlay_ws + # type: git + # url: git@github.com:ros/common_msgs + # version: noetic-devel + # extra/geometry: + # type: git + # url: git@github.com:ros-o/geometry + # version: obese-devel + extra/laser_geometry: + type: git + url: git@github.com:ros-o/laser_geometry + version: obese-devel + extra/navigation_msgs: + type: git + url: git@github.com:ros-planning/navigation_msgs + version: ros1 + extra/pcl_msgs: + type: git + url: git@github.com:ros-perception/pcl_msgs + version: noetic-devel + extra/perception_pcl: + type: git + url: git@github.com:ros-o/perception_pcl + version: obese-devel + extra/python_qt_binding: + type: git + url: git@github.com:ros-o/python_qt_binding + version: obese-devel + extra/vision_opencv: + type: git + url: git@github.com:ros-perception/vision_opencv + version: noetic + lucasw/dynamic_reconfigure_tools: + type: git + url: git@github.com:lucasw/dynamic_reconfigure_tools + version: master + lucasw/image_manip: + type: git + url: git@github.com:lucasw/image_manip + version: fix_zero_frame_rate + lucasw/nodelet_demo: + type: git + url: git@github.com:lucasw/nodelet_demo + version: master + lucasw/ros1_lifecycle: + type: git + url: git@github.com:lucasw/ros1_lifecycle + version: misc_fixes + lucasw/ros_example: + type: git + url: git@github.com:lucasw/ros_example + version: main + lucasw/ros_system_monitor: + type: git + url: git@github.com:lucasw/ros_system_monitor + version: chrony_monitor + lucasw/screengrab_ros: + type: git + url: git@github.com:lucasw/screengrab_ros + version: master + lucasw/signal_generator: + type: git + url: git@github.com:lucasw/signal_generator + version: master + lucasw/tf_demo: + type: git + url: git@github.com:lucasw/tf_demo + version: old_tf_to_new_tf + lucasw/timer_test: + type: git + url: git@github.com:lucasw/timer_test + version: master + lucasw/topic_state: + type: git + url: git@github.com:lucasw/topic_state + version: master + lucasw/transform_point_cloud: + type: git + url: git@github.com:lucasw/transform_point_cloud + version: master + lucasw/v4l2ucp: + type: git + url: git@github.com:lucasw/v4l2ucp + version: master + lucasw/vimjay: + type: git + url: git@github.com:lucasw/vimjay + version: eliminate_build_warnings + opencv_apps: + type: git + # url: git@github.com:ros-perception/opencv_apps + url: git@github.com:muellerbernd/opencv_apps + version: indigo + other/PlotJuggler: + type: git + url: git@github.com:facontidavide/PlotJuggler + version: main + other/apriltag_ros: + type: git + url: git@github.com:AprilRobotics/apriltag_ros + version: master + other/camera_throttler_nodelets: + type: git + url: git@github.com:lucasw/camera_throttler_nodelets + version: noetic_aggregated + other/catkin_virtualenv: + type: git + url: git@github.com:locusrobotics/catkin_virtualenv + version: master + other/ddynamic_reconfigure: + type: git + url: git@github.com:ros-o/ddynamic_reconfigure + version: obese-devel + other/euslisp-release: + type: git + url: git@github.com:tork-a/euslisp-release + version: release/melodic/euslisp + other/fiducials: + type: git + url: git@github.com:lucasw/fiducials + version: cmake_vision_msgs + # other/geneus: # in underlay_ws + # type: git + # url: git@github.com:jsk-ros-pkg/geneus + # version: master + other/jsk_common: + type: git + url: git@github.com:lucasw/jsk_common + version: video_to_bag_features + other/jsk_common_msgs: + type: git + url: git@github.com:lucasw/jsk_common_msgs + version: master + other/jsk_recognition: + type: git + url: git@github.com:lucasw/jsk_recognition + version: pcl_vtk_isfinite + other/jsk_roseus: + type: git + url: git@github.com:jsk-ros-pkg/jsk_roseus + version: master + other/libnabo: + type: git + url: git@github.com:ethz-asl/libnabo + version: master + other/marti_messages: + type: git + url: git@github.com:swri-robotics/marti_messages + version: master + other/message_filters: + type: git + url: git@github.com:fkie/message_filters + version: master + other/nmea_navsat_driver: + type: git + url: git@github.com:ros-drivers/nmea_navsat_driver + version: master + other/nodelet_rosbag: + type: git + url: git@github.com:lucasw/nodelet_rosbag + version: pluginlib_hpp + other/pal_statistics: + type: git + url: git@github.com:pal-robotics/pal_statistics + version: kinetic-devel + other/pid: + type: git + url: git@github.com:lucasw/pid + version: boost_placeholders + other/plotjuggler-ros-plugins: + type: git + url: git@github.com:PlotJuggler/plotjuggler-ros-plugins + version: main + other/plotjuggler_msgs: + type: git + url: git@github.com:PlotJuggler/plotjuggler_msgs + version: main + other/point_cloud_converter: + type: git + url: git@github.com:pal-robotics-forks/point_cloud_converter + version: hydro-devel + other/ros_control_boilerplate: + type: git + url: git@github.com:lucasw/ros_control_boilerplate + version: cpp17 + other/ros_numpy: + type: git + url: git@github.com:lucasw/ros_numpy + version: collections_abc + other/ros_rtsp: + type: git + url: git@github.com:lucasw/ros_rtsp + version: pluginlib_hpp + other/ros_type_introspection: + type: git + url: git@github.com:lucasw/ros_type_introspection + version: build_2204 + other/rosbag_snapshot: + type: git + url: git@github.com:ros/rosbag_snapshot + version: main + other/static_transform_mux: + type: git + url: git@github.com:tradr-project/static_transform_mux + version: master + other/tf2_2d: + type: git + url: git@github.com:locusrobotics/tf2_2d + version: devel + ros/audio_common: + type: git + url: git@github.com:ros-drivers/audio_common + version: master + ros/camera_info_manager_py: + type: git + url: git@github.com:lucasw/camera_info_manager_py + version: noetic-devel + ros/common_tutorials: + type: git + url: git@github.com:lucasw/common_tutorials + version: boost_placeholders + ros/control_msgs: + type: git + url: git@github.com:ros-controls/control_msgs + version: kinetic-devel + ros/ddynamic_reconfigure_python: + type: git + url: git@github.com:pal-robotics/ddynamic_reconfigure_python + version: master + ros/diagnostics: + type: git + url: git@github.com:ros/diagnostics + version: noetic-devel + ros/dynamic_reconfigure: + type: git + url: git@github.com:lucasw/dynamic_reconfigure + version: init_default_values + ros/filters: + type: git + url: git@github.com:ros/filters + version: noetic-devel + ros/four_wheel_steering_msgs: + type: git + url: git@github.com:ros-drivers/four_wheel_steering_msgs + version: master + ros/geographic_info: + type: git + url: git@github.com:ros-geographic-info/geographic_info + version: master + # ros/geometry2: # in underlay_ws + # type: git + # url: git@github.com:lucasw/geometry2 + # version: noetic_aggregated + ros/grid_map: + type: git + url: git@github.com:lucasw/grid_map + version: tbb_2021 + ros/image_common: + type: git + url: git@github.com:lucasw/image_common + version: ubuntu_2210 + ros/image_pipeline: + type: git + url: git@github.com:lucasw/image_pipeline + version: rgb_in_depth_range + ros/image_transport_plugins: + type: git + url: git@github.com:lucasw/image_transport_plugins + version: enable_pub + ros/joint_state_publisher: + type: git + url: git@github.com:lucasw/joint_state_publisher + version: noetic_aggregated + ros/joystick_drivers: + type: git + url: git@github.com:lucasw/joystick_drivers + version: warn_not_error_if_no_joy + ros/laser_assembler: + type: git + url: git@github.com:lucasw/laser_assembler + version: noetic-devel + ros/libuvc_ros: + type: git + url: git@github.com:lucasw/libuvc_ros + version: libuvc_0_0_7 + ros/media_export: + type: git + url: git@github.com:ros/media_export + version: kinetic-devel + ros/navigation: + type: git + url: git@github.com:lucasw/navigation + version: lucasw_debug + ros/nmea_msgs: + type: git + url: git@github.com:ros-drivers/nmea_msgs + version: master + ros/nodelet_core: + type: git + url: git@github.com:lucasw/nodelet_core + version: throttle_looping_time + ros/octomap_msgs: + type: git + url: git@github.com:OctoMap/octomap_msgs + version: melodic-devel + ros/realtime_tools: + type: git + url: git@github.com:ros-controls/realtime_tools + version: noetic-devel + ros/robot_state_publisher: + type: git + url: git@github.com:lucasw/robot_state_publisher + version: robot_state_function + ros/ros_comm: # custom overlay with logging mods + type: git + url: git@github.com:lucasw/ros_comm + version: salsa_noetic_aggregated + ros/ros_control: + type: git + url: git@github.com:lucasw/ros_control + version: acceleration_limits + ros/ros_controllers: + type: git + url: git@github.com:lucasw/ros_controllers + version: avoid_no_trajectory_defined + ros/ros_tutorials: + type: git + url: git@github.com:lucasw/ros_tutorials + version: boost_placeholders + ros/rosconsole: # lucasw logging mods + type: git + url: git@github.com:lucasw/rosconsole + version: ubuntu_2210 + ros/roscpp_core: # lucasw fixes + type: git + url: git@github.com:lucasw/roscpp_core + version: duration_out_of_dual_range + ros/rospack: # debian patches + type: git + url: git@github.com:lucasw/rospack + version: salsa + ros/rqt: + type: git + url: git@github.com:lucasw/rqt + version: ubuntu_2210 + ros/teleop_twist_joy: + type: git + url: git@github.com:lucasw/teleop_twist_joy + version: cmp0115_cpp_extension + ros/teleop_twist_keyboard: + type: git + url: git@github.com:ros-teleop/teleop_twist_keyboard + version: master + ros/twist_mux: + type: git + url: git@github.com:lucasw/twist_mux + version: ubuntu2210 + ros/twist_mux_msgs: + type: git + url: git@github.com:ros-teleop/twist_mux_msgs + version: melodic-devel + ros/unique_identifier: + type: git + url: git@github.com:ros-geographic-info/unique_identifier + version: master + ros/urdf_geometry_parser: + type: git + url: git@github.com:ros-controls/urdf_geometry_parser + version: kinetic-devel + ros/urdf_parser_py: + type: git + url: git@github.com:ros/urdf_parser_py + version: melodic-devel + ros/usb_cam: + type: git + url: git@github.com:ros-drivers/usb_cam + version: develop + ros/video_stream_opencv: + type: git + url: git@github.com:lucasw/video_stream_opencv + version: build_2204 + ros/view_controller_msgs: + type: git + url: git@github.com:ros-visualization/view_controller_msgs + version: lunar-devel + ros/vision_msgs: + type: git + url: git@github.com:ros-perception/vision_msgs + version: noetic-devel + ros/web_video_server: + type: git + url: git@github.com:lucasw/web_video_server + version: boost_placeholders + ros/xacro: + type: git + url: git@github.com:lucasw/xacro + version: cleanup_roslint + roso/control_toolbox: + type: git + url: git@github.com:ros-o/control_toolbox + version: obese-devel + roso/qt_gui_core: + type: git + url: git@github.com:lucasw/qt_gui_core + version: ubuntu_2210 + roso/rosparam_shortcuts: + type: git + url: git@github.com:lucasw/rosparam_shortcuts + version: cleanup_lint diff --git a/ubuntu_2404/dependencies.sh b/ubuntu_2404/dependencies.sh new file mode 100755 index 0000000..addfdb9 --- /dev/null +++ b/ubuntu_2404/dependencies.sh @@ -0,0 +1,52 @@ +#!/bin/bash + +apt-get install -yqq git +apt-get install -yqq catkin-tools vcstool +apt-get install -yqq libgsl-dev wget freeglut3-dev libcgal-dev libhdf5-dev libturbojpeg0-dev libzmq3-dev +apt-get -y install ocl-icd-opencl-dev opencl-headers +apt-get install -yqq cython3 libapriltag-dev libceres-dev libfmt-dev libfrei0r-ocaml-dev libgmock-dev libgoogle-glog-dev +apt-get install -yqq libgstreamer-plugins-base1.0-dev libgstreamer1.0-dev # liborocos-bfl-dev +apt-get install -yqq curl jq +apt-get install -yqq libyaml-cpp-dev +apt-get install -yqq python-is-python3 python3-venv +apt-get install -yqq libsdl-image1.2-dev libspnav-dev libuvc-dev libv4l-dev +apt-get install -yqq libopenvdb-dev +apt-get install -yqq catkin-lint +apt-get install -yqq liburdfdom-dev +apt-get install -yqq libimage-view-dev +apt-get install -yqq libgeographiclib-dev + +# install every ros package +# apt-get install -yqq ros-core +# apt-get install -yqq ros-core-dev +# apt-get install -yqq ros-desktop-full +# apt-get install -yqq `apt-cache search "Robot OS" | awk '{print $1}' | xargs | sed 's/\n/ /g'` +# apt-get install -yqq python3-tf2-geometry-msgs +# apt-get install -yqq libpcl-ros-dev + +apt-get install -yqq libtf-conversions-dev + +apt-get install -yqq build-essential + +apt-get install -yqq libboost-iostreams-dev +apt-get install -yqq libjemalloc-dev + +# from rosdep +apt-get install -yqq binutils-dev festival festvox-kallpc16k ffmpeg flite google-mock gstreamer1.0-alsa gstreamer1.0-plugins-good gstreamer1.0-plugins-ugly gstreamer1.0-tools +apt-get install -yqq ifstat iproute2 iputils-ping joystick libassimp-dev libbullet-dev libgstreamer-plugins-good1.0-0 libprotobuf-dev libprotoc-dev +apt-get install -yqq libqt5svg5-dev libqt5websockets5-dev libqt5x11extras5-dev libqwt-qt5-dev +apt-get install -yqq libshiboken2-dev libxmu-dev lm-sensors protobuf-compiler +apt-get install -yqq python3-cairo python3-cairosvg python3-click python3-colorama python3-coverage python3-imageio python3-joblib python3-matplotlib python3-mock python3-nose python3-opencv python3-progressbar python3-psutil python3-pydot python3-pygraphviz +# python-pil python3-catkin-pkg-modules +apt-get install -yqq python3-pyproj python3-pyqt5.qtsvg python3-pyside2.qtsvg python3-scipy python3-serial python3-shapely python3-skimage python3-sklearn python3-tabulate python3-texttable python3-tornado python3-websocket +# python3-rosdep python3-rosdep-modules python3-rospkg-modules +apt-get install -yqq qt5-image-formats-plugins shiboken2 sysstat tango-icon-theme virtualenv + +apt-get install -yqq libpyside2-dev +apt-get install -yqq python3-sip-dev +apt-get install -yqq pyqt5-dev + +apt-get install -yqq libapriltag-dev +apt-get install -yqq vim + +apt-get install -yq libboost-test-dev libboost-timer-dev libgdal-dev libopencv-dev liboctomap-dev libpcl-dev libvtk9-dev sip-dev diff --git a/ubuntu_2404/extra_repos.yaml b/ubuntu_2404/extra_repos.yaml new file mode 100644 index 0000000..8ad1ce9 --- /dev/null +++ b/ubuntu_2404/extra_repos.yaml @@ -0,0 +1,670 @@ +repositories: + clearpath/cpr_gazebo: + type: git + url: git@github.com:clearpathrobotics/cpr_gazebo.git + version: noetic-devel + clearpath/husky: + type: git + url: git@github.com:lucasw/husky + version: roslint_fixes + clearpath/moose: + type: git + url: git@github.com:lucasw/moose + version: pluginlib_hpp + clearpath/moose_simulator: + type: git + url: git@github.com:moose-cpr/moose_simulator.git + version: master + clearpath/warthog: + type: git + url: git@github.com:warthog-cpr/warthog + version: kinetic-devel + clearpath/warthog_simulator: + type: git + url: git@github.com:warthog-cpr/warthog_simulator.git + version: melodic-devel + # extra/common_msgs: # in underlay_ws + # type: git + # url: git@github.com:ros/common_msgs.git + # version: noetic-devel + # extra/geometry: + # type: git + # url: git@github.com:ros-o/geometry.git + # version: obese-devel + extra/laser_geometry: + type: git + url: git@github.com:ros-o/laser_geometry.git + version: obese-devel + extra/navigation_msgs: + type: git + url: git@github.com:ros-planning/navigation_msgs.git + version: ros1 + extra/pcl_msgs: + type: git + url: git@github.com:ros-perception/pcl_msgs.git + version: noetic-devel + extra/perception_pcl: + type: git + url: git@github.com:ros-o/perception_pcl.git + version: obese-devel + extra/python_qt_binding: + type: git + url: git@github.com:ros-o/python_qt_binding.git + version: obese-devel + extra/vision_opencv: + type: git + url: git@github.com:ros-perception/vision_opencv.git + version: noetic + greenzie/boustrophedon_planner: + type: git + url: git@github.com:lucasw/boustrophedon_planner + version: cpp17 + lucasw/carbot: + type: git + url: git@github.com:lucasw/carbot + version: master + lucasw/dynamic_reconfigure_tools: + type: git + url: git@github.com:lucasw/dynamic_reconfigure_tools + version: master + lucasw/frei0r_image: + type: git + url: git@github.com:lucasw/frei0r_image + version: master + lucasw/image_manip: + type: git + url: git@github.com:lucasw/image_manip + version: fix_zero_frame_rate + lucasw/joy_feedback_ros: + type: git + url: git@github.com:lucasw/joy_feedback_ros + version: master + lucasw/nodelet_demo: + type: git + url: git@github.com:lucasw/nodelet_demo + version: master + lucasw/popcanbot: + type: git + url: git@github.com:lucasw/popcanbot + version: master + lucasw/ros1_lifecycle: + type: git + url: git@github.com:lucasw/ros1_lifecycle + version: misc_fixes + lucasw/ros_example: + type: git + url: git@github.com:lucasw/ros_example + version: main + lucasw/ros_system_monitor: + type: git + url: git@github.com:lucasw/ros_system_monitor + version: chrony_monitor + lucasw/rqt_file_dialog: + type: git + url: git@github.com:lucasw/rqt_file_dialog + version: master + lucasw/rqt_tf_echo: + type: git + url: git@github.com:lucasw/rqt_tf_echo.git + version: master + lucasw/rqt_topic_display: + type: git + url: git@github.com:lucasw/rqt_topic_display.git + version: master + lucasw/rviz_camera_stream: + type: git + url: git@github.com:lucasw/rviz_camera_stream + version: noetic-devel + lucasw/rviz_interactive_tf: + type: git + url: git@github.com:lucasw/rviz_interactive_tf + version: master + lucasw/rviz_lighting: + type: git + url: git@github.com:lucasw/rviz_lighting + version: cpp17 + lucasw/rviz_ortho_view_controller: + type: git + url: git@github.com:lucasw/rviz_ortho_view_controller.git + version: master + lucasw/screengrab_ros: + type: git + url: git@github.com:lucasw/screengrab_ros + version: master + lucasw/signal_generator: + type: git + url: git@github.com:lucasw/signal_generator + version: master + lucasw/simple_sim_ros: + type: git + url: git@github.com:lucasw/simple_sim_ros + version: master + lucasw/tf_demo: + type: git + url: git@github.com:lucasw/tf_demo + version: old_tf_to_new_tf + lucasw/timer_test: + type: git + url: git@github.com:lucasw/timer_test + version: master + lucasw/topic_state: + type: git + url: git@github.com:lucasw/topic_state + version: master + lucasw/transform_point_cloud: + type: git + url: git@github.com:lucasw/transform_point_cloud.git + version: master + lucasw/v4l2ucp: + type: git + url: git@github.com:lucasw/v4l2ucp + version: master + lucasw/vimjay: + type: git + url: git@github.com:lucasw/vimjay + version: eliminate_build_warnings + opencv_apps: + type: git + # url: git@github.com:ros-perception/opencv_apps.git + url: git@github.com:muellerbernd/opencv_apps + version: indigo + other/PlotJuggler: + type: git + url: git@github.com:facontidavide/PlotJuggler.git + version: main + other/anybotics/elevation_mapping: + type: git + url: git@github.com:ANYbotics/elevation_mapping.git + version: master + other/anybotics/kindr: + type: git + url: git@github.com:ANYbotics/kindr + version: master + other/anybotics/kindr_ros: + type: git + url: git@github.com:lucasw/kindr_ros + version: cpp17 + other/anybotics/message_logger: + type: git + url: git@github.com:lucasw/message_logger + version: line_endings + other/anybotics/point_cloud_io: + type: git + url: git@github.com:ANYbotics/point_cloud_io + version: master + other/apriltag_ros: + type: git + url: git@github.com:AprilRobotics/apriltag_ros.git + version: master + other/camera_throttler_nodelets: + type: git + url: git@github.com:lucasw/camera_throttler_nodelets.git + version: noetic_aggregated + other/catkin_virtualenv: + type: git + url: git@github.com:locusrobotics/catkin_virtualenv.git + version: master + other/ddynamic_reconfigure: + type: git + url: git@github.com:ros-o/ddynamic_reconfigure + version: obese-devel + other/depthai-ros-examples: + type: git + url: git@github.com:luxonis/depthai-ros-examples.git + version: main + other/euslisp-release: + type: git + url: git@github.com:tork-a/euslisp-release.git + version: release/melodic/euslisp + other/ffmpeg_image_transport: + type: git + url: git@github.com:lucasw/ffmpeg_image_transport + version: noetic_aggregated + other/ffmpeg_image_transport_msgs: + type: git + url: git@github.com:daniilidis-group/ffmpeg_image_transport_msgs.git + version: master + other/fiducials: + type: git + url: git@github.com:lucasw/fiducials + version: cmake_vision_msgs + other/find-object: + type: git + url: git@github.com:lucasw/find-object.git + version: master + other/fuse: + type: git + url: git@github.com:lucasw/fuse + version: cpp17 + # other/geneus: # in underlay_ws + # type: git + # url: git@github.com:jsk-ros-pkg/geneus.git + # version: master + other/graph_rviz_plugin: + type: git + url: git@github.com:lucasw/graph_rviz_plugin + version: pluginlib_hpp + other/hector_slam: + type: git + url: git@github.com:lucasw/hector_slam + version: boost_placeholders + other/jsk_common: + type: git + url: git@github.com:lucasw/jsk_common + version: video_to_bag_features + other/jsk_common_msgs: + type: git + url: git@github.com:lucasw/jsk_common_msgs + version: master + other/jsk_recognition: + type: git + url: git@github.com:lucasw/jsk_recognition + version: pcl_vtk_isfinite + other/jsk_roseus: + type: git + url: git@github.com:jsk-ros-pkg/jsk_roseus.git + version: master + other/jsk_visualization: + type: git + url: git@github.com:lucasw/jsk_visualization + version: boost_placeholders + other/libnabo: + type: git + url: git@github.com:ethz-asl/libnabo + version: master + other/lvr2: + type: git + url: git@github.com:uos/lvr2 + version: develop + other/marti_messages: + type: git + url: git@github.com:swri-robotics/marti_messages.git + version: master + other/mavros: + type: git + url: git@github.com:lucasw/mavros + version: master + other/mesh_tools: + type: git + url: git@github.com:lucasw/mesh_tools + version: generate_mesh_geometry + other/message_filters: + type: git + url: git@github.com:fkie/message_filters.git + version: master + other/nmea_navsat_driver: + type: git + url: git@github.com:ros-drivers/nmea_navsat_driver.git + version: master + other/nodelet_rosbag: + type: git + url: git@github.com:lucasw/nodelet_rosbag + version: pluginlib_hpp + other/octomap_mapping: + type: git + url: git@github.com:octomap/octomap_mapping.git + version: kinetic-devel + other/octomap_ros: + type: git + url: git@github.com:octomap/octomap_ros + version: melodic-devel + other/openni2_camera: + type: git + url: git@github.com:lucasw/openni2_camera.git + version: subprocess_wtf_python3_7 + other/pal_statistics: + type: git + url: git@github.com:pal-robotics/pal_statistics.git + version: kinetic-devel + other/people: + type: git + url: git@github.com:wg-perception/people.git + version: noetic + other/pid: + type: git + url: git@github.com:lucasw/pid.git + version: boost_placeholders + other/plotjuggler-ros-plugins: + type: git + url: git@github.com:PlotJuggler/plotjuggler-ros-plugins.git + version: main + other/plotjuggler_msgs: + type: git + url: git@github.com:PlotJuggler/plotjuggler_msgs.git + version: main + other/point_cloud_converter: + type: git + url: git@github.com:pal-robotics-forks/point_cloud_converter.git + version: hydro-devel + other/ros_control_boilerplate: + type: git + url: git@github.com:lucasw/ros_control_boilerplate + version: cpp17 + other/ros_numpy: + type: git + url: git@github.com:lucasw/ros_numpy.git + version: collections_abc + other/ros_rtsp: + type: git + url: git@github.com:lucasw/ros_rtsp + version: pluginlib_hpp + other/ros_type_introspection: + type: git + url: git@github.com:lucasw/ros_type_introspection.git + version: build_2204 + other/rosbag_snapshot: + type: git + url: git@github.com:ros/rosbag_snapshot.git + version: main + other/rosboard: + type: git + url: git@github.com:lucasw/rosboard.git + version: patch-1 + other/rosshow: + type: git + url: git@github.com:dheera/rosshow + version: main + other/rqt_ez_publisher: + type: git + url: git@github.com:lucasw/rqt_ez_publisher + version: ubuntu2210 + other/rtabmap: + type: git + url: git@github.com:introlab/rtabmap.git + version: master + other/rtabmap_ros: + type: git + url: git@github.com:introlab/rtabmap_ros + version: master + other/static_transform_mux: + type: git + url: git@github.com:tradr-project/static_transform_mux.git + version: master + other/tf2_2d: + type: git + url: git@github.com:locusrobotics/tf2_2d.git + version: devel + other/turtlebot: + type: git + url: git@github.com:turtlebot/turtlebot + version: melodic + other/vdb/openvdb: + type: git + url: git@github.com:AcademySoftwareFoundation/openvdb.git + version: master + other/vdb/vdb_mapping: + type: git + url: git@github.com:lucasw/vdb_mapping + version: ubuntu_2404 + other/vdb/vdb_mapping_ros: + type: git + url: git@github.com:lucasw/vdb_mapping_ros + version: rolling_window + other/wu_ros_tools: + type: git + url: git@github.com:lucasw/wu_ros_tools + version: noetic + ros/async_web_server_cpp: + type: git + url: git@github.com:lucasw/async_web_server_cpp.git + version: ros1-develop + ros/audio_common: + type: git + url: git@github.com:ros-drivers/audio_common.git + version: master + ros/camera_info_manager_py: + type: git + url: git@github.com:lucasw/camera_info_manager_py + version: noetic-devel + ros/common_tutorials: + type: git + url: git@github.com:lucasw/common_tutorials.git + version: boost_placeholders + ros/control_msgs: + type: git + url: git@github.com:ros-controls/control_msgs.git + version: kinetic-devel + ros/ddynamic_reconfigure_python: + type: git + url: git@github.com:pal-robotics/ddynamic_reconfigure_python + version: master + ros/diagnostics: + type: git + url: git@github.com:ros/diagnostics.git + version: noetic-devel + ros/dynamic_reconfigure: + type: git + url: git@github.com:lucasw/dynamic_reconfigure + version: init_default_values + ros/filters: + type: git + url: git@github.com:ros/filters.git + version: noetic-devel + ros/four_wheel_steering_msgs: + type: git + url: git@github.com:ros-drivers/four_wheel_steering_msgs.git + version: master + ros/gazebo_ros_demos: + type: git + url: git@github.com:lucasw/gazebo_ros_demos + version: noetic-devel + ros/gazebo_ros_pkgs: + type: git + url: git@github.com:lucasw/gazebo_ros_pkgs + version: noetic_debug_plugins + ros/geographic_info: + type: git + url: git@github.com:ros-geographic-info/geographic_info.git + version: master + # ros/geometry2: # in underlay_ws + # type: git + # url: git@github.com:lucasw/geometry2 + # version: noetic_aggregated + ros/grid_map: + type: git + url: git@github.com:lucasw/grid_map + version: tbb_2021 + ros/image_common: + type: git + url: git@github.com:lucasw/image_common + version: ubuntu_2210 + ros/image_pipeline: + type: git + url: git@github.com:lucasw/image_pipeline + version: rgb_in_depth_range + ros/image_transport_plugins: + type: git + url: git@github.com:lucasw/image_transport_plugins + version: enable_pub + ros/interactive_markers: + type: git + url: git@github.com:ros-visualization/interactive_markers.git + version: noetic-devel + ros/joint_state_publisher: + type: git + url: git@github.com:lucasw/joint_state_publisher + version: noetic_aggregated + ros/joystick_drivers: + type: git + url: git@github.com:lucasw/joystick_drivers + version: warn_not_error_if_no_joy + ros/laser_assembler: + type: git + url: git@github.com:lucasw/laser_assembler + version: noetic-devel + ros/libuvc_ros: + type: git + url: git@github.com:lucasw/libuvc_ros.git + version: libuvc_0_0_7 + ros/media_export: + type: git + url: git@github.com:ros/media_export.git + version: kinetic-devel + ros/navigation: + type: git + url: git@github.com:lucasw/navigation + version: lucasw_debug + ros/nmea_msgs: + type: git + url: git@github.com:ros-drivers/nmea_msgs + version: master + ros/nodelet_core: + type: git + url: git@github.com:lucasw/nodelet_core.git + version: throttle_looping_time + ros/octomap_msgs: + type: git + url: git@github.com:OctoMap/octomap_msgs.git + version: melodic-devel + ros/realtime_tools: + type: git + url: git@github.com:ros-controls/realtime_tools.git + version: noetic-devel + ros/robot_localization: + type: git + url: git@github.com:lucasw/robot_localization + version: boost_placeholders_cpp17 + ros/robot_state_publisher: + type: git + url: git@github.com:lucasw/robot_state_publisher + version: robot_state_function + ros/ros_comm: # custom overlay with logging mods + type: git + url: git@github.com:lucasw/ros_comm + version: salsa_noetic_aggregated + ros/ros_control: + type: git + url: git@github.com:lucasw/ros_control + version: acceleration_limits + ros/ros_controllers: + type: git + url: git@github.com:lucasw/ros_controllers + version: avoid_no_trajectory_defined + ros/ros_tutorials: + type: git + url: git@github.com:lucasw/ros_tutorials.git + version: boost_placeholders + ros/rosconsole: # lucasw logging mods + type: git + url: git@github.com:lucasw/rosconsole + version: ubuntu_2210 + ros/roscpp_core: # lucasw fixes + type: git + url: git@github.com:lucasw/roscpp_core + version: duration_out_of_dual_range + ros/rospack: # debian patches + type: git + url: git@github.com:lucasw/rospack + version: salsa + ros/rqt: + type: git + url: git@github.com:lucasw/rqt + version: ubuntu_2210 + ros/rqt_bag: + type: git + url: git@github.com:lucasw/rqt_bag + version: build_2204 + ros/rqt_console: + type: git + url: git@github.com:ros-visualization/rqt_console.git + version: master + ros/rqt_graph: + type: git + url: git@github.com:ros-visualization/rqt_graph.git + version: master + ros/rqt_logger_level: + type: git + url: git@github.com:ros-visualization/rqt_logger_level.git + version: master + ros/rqt_plot: + type: git + url: git@github.com:ros-visualization/rqt_plot.git + version: master + ros/rqt_reconfigure: + type: git + url: git@github.com:ros-visualization/rqt_reconfigure + version: master + ros/rqt_robot_monitor: + type: git + url: git@github.com:ros-visualization/rqt_robot_monitor.git + version: ros1 + ros/rqt_robot_steering: + type: git + url: git@github.com:lucasw/rqt_robot_steering.git + version: python310 + ros/rqt_tf_tree: + type: git + url: git@github.com:ros-visualization/rqt_tf_tree.git + version: master + ros/rviz: + type: git + url: git@github.com:lucasw/rviz.git + version: misc_fixes + ros/teleop_twist_joy: + type: git + url: git@github.com:lucasw/teleop_twist_joy + version: cmp0115_cpp_extension + ros/teleop_twist_keyboard: + type: git + url: git@github.com:ros-teleop/teleop_twist_keyboard.git + version: master + ros/twist_mux: + type: git + url: git@github.com:lucasw/twist_mux + version: ubuntu2210 + ros/twist_mux_msgs: + type: git + url: git@github.com:ros-teleop/twist_mux_msgs + version: melodic-devel + ros/unique_identifier: + type: git + url: git@github.com:ros-geographic-info/unique_identifier.git + version: master + ros/urdf_geometry_parser: + type: git + url: git@github.com:ros-controls/urdf_geometry_parser.git + version: kinetic-devel + ros/urdf_parser_py: + type: git + url: git@github.com:ros/urdf_parser_py.git + version: melodic-devel + ros/usb_cam: + type: git + url: git@github.com:ros-drivers/usb_cam.git + version: develop + ros/video_stream_opencv: + type: git + url: git@github.com:lucasw/video_stream_opencv + version: build_2204 + ros/view_controller_msgs: + type: git + url: git@github.com:ros-visualization/view_controller_msgs.git + version: lunar-devel + ros/vision_msgs: + type: git + url: git@github.com:ros-perception/vision_msgs.git + version: noetic-devel + ros/web_video_server: + type: git + url: git@github.com:lucasw/web_video_server + version: boost_placeholders + ros/xacro: + type: git + url: git@github.com:lucasw/xacro.git + version: cleanup_roslint + roso/control_toolbox: + type: git + url: git@github.com:ros-o/control_toolbox + version: obese-devel + roso/qt_gui_core: + type: git + url: git@github.com:lucasw/qt_gui_core + version: ubuntu_2210 + roso/rosparam_shortcuts: + type: git + url: git@github.com:lucasw/rosparam_shortcuts + version: cleanup_lint + roso/rqt_image_view: + type: git + url: git@github.com:lucasw/rqt_image_view + version: detection2d_image_view diff --git a/ubuntu_2404/ignore.sh b/ubuntu_2404/ignore.sh new file mode 100755 index 0000000..da8b5e4 --- /dev/null +++ b/ubuntu_2404/ignore.sh @@ -0,0 +1,45 @@ +#!/bin/sh +# These are ignored because they don't yet build in 22.04, need modifications, +# or depend on gazebo +touch ./clearpath/CATKIN_IGNORE +touch ./clearpath/husky/husky_gazebo/CATKIN_IGNORE +touch ./clearpath/moose_simulator/CATKIN_IGNORE +touch ./clearpath/warthog_simulator/CATKIN_IGNORE +touch ./greenzie/boustrophedon_planner/CATKIN_IGNORE +touch ./other/anybotics/elevation_mapping/CATKIN_IGNORE +touch ./other/apriltag_ros/CATKIN_IGNORE # libapriltag-dev lib/lib cmake issue +touch ./other/catkin_virtualenv/test_catkin_virtualenv/CATKIN_IGNORE +touch ./other/catkin_virtualenv/test_catkin_virtualenv_inherited/CATKIN_IGNORE +# touch ./other/catkin_virtualenv/test_catkin_virtualenv_python2/CATKIN_IGNORE +touch ./other/depthai-ros-examples/CATKIN_IGNORE +touch ./other/ffmpeg_image_transport/CATKIN_IGNORE +touch ./other/ffmpeg_image_transport_msgs/CATKIN_IGNORE +touch ./other/fiducials/aruco_gazebo/CATKIN_IGNORE +touch ./other/jsk_common/jsk_rosbag_tools/CATKIN_IGNORE +touch ./other/jsk_recognition/imagesift/CATKIN_IGNORE +touch ./other/jsk_recognition/jsk_libfreenect2/CATKIN_IGNORE +touch ./other/jsk_recognition/jsk_pcl_ros/CATKIN_IGNORE +touch ./other/jsk_recognition/jsk_pcl_ros_utils/CATKIN_IGNORE +touch ./other/jsk_recognition/jsk_perception/CATKIN_IGNORE +touch ./other/jsk_recognition/sound_classification/CATKIN_IGNORE +touch ./other/jsk_roseus/CATKIN_IGNORE +touch ./other/jsk_roseus/roseus_msgs/CATKIN_IGNORE +touch ./other/euslisp-release/CATKIN_IGNORE +# touch ./other/mesh_tools/mesh_msgs_hdf5/CATKIN_IGNORE +# touch ./other/mesh_tools/hdf5_map_io/CATKIN_IGNORE +# touch ./other/mesh_tools/rviz_map_plugin/CATKIN_IGNORE +touch ./other/mavros/libmavconn/CATKIN_IGNORE +touch ./other/mavros/mavros/CATKIN_IGNORE +touch ./other/mavros/mavros_extras/CATKIN_IGNORE +touch ./other/mavros/test_mavros/CATKIN_IGNORE +touch ./other/openni2_camera/CATKIN_IGNORE +touch ./other/people/face_detector/CATKIN_IGNORE +touch ./other/people/leg_detector/CATKIN_IGNORE +touch ./other/people/people_tracking_filter/CATKIN_IGNORE +touch ./other/ros_rtsp/CATKIN_IGNORE +touch ./other/pal_statistics/pal_statistics/CATKIN_IGNORE +touch ./ros/gazebo_ros_demos/CATKIN_IGNORE +touch ./ros/gazebo_ros_pkgs/CATKIN_IGNORE +touch ./ros/joystick_drivers/ps3joy/CATKIN_IGNORE +touch ./ros/joystick_drivers/wiimote/CATKIN_IGNORE +touch ./ros/web_video_server/CATKIN_IGNORE diff --git a/ubuntu_2404/rqt_rviz_repos.yaml b/ubuntu_2404/rqt_rviz_repos.yaml new file mode 100644 index 0000000..2f82894 --- /dev/null +++ b/ubuntu_2404/rqt_rviz_repos.yaml @@ -0,0 +1,502 @@ +repositories: + # extra/common_msgs: # in underlay_ws + # type: git + # url: git@github.com:ros/common_msgs + # version: noetic-devel + # extra/geometry: + # type: git + # url: git@github.com:ros-o/geometry + # version: obese-devel + extra/laser_geometry: + type: git + url: git@github.com:ros-o/laser_geometry + version: obese-devel + extra/navigation_msgs: + type: git + url: git@github.com:ros-planning/navigation_msgs + version: ros1 + extra/pcl_msgs: + type: git + url: git@github.com:ros-perception/pcl_msgs + version: noetic-devel + extra/perception_pcl: + type: git + url: git@github.com:ros-o/perception_pcl + version: obese-devel + extra/python_qt_binding: + type: git + url: git@github.com:ros-o/python_qt_binding + version: obese-devel + extra/vision_opencv: + type: git + url: git@github.com:ros-perception/vision_opencv + version: noetic + lucasw/dynamic_reconfigure_tools: + type: git + url: git@github.com:lucasw/dynamic_reconfigure_tools + version: master + lucasw/image_manip: + type: git + url: git@github.com:lucasw/image_manip + version: fix_zero_frame_rate + lucasw/nodelet_demo: + type: git + url: git@github.com:lucasw/nodelet_demo + version: master + lucasw/ros1_lifecycle: + type: git + url: git@github.com:lucasw/ros1_lifecycle + version: misc_fixes + lucasw/ros_example: + type: git + url: git@github.com:lucasw/ros_example + version: main + lucasw/ros_system_monitor: + type: git + url: git@github.com:lucasw/ros_system_monitor + version: chrony_monitor + lucasw/rqt_file_dialog: + type: git + url: git@github.com:lucasw/rqt_file_dialog + version: master + lucasw/rqt_tf_echo: + type: git + url: git@github.com:lucasw/rqt_tf_echo + version: master + lucasw/rqt_topic_display: + type: git + url: git@github.com:lucasw/rqt_topic_display + version: master + lucasw/rviz_camera_stream: + type: git + url: git@github.com:lucasw/rviz_camera_stream + version: noetic-devel + lucasw/rviz_interactive_tf: + type: git + url: git@github.com:lucasw/rviz_interactive_tf + version: master + lucasw/rviz_lighting: + type: git + url: git@github.com:lucasw/rviz_lighting + version: cpp17 + lucasw/rviz_ortho_view_controller: + type: git + url: git@github.com:lucasw/rviz_ortho_view_controller + version: master + lucasw/screengrab_ros: + type: git + url: git@github.com:lucasw/screengrab_ros + version: master + lucasw/signal_generator: + type: git + url: git@github.com:lucasw/signal_generator + version: master + lucasw/tf_demo: + type: git + url: git@github.com:lucasw/tf_demo + version: old_tf_to_new_tf + lucasw/timer_test: + type: git + url: git@github.com:lucasw/timer_test + version: master + lucasw/topic_state: + type: git + url: git@github.com:lucasw/topic_state + version: master + lucasw/transform_point_cloud: + type: git + url: git@github.com:lucasw/transform_point_cloud + version: master + lucasw/v4l2ucp: + type: git + url: git@github.com:lucasw/v4l2ucp + version: master + lucasw/vimjay: + type: git + url: git@github.com:lucasw/vimjay + version: eliminate_build_warnings + opencv_apps: + type: git + # url: git@github.com:ros-perception/opencv_apps + url: git@github.com:muellerbernd/opencv_apps + version: indigo + other/PlotJuggler: + type: git + url: git@github.com:facontidavide/PlotJuggler + version: main + other/apriltag_ros: + type: git + url: git@github.com:AprilRobotics/apriltag_ros + version: master + other/camera_throttler_nodelets: + type: git + url: git@github.com:lucasw/camera_throttler_nodelets + version: noetic_aggregated + other/catkin_virtualenv: + type: git + url: git@github.com:locusrobotics/catkin_virtualenv + version: master + other/ddynamic_reconfigure: + type: git + url: git@github.com:ros-o/ddynamic_reconfigure + version: obese-devel + other/euslisp-release: + type: git + url: git@github.com:tork-a/euslisp-release + version: release/melodic/euslisp + other/fiducials: + type: git + url: git@github.com:lucasw/fiducials + version: cmake_vision_msgs + # other/geneus: # in underlay_ws + # type: git + # url: git@github.com:jsk-ros-pkg/geneus + # version: master + other/graph_rviz_plugin: + type: git + url: git@github.com:lucasw/graph_rviz_plugin + version: pluginlib_hpp + other/jsk_common: + type: git + url: git@github.com:lucasw/jsk_common + version: video_to_bag_features + other/jsk_common_msgs: + type: git + url: git@github.com:lucasw/jsk_common_msgs + version: master + other/jsk_recognition: + type: git + url: git@github.com:lucasw/jsk_recognition + version: pcl_vtk_isfinite + other/jsk_roseus: + type: git + url: git@github.com:jsk-ros-pkg/jsk_roseus + version: master + other/jsk_visualization: + type: git + url: git@github.com:lucasw/jsk_visualization + version: boost_placeholders + other/libnabo: + type: git + url: git@github.com:ethz-asl/libnabo + version: master + other/marti_messages: + type: git + url: git@github.com:swri-robotics/marti_messages + version: master + other/message_filters: + type: git + url: git@github.com:fkie/message_filters + version: master + other/nmea_navsat_driver: + type: git + url: git@github.com:ros-drivers/nmea_navsat_driver + version: master + other/nodelet_rosbag: + type: git + url: git@github.com:lucasw/nodelet_rosbag + version: pluginlib_hpp + other/pal_statistics: + type: git + url: git@github.com:pal-robotics/pal_statistics + version: kinetic-devel + other/pid: + type: git + url: git@github.com:lucasw/pid + version: boost_placeholders + other/plotjuggler-ros-plugins: + type: git + url: git@github.com:PlotJuggler/plotjuggler-ros-plugins + version: main + other/plotjuggler_msgs: + type: git + url: git@github.com:PlotJuggler/plotjuggler_msgs + version: main + other/point_cloud_converter: + type: git + url: git@github.com:pal-robotics-forks/point_cloud_converter + version: hydro-devel + other/ros_control_boilerplate: + type: git + url: git@github.com:lucasw/ros_control_boilerplate + version: cpp17 + other/ros_numpy: + type: git + url: git@github.com:lucasw/ros_numpy + version: collections_abc + other/ros_rtsp: + type: git + url: git@github.com:lucasw/ros_rtsp + version: pluginlib_hpp + other/ros_type_introspection: + type: git + url: git@github.com:lucasw/ros_type_introspection + version: build_2204 + other/rosbag_snapshot: + type: git + url: git@github.com:ros/rosbag_snapshot + version: main + other/rqt_ez_publisher: + type: git + url: git@github.com:lucasw/rqt_ez_publisher + version: ubuntu2210 + other/static_transform_mux: + type: git + url: git@github.com:tradr-project/static_transform_mux + version: master + other/tf2_2d: + type: git + url: git@github.com:locusrobotics/tf2_2d + version: devel + other/wu_ros_tools: + type: git + url: git@github.com:lucasw/wu_ros_tools + version: noetic + ros/audio_common: + type: git + url: git@github.com:ros-drivers/audio_common + version: master + ros/camera_info_manager_py: + type: git + url: git@github.com:lucasw/camera_info_manager_py + version: noetic-devel + ros/common_tutorials: + type: git + url: git@github.com:lucasw/common_tutorials + version: boost_placeholders + ros/control_msgs: + type: git + url: git@github.com:ros-controls/control_msgs + version: kinetic-devel + ros/ddynamic_reconfigure_python: + type: git + url: git@github.com:pal-robotics/ddynamic_reconfigure_python + version: master + ros/diagnostics: + type: git + url: git@github.com:ros/diagnostics + version: noetic-devel + ros/dynamic_reconfigure: + type: git + url: git@github.com:lucasw/dynamic_reconfigure + version: init_default_values + ros/filters: + type: git + url: git@github.com:ros/filters + version: noetic-devel + ros/four_wheel_steering_msgs: + type: git + url: git@github.com:ros-drivers/four_wheel_steering_msgs + version: master + ros/geographic_info: + type: git + url: git@github.com:ros-geographic-info/geographic_info + version: master + # ros/geometry2: # in underlay_ws + # type: git + # url: git@github.com:lucasw/geometry2 + # version: noetic_aggregated + ros/grid_map: + type: git + url: git@github.com:lucasw/grid_map + version: tbb_2021 + ros/image_common: + type: git + url: git@github.com:lucasw/image_common + version: ubuntu_2210 + ros/image_pipeline: + type: git + url: git@github.com:lucasw/image_pipeline + version: rgb_in_depth_range + ros/image_transport_plugins: + type: git + url: git@github.com:lucasw/image_transport_plugins + version: enable_pub + ros/interactive_markers: + type: git + url: git@github.com:ros-visualization/interactive_markers + version: noetic-devel + ros/joint_state_publisher: + type: git + url: git@github.com:lucasw/joint_state_publisher + version: noetic_aggregated + ros/joystick_drivers: + type: git + url: git@github.com:lucasw/joystick_drivers + version: warn_not_error_if_no_joy + ros/laser_assembler: + type: git + url: git@github.com:lucasw/laser_assembler + version: noetic-devel + ros/libuvc_ros: + type: git + url: git@github.com:lucasw/libuvc_ros + version: libuvc_0_0_7 + ros/media_export: + type: git + url: git@github.com:ros/media_export + version: kinetic-devel + ros/navigation: + type: git + url: git@github.com:lucasw/navigation + version: lucasw_debug + ros/nmea_msgs: + type: git + url: git@github.com:ros-drivers/nmea_msgs + version: master + ros/nodelet_core: + type: git + url: git@github.com:lucasw/nodelet_core + version: throttle_looping_time + ros/octomap_msgs: + type: git + url: git@github.com:OctoMap/octomap_msgs + version: melodic-devel + ros/realtime_tools: + type: git + url: git@github.com:ros-controls/realtime_tools + version: noetic-devel + ros/robot_state_publisher: + type: git + url: git@github.com:lucasw/robot_state_publisher + version: robot_state_function + ros/ros_comm: # custom overlay with logging mods + type: git + url: git@github.com:lucasw/ros_comm + version: salsa_noetic_aggregated + ros/ros_control: + type: git + url: git@github.com:lucasw/ros_control + version: acceleration_limits + ros/ros_controllers: + type: git + url: git@github.com:lucasw/ros_controllers + version: avoid_no_trajectory_defined + ros/ros_tutorials: + type: git + url: git@github.com:lucasw/ros_tutorials + version: boost_placeholders + ros/rosconsole: # lucasw logging mods + type: git + url: git@github.com:lucasw/rosconsole + version: ubuntu_2210 + ros/roscpp_core: # lucasw fixes + type: git + url: git@github.com:lucasw/roscpp_core + version: duration_out_of_dual_range + ros/rospack: # debian patches + type: git + url: git@github.com:lucasw/rospack + version: salsa + ros/rqt: + type: git + url: git@github.com:lucasw/rqt + version: ubuntu_2210 + ros/rqt_bag: + type: git + url: git@github.com:lucasw/rqt_bag + version: build_2204 + ros/rqt_console: + type: git + url: git@github.com:ros-visualization/rqt_console + version: master + ros/rqt_graph: + type: git + url: git@github.com:ros-visualization/rqt_graph + version: master + ros/rqt_logger_level: + type: git + url: git@github.com:ros-visualization/rqt_logger_level + version: master + ros/rqt_plot: + type: git + url: git@github.com:ros-visualization/rqt_plot + version: master + ros/rqt_reconfigure: + type: git + url: git@github.com:ros-visualization/rqt_reconfigure + version: master + ros/rqt_robot_monitor: + type: git + url: git@github.com:ros-visualization/rqt_robot_monitor + version: ros1 + ros/rqt_robot_steering: + type: git + url: git@github.com:lucasw/rqt_robot_steering + version: python310 + ros/rqt_tf_tree: + type: git + url: git@github.com:ros-visualization/rqt_tf_tree + version: master + ros/rviz: + type: git + url: git@github.com:lucasw/rviz + version: misc_fixes + ros/teleop_twist_joy: + type: git + url: git@github.com:lucasw/teleop_twist_joy + version: cmp0115_cpp_extension + ros/teleop_twist_keyboard: + type: git + url: git@github.com:ros-teleop/teleop_twist_keyboard + version: master + ros/twist_mux: + type: git + url: git@github.com:lucasw/twist_mux + version: ubuntu2210 + ros/twist_mux_msgs: + type: git + url: git@github.com:ros-teleop/twist_mux_msgs + version: melodic-devel + ros/unique_identifier: + type: git + url: git@github.com:ros-geographic-info/unique_identifier + version: master + ros/urdf_geometry_parser: + type: git + url: git@github.com:ros-controls/urdf_geometry_parser + version: kinetic-devel + ros/urdf_parser_py: + type: git + url: git@github.com:ros/urdf_parser_py + version: melodic-devel + ros/usb_cam: + type: git + url: git@github.com:ros-drivers/usb_cam + version: develop + ros/video_stream_opencv: + type: git + url: git@github.com:lucasw/video_stream_opencv + version: build_2204 + ros/view_controller_msgs: + type: git + url: git@github.com:ros-visualization/view_controller_msgs + version: lunar-devel + ros/vision_msgs: + type: git + url: git@github.com:ros-perception/vision_msgs + version: noetic-devel + ros/web_video_server: + type: git + url: git@github.com:lucasw/web_video_server + version: boost_placeholders + ros/xacro: + type: git + url: git@github.com:lucasw/xacro + version: cleanup_roslint + roso/control_toolbox: + type: git + url: git@github.com:ros-o/control_toolbox + version: obese-devel + roso/qt_gui_core: + type: git + url: git@github.com:lucasw/qt_gui_core + version: ubuntu_2210 + roso/rosparam_shortcuts: + type: git + url: git@github.com:lucasw/rosparam_shortcuts + version: cleanup_lint + roso/rqt_image_view: + type: git + url: git@github.com:lucasw/rqt_image_view + version: detection2d_image_view diff --git a/underlay_repos.yaml b/underlay_repos.yaml new file mode 100644 index 0000000..d608a5b --- /dev/null +++ b/underlay_repos.yaml @@ -0,0 +1,154 @@ +repositories: + # TODO(lucasw) separate the ros catkin packages from cmake/python packages + actionlib: + type: git + url: git@github.com:ros/actionlib.git + version: noetic-devel + angles: + type: git + url: git@github.com:ros/angles.git + version: master + bond_core: + type: git + url: git@github.com:ros-o/bond_core.git + version: obese-devel + catkin: + type: git + url: git@github.com:ros-o/catkin + version: obese-devel + catkin_pkg: + type: git + url: git@github.com:ros-infrastructure/catkin_pkg + # version: noetic-devel + catkin_tools: + type: git + url: git@github.com:catkin/catkin_tools + class_loader: + type: git + url: git@github.com:ros-o/class_loader + version: obese-devel + cmake_modules: + type: git + url: git@github.com:ros/cmake_modules + version: 0.5-devel + common_msgs: + type: git + url: git@github.com:ros/common_msgs.git + version: noetic-devel + console_bridge: + type: git + url: git@github.com:ros/console_bridge + version: master + gencpp: + type: git + url: git@github.com:ros-o/gencpp + version: obese-devel + geneus: + type: git + url: git@github.com:jsk-ros-pkg/geneus + version: master + genlisp: + type: git + url: git@github.com:ros/genlisp + version: kinetic-devel + genmsg: + type: git + url: git@github.com:ros/genmsg + version: kinetic-devel + gennodejs: + type: git + url: git@github.com:RethinkRobotics-opensource/gennodejs + version: kinetic-devel + genpy: + type: git + url: git@github.com:ros/genpy + version: main + geometry: + type: git + url: git@github.com:ros-o/geometry.git + version: obese-devel + geometry2: + type: git + url: git@github.com:ros-o/geometry2 + version: obese-devel + kdl_parser: + type: git + url: git@github.com:ros-o/kdl_parser + version: obese-devel + message_generation: + type: git + url: git@github.com:ros/message_generation + version: kinetic-devel + message_runtime: + type: git + url: git@github.com:ros/message_runtime + version: kinetic-devel + osrf_pycommon: + type: git + url: git@github.com:osrf/osrf_pycommon + pluginlib: + type: git + url: git@github.com:ros-o/pluginlib + version: obese-devel + resource_retriever: + type: git + url: git@github.com:lucasw/resource_retriever + version: curl_lib + ros: + type: git + url: git@github.com:ros/ros + version: noetic-devel + ros_comm: + type: git + # TODO(lucasw) got std::shared_mutex log4cxx errors in Ubuntu 22.04 with this version + # url: git@github.com:ros-o/ros_comm + # version: obese-devel + url: git@github.com:lucasw/ros_comm + version: salsa_noetic_aggregated + ros_comm_msgs: + type: git + url: git@github.com:ros/ros_comm_msgs + version: kinetic-devel + ros_environment: + type: git + url: git@github.com:ros-o/ros_environment + rosconsole: + type: git + url: git@github.com:ros-o/rosconsole + version: obese-devel + rosconsole_bridge: + type: git + url: git@github.com:ros/rosconsole_bridge + version: kinetic-devel + roscpp_core: + type: git + url: git@github.com:ros-o/roscpp_core + version: obese-devel + rosdep: + type: git + url: git@github.com:lucasw/rosdep + version: disable_root_etc_ros + rosdistro: + type: git + url: git@github.com:ros-infrastructure/rosdistro + roslint: + type: git + url: git@github.com:lucasw/roslint + version: roslint_rust + rospack: + type: git + url: git@github.com:ros/rospack + version: noetic-devel + rospkg: + type: git + url: git@github.com:ros-infrastructure/rospkg + std_msgs: + type: git + url: git@github.com:ros/std_msgs + version: kinetic-devel + urdf: + type: git + url: git@github.com:ros-o/urdf + version: obese-devel + # url: git@github.com:lucasw/urdf + # version: cmake_cxx_17