Robot Operating System (ROS2): First Baby Steps on Mac

Jiri Puc
2 min readJan 22, 2021

Installation

I am a mac user -> this article is intended for unaware fools like me.

So apparently the fact that every ROS video and tutorial on this planet is recorded on Ubuntu is not a coincidence.

The installation instruction for mac state has a step called “Disable System Integrity Protection (SIP)”.

I am not doing that. Ever.

Installation Alternative = Docker

Create a docker-compose.yml file:

version: "3"

services:

publisher:
image: osrf/ros:foxy-desktop
command: ros2 run demo_nodes_cpp talker

subscriber:
image: osrf/ros:foxy-desktop
command: ros2 run demo_nodes_cpp listener
depends_on:
- publisher

Now run docker-compose up -d and here you have it. Your first ROS program. Until you find out it actually doesn’t work. At the time of writing, the docker image for foxy is throwing an error on mac.

What Now?

I see only one viable alternative. Install Ubuntu via VirtualBox. I can confirm the ROS is easy to install on the Ubuntu image. Finally, I can progress further.

Final Thoughts

It is quite fascinating that ROS / ROS2 is considered be a standard middleware for robotics and yet, the project gives all the indications of poorly maintained project.

It seems we are set for quite a challenging ride.

--

--