Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/testpr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,7 @@ jobs:
- name: Delete specific outdated cache entries
shell: bash -l {0}
run: |
# rm -rf ${{ matrix.folder_cache }}/ros-rolling-moveit-setup-srdf-plugins* 2>/dev/null || true
# rm -rf ${{ matrix.folder_cache }}/ros-lyrical-moveit-setup-srdf-plugins* 2>/dev/null || true
mkdir -p ${{ matrix.folder_cache }}
pixi run rattler-index fs ${{ matrix.folder_cache }}/.. --force

Expand All @@ -113,7 +113,7 @@ jobs:
- name: Build recipes
shell: bash -l {0}
run: |
pixi run rattler-build build --recipe-dir recipes --target-platform ${{ matrix.platform }} -m ./conda_build_config.yaml -c https://prefix.dev/conda-forge -c https://prefix.dev/robostack-rolling --skip-existing
pixi run rattler-build build --recipe-dir recipes --target-platform ${{ matrix.platform }} -m ./conda_build_config.yaml -c https://prefix.dev/conda-forge -c https://prefix.dev/robostack-lyrical --skip-existing

- name: See packages that will be saved in cache
shell: bash -l {0}
Expand Down
2 changes: 1 addition & 1 deletion .scripts/build_unix.sh
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ for recipe in ${CURRENT_RECIPES[@]}; do
pixi run -v rattler-build build \
--recipe ${FEEDSTOCK_ROOT}/recipes/${recipe} \
-m ${FEEDSTOCK_ROOT}/conda_build_config.yaml \
-c https://prefix.dev/robostack-rolling -c https://prefix.dev/conda-forge \
-c https://prefix.dev/robostack-lyrical -c https://prefix.dev/conda-forge \
${extra_channel} \
--output-dir $CONDA_BLD_PATH \
${cross_compile}
Expand Down
2 changes: 1 addition & 1 deletion .scripts/build_win.bat
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ for %%X in (%CURRENT_RECIPES%) do (
cd %FEEDSTOCK_ROOT%\recipes\%%X\
pixi run -v rattler-build build --recipe %FEEDSTOCK_ROOT%\recipes\%%X\ ^
-m %FEEDSTOCK_ROOT%\conda_build_config.yaml ^
-c https://prefix.dev/robostack-rolling -c https://prefix.dev/conda-forge ^
-c https://prefix.dev/robostack-lyrical -c https://prefix.dev/conda-forge ^
--output-dir %CONDA_BLD_PATH%

if errorlevel 1 exit 1
Expand Down
2 changes: 1 addition & 1 deletion AGENTS.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# AGENTS.md

Working notes for future coding agents in a RoboStack repo. Replace $DISTRO with e.g. noetic/humble/kilted/rolling and so forth; you can check the working directory.
Working notes for future coding agents in a RoboStack repo. Replace $DISTRO with e.g. noetic/humble/kilted/lyrical and so forth; you can check the working directory.

## Session defaults for this repo

Expand Down
30 changes: 15 additions & 15 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,26 +1,26 @@
# RoboStack (for ROS rolling)
# RoboStack (for ROS lyrical)

[![Conda](https://img.shields.io/conda/dn/robostack-rolling/ros-rolling-desktop?style=flat-square)](https://anaconda.org/robostack/)
[![GitHub Repo stars](https://img.shields.io/github/stars/robostack/ros-rolling?style=flat-square)](https://github.com/RoboStack/ros-rolling/)
[![Conda](https://img.shields.io/conda/dn/robostack-lyrical/ros-lyrical-desktop?style=flat-square)](https://anaconda.org/robostack/)
[![GitHub Repo stars](https://img.shields.io/github/stars/robostack/ros-lyrical?style=flat-square)](https://github.com/RoboStack/ros-lyrical/)
[![QUT Centre for Robotics](https://img.shields.io/badge/collection-QUT%20Robotics-%23043d71?style=flat-square)](https://qcr.github.io/)

[![Platforms](https://img.shields.io/badge/platforms-linux%20%7C%20win%20%7C%20macos%20%7C%20macos_arm64%20%7C%20linux_aarch64-green.svg?style=flat-square)](https://github.com/RoboStack/ros-rolling)
[![Azure DevOps builds (branch)](https://img.shields.io/github/actions/workflow/status/robostack/ros-rolling/linux.yml?branch=buildbranch_linux&label=build%20linux&style=flat-square)](https://github.com/RoboStack/ros-rolling/actions/workflows/linux.yml)
[![Azure DevOps builds (branch)](https://img.shields.io/github/actions/workflow/status/robostack/ros-rolling/win.yml?branch=buildbranch_win&label=build%20win&style=flat-square)](https://github.com/RoboStack/ros-rolling/actions/workflows/win.yml)
[![Azure DevOps builds (branch)](https://img.shields.io/github/actions/workflow/status/robostack/ros-rolling/osx.yml?branch=buildbranch_osx&label=build%20osx&style=flat-square)](https://github.com/RoboStack/ros-rolling/actions/workflows/osx.yml)
[![Azure DevOps builds (branch)](https://img.shields.io/github/actions/workflow/status/robostack/ros-rolling/osx_arm64.yml?branch=buildbranch_osx_arm64&label=build%20osx-arm64&style=flat-square)](https://github.com/RoboStack/ros-rolling/actions/workflows/osx_arm64.yml)
[![Azure DevOps builds (branch)](https://img.shields.io/github/actions/workflow/status/robostack/ros-rolling/build_linux_aarch64.yml?branch=buildbranch_linux_aarch64&label=build%20aarch64&style=flat-square)](https://github.com/RoboStack/ros-rolling/actions/workflows/build_linux_aarch64.yml)
[![Platforms](https://img.shields.io/badge/platforms-linux%20%7C%20win%20%7C%20macos%20%7C%20macos_arm64%20%7C%20linux_aarch64-green.svg?style=flat-square)](https://github.com/RoboStack/ros-lyrical)
[![Azure DevOps builds (branch)](https://img.shields.io/github/actions/workflow/status/robostack/ros-lyrical/linux.yml?branch=buildbranch_linux&label=build%20linux&style=flat-square)](https://github.com/RoboStack/ros-lyrical/actions/workflows/linux.yml)
[![Azure DevOps builds (branch)](https://img.shields.io/github/actions/workflow/status/robostack/ros-lyrical/win.yml?branch=buildbranch_win&label=build%20win&style=flat-square)](https://github.com/RoboStack/ros-lyrical/actions/workflows/win.yml)
[![Azure DevOps builds (branch)](https://img.shields.io/github/actions/workflow/status/robostack/ros-lyrical/osx.yml?branch=buildbranch_osx&label=build%20osx&style=flat-square)](https://github.com/RoboStack/ros-lyrical/actions/workflows/osx.yml)
[![Azure DevOps builds (branch)](https://img.shields.io/github/actions/workflow/status/robostack/ros-lyrical/osx_arm64.yml?branch=buildbranch_osx_arm64&label=build%20osx-arm64&style=flat-square)](https://github.com/RoboStack/ros-lyrical/actions/workflows/osx_arm64.yml)
[![Azure DevOps builds (branch)](https://img.shields.io/github/actions/workflow/status/robostack/ros-lyrical/build_linux_aarch64.yml?branch=buildbranch_linux_aarch64&label=build%20aarch64&style=flat-square)](https://github.com/RoboStack/ros-lyrical/actions/workflows/build_linux_aarch64.yml)

[![GitHub issues](https://img.shields.io/github/issues-raw/robostack/ros-rolling?style=flat-square)](https://github.com/RoboStack/ros-rolling/issues)
[![GitHub closed issues](https://img.shields.io/github/issues-closed-raw/robostack/ros-rolling?style=flat-square)](https://github.com/RoboStack/ros-rolling/issues?q=is%3Aissue+is%3Aclosed)
[![GitHub pull requests](https://img.shields.io/github/issues-pr-raw/robostack/ros-rolling?style=flat-square)](https://github.com/RoboStack/ros-rolling/pulls)
[![GitHub closed pull requests](https://img.shields.io/github/issues-pr-closed-raw/robostack/ros-rolling?style=flat-square)](https://github.com/RoboStack/ros-rolling/pulls?q=is%3Apr+is%3Aclosed)
[![GitHub issues](https://img.shields.io/github/issues-raw/robostack/ros-lyrical?style=flat-square)](https://github.com/RoboStack/ros-lyrical/issues)
[![GitHub closed issues](https://img.shields.io/github/issues-closed-raw/robostack/ros-lyrical?style=flat-square)](https://github.com/RoboStack/ros-lyrical/issues?q=is%3Aissue+is%3Aclosed)
[![GitHub pull requests](https://img.shields.io/github/issues-pr-raw/robostack/ros-lyrical?style=flat-square)](https://github.com/RoboStack/ros-lyrical/pulls)
[![GitHub closed pull requests](https://img.shields.io/github/issues-pr-closed-raw/robostack/ros-lyrical?style=flat-square)](https://github.com/RoboStack/ros-lyrical/pulls?q=is%3Apr+is%3Aclosed)

[__Table with all available packages & architectures__](https://robostack.github.io/rolling.html)
[__Table with all available packages & architectures__](https://robostack.github.io/lyrical.html)

## Why ROS and Conda?

Welcome to RoboStack, which tightly couples ROS with Conda, a cross-platform, language-agnostic package manager. We provide ROS binaries for Linux, macOS, Windows and ARM (Linux). Installing other recent packages via conda-forge side-by-side works easily, e.g. you can install TensorFlow/PyTorch in the same environment as ROS rolling without any issues. As no system libraries are used, you can also easily install ROS rolling on any recent Linux Distribution - including older versions of Ubuntu. As the packages are pre-built, it saves you from compiling from source, which is especially helpful on macOS and Windows. No root access is required, all packages live in your home directory. We have recently written up a [paper](https://arxiv.org/abs/2104.12910) and [blog post](https://medium.com/robostack/cross-platform-conda-packages-for-ros-fa1974fd1de3) with more information.
Welcome to RoboStack, which tightly couples ROS with Conda, a cross-platform, language-agnostic package manager. We provide ROS binaries for Linux, macOS, Windows and ARM (Linux). Installing other recent packages via conda-forge side-by-side works easily, e.g. you can install TensorFlow/PyTorch in the same environment as ROS lyrical without any issues. As no system libraries are used, you can also easily install ROS lyrical on any recent Linux Distribution - including older versions of Ubuntu. As the packages are pre-built, it saves you from compiling from source, which is especially helpful on macOS and Windows. No root access is required, all packages live in your home directory. We have recently written up a [paper](https://arxiv.org/abs/2104.12910) and [blog post](https://medium.com/robostack/cross-platform-conda-packages-for-ros-fa1974fd1de3) with more information.

## Attribution

Expand Down
6 changes: 3 additions & 3 deletions check_patches_clean_apply.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
# From repository root
python .scripts/check_patches_clean_apply.py # prepare + run
python .scripts/check_patches_clean_apply.py --dry # prepare only
python .scripts/check_patches_clean_apply.py --dry --recipe ros-rolling-rviz2
python .scripts/check_patches_clean_apply.py --dry --recipe ros-lyrical-rviz2
python .scripts/check_patches_clean_apply.py --clean # delete output

The script creates (or refreshes) a sibling folder named
Expand Down Expand Up @@ -76,8 +76,8 @@ def parse_args() -> argparse.Namespace:
metavar="RECIPE",
help=(
"Only check the specified recipe directory under recipes/. "
"Repeat for multiple recipes, e.g. --recipe ros-rolling-rviz2 "
"--recipe ros-rolling-rclcpp"
"Repeat for multiple recipes, e.g. --recipe ros-lyrical-rviz2 "
"--recipe ros-lyrical-rclcpp"
),
)
return ap.parse_args()
Expand Down
24 changes: 12 additions & 12 deletions patch/dependencies.yaml
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
ament_package:
add_host: ['importlib_resources']
foxglove_bridge:
add_host: ["ros-rolling-ament-cmake"]
add_host: ["ros-lyrical-ament-cmake"]
ros_ign_interfaces:
add_host: ["ros-rolling-rcl-interfaces"]
add_host: ["ros-lyrical-rcl-interfaces"]
cartographer_ros:
add_host: ["cartographer 2.*", "libboost-devel", "ceres-solver * cpu*"]
libyaml_vendor:
Expand Down Expand Up @@ -48,7 +48,7 @@ behaviortree_cpp:
add_host: ["libboost-devel", "cppzmq", "zeromq", "sqlite"]
add_run: ["libboost"]
plotjuggler:
add_host: ["libxcb", "${{ 'elfutils' if linux }}", "ros-rolling-ros-workspace"]
add_host: ["libxcb", "${{ 'elfutils' if linux }}", "ros-lyrical-ros-workspace"]
embree_vendor:
add_host: ["${{ 'libgl-devel' if linux }}", "${{ 'libopengl-devel' if linux }}", "libpng", "libjpeg-turbo", "openimageio", "tbb", "tbb-devel", "embree"]
ign_rviz_common:
Expand All @@ -64,7 +64,7 @@ image_view:
nao_lola:
add_host: ["libboost-devel"]
ros_ign_gazebo:
add_host: ["ros-rolling-std-msgs", "ros-rolling-rclcpp", "${{ 'libgl-devel' if linux }}", "${{ 'libopengl-devel' if linux }}"]
add_host: ["ros-lyrical-std-msgs", "ros-lyrical-rclcpp", "${{ 'libgl-devel' if linux }}", "${{ 'libopengl-devel' if linux }}"]
ros_ign_gazebo_demos:
add_host: ["${{ 'libgl-devel' if linux }}", "${{ 'libopengl-devel' if linux }}"]
rosbag2_bag_v2_plugins:
Expand All @@ -78,8 +78,8 @@ libg2o:
fmilibrary_vendor:
add_host: ["fmilib"]
mrpt2:
add_host: ["assimp", "octomap", "tinyxml2", "libboost-devel", "jsoncpp", "gtest", "libboost-python-devel", "libdc1394", "xorg-libxcomposite", "libftdi", "ros-rolling-octomap"]
add_run: ["assimp", "octomap", "tinyxml2", "libboost-devel", "jsoncpp", "gtest", "libboost-python-devel", "libdc1394", "xorg-libxcomposite", "libftdi", "ros-rolling-octomap"]
add_host: ["assimp", "octomap", "tinyxml2", "libboost-devel", "jsoncpp", "gtest", "libboost-python-devel", "libdc1394", "xorg-libxcomposite", "libftdi", "ros-lyrical-octomap"]
add_run: ["assimp", "octomap", "tinyxml2", "libboost-devel", "jsoncpp", "gtest", "libboost-python-devel", "libdc1394", "xorg-libxcomposite", "libftdi", "ros-lyrical-octomap"]
add_build: ["${{ cdt('libxcomposite-devel') if linux }}"]
ros1_rosbag_storage_vendor:
add_host: ["ros-noetic-roscpp", "ros-noetic-roslz4", "ros-noetic-rostest"]
Expand All @@ -89,7 +89,7 @@ popf:
rtabmap:
add_host: ["${{ 'libgl-devel' if linux }}", "${{ 'libopengl-devel' if linux }}", "ceres-solver", "libdc1394", "libusb", "vtk"]
backward_ros:
add_host: ["${{ 'binutils' if linux }}", "${{ 'elfutils' if linux }}", "ros-rolling-ament-cmake-libraries"]
add_host: ["${{ 'binutils' if linux }}", "${{ 'elfutils' if linux }}", "ros-lyrical-ament-cmake-libraries"]
nav2_smac_planner:
add_build: ["${{ 'llvm-openmp' if osx }}"]
add_host: ["${{ 'llvm-openmp' if osx }}", "ompl", "libode"]
Expand All @@ -113,8 +113,8 @@ qt_gui_cpp:
rqt_gui_cpp:
add_host: ["${{ 'libgl-devel' if linux }}", "${{ 'libopengl-devel' if linux }}"]
ur_moveit_config:
add_host: ["ros-rolling-rclpy"]
add_run: ["ros-rolling-rclpy"]
add_host: ["ros-lyrical-rclpy"]
add_run: ["ros-lyrical-rclpy"]
gscam:
add_host: ["glib"]
dolly_ignition:
Expand Down Expand Up @@ -154,7 +154,7 @@ moveit_visual_tools:
force_torque_sensor_broadcaster:
add_host: ["typeguard", "jinja2"]
ros_gz_sim:
add_host: ["${{ 'libgl-devel' if linux }}", "${{ 'libopengl-devel' if linux }}", "ros-rolling-gz-sensors-vendor"]
add_host: ["${{ 'libgl-devel' if linux }}", "${{ 'libopengl-devel' if linux }}", "ros-lyrical-gz-sensors-vendor"]
geometric_shapes:
add_host: ["libboost-devel", "octomap"]
ros_image_to_qimage:
Expand All @@ -175,7 +175,7 @@ uncrustify_vendor:
mimick_vendor:
add_build: ["vcstool"]
gz_cmake_vendor:
# https://github.com/gazebo-release/gz_cmake_vendor/blob/rolling/CMakeLists.txt#L6 for select the right major version
# https://github.com/gazebo-release/gz_cmake_vendor/blob/lyrical/CMakeLists.txt#L6 for select the right major version
# (this is true for all gz-* vendor packages) or https://github.com/gazebo-tooling/gazebodistro/blob/master/collection-harmonic.yaml
# See https://gazebosim.org/docs/latest/ros_installation/#summary-of-compatible-ros-and-gazebo-combinations for mapping between ROS2 and Gazebo distros
add_host: ["gz-cmake"]
Expand Down Expand Up @@ -239,7 +239,7 @@ gz_ogre_next_vendor:
rosx_introspection:
add_host: ["rapidjson"]
gz_ros2_control:
add_host: ["${{ 'libgl-devel' if linux }}", "${{ 'libopengl-devel' if linux }}", "ros-rolling-gz-sensors-vendor"]
add_host: ["${{ 'libgl-devel' if linux }}", "${{ 'libopengl-devel' if linux }}", "ros-lyrical-gz-sensors-vendor"]
gz_ros2_control_demos:
add_host: ["${{ 'libgl-devel' if linux }}", "${{ 'libopengl-devel' if linux }}"]
octomap_ros:
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
18 changes: 9 additions & 9 deletions pixi.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[workspace]
name = "ros-rolling"
description = "RoboStack repo to package ros-rolling packages as conda packages"
name = "ros-lyrical"
description = "RoboStack repo to package ros-lyrical packages as conda packages"
authors = ["Tobias Fischer <tobias.fischer@qut.edu.au>", "Wolf Vollprecht <w.vollprecht@gmail.com>", "Silvio Traversaro <silvio@traversaro.it>", "Daisuke Nishimatsu <daisuke.nishimatsu1021@gmail.com>"]
channels = ["https://repo.prefix.dev/conda-forge"]
platforms = ["osx-arm64", "linux-64", "osx-64", "linux-aarch64", "win-64"]
Expand Down Expand Up @@ -35,12 +35,12 @@ vinca = { git = "https://github.com/RoboStack/vinca.git", rev = "187a794e7dbdf51
generate-recipes = { cmd = "vinca -m", depends-on = ["remove-recipes"] }
generate-gha-workflows = { cmd = "vinca-gha --trigger-branch dummy_build_branch_as_it_is_unused -d ./recipes", depends-on = ["generate-recipes"] }
check-patches = { cmd = "python check_patches_clean_apply.py", depends-on = ["generate-recipes"] }
create_snapshot = { cmd = "vinca-snapshot -d rolling -o rosdistro_snapshot.yaml" }
upload = "rattler-build upload prefix -c robostack-rolling --generate-attestation"
build_continue_on_failure = { cmd = "rattler-build build --recipe-dir ./recipes -m ./conda_build_config.yaml -c robostack-rolling -c https://repo.prefix.dev/conda-forge --continue-on-failure --skip-existing", depends-on = ["generate-recipes"] }
create_snapshot = { cmd = "vinca-snapshot -d lyrical -o rosdistro_snapshot.yaml" }
upload = "rattler-build upload prefix -c robostack-lyrical --generate-attestation"
build_continue_on_failure = { cmd = "rattler-build build --recipe-dir ./recipes -m ./conda_build_config.yaml -c robostack-lyrical -c https://repo.prefix.dev/conda-forge --continue-on-failure --skip-existing", depends-on = ["generate-recipes"] }

[tasks.build]
cmd = "rattler-build build --recipe-dir ./recipes -m ./conda_build_config.yaml -c https://prefix.dev/robostack-rolling -c https://prefix.dev/conda-forge --skip-existing"
cmd = "rattler-build build --recipe-dir ./recipes -m ./conda_build_config.yaml -c https://prefix.dev/robostack-lyrical -c https://prefix.dev/conda-forge --skip-existing"
depends-on = ["generate-recipes"]
description = "Build all packages, from the ./recipes dir. This will skip already existing packages, so it can be used to build only a subset of packages by first removing the recipes of the packages you want to rebuild (see `pixi remove-recipes`)."

Expand All @@ -49,7 +49,7 @@ cmd = "rm -rf recipes_only_patch; rm -rf recipes; mkdir recipes"
description = "Remove all generated recipes, before regenerating them."

[tasks.build-one]
cmd = "cp ./patch/{{ PACKAGE }}.*patch ./recipes/{{ PACKAGE }}/patch/; rattler-build build --recipe ./recipes/{{ PACKAGE }}/recipe.yaml -m ./conda_build_config.yaml -c https://prefix.dev/robostack-rolling -c https://prefix.dev/conda-forge"
args = [{ arg = "PACKAGE", default = "ros-rolling-ros-workspace" }]
description = "Build a single package, from the ./recipes dir. Add the `ros-rolling-` prefix to the package name, e.g. `pixi build-one --package ros-rolling-ros-workspace`"
cmd = "cp ./patch/{{ PACKAGE }}.*patch ./recipes/{{ PACKAGE }}/patch/; rattler-build build --recipe ./recipes/{{ PACKAGE }}/recipe.yaml -m ./conda_build_config.yaml -c https://prefix.dev/robostack-lyrical -c https://prefix.dev/conda-forge"
args = [{ arg = "PACKAGE", default = "ros-lyrical-ros-workspace" }]
description = "Build a single package, from the ./recipes dir. Add the `ros-lyrical-` prefix to the package name, e.g. `pixi build-one --package ros-lyrical-ros-workspace`"

Loading
Loading