From 4b7210a1e978d26b0417fbc8455017165fbfba15 Mon Sep 17 00:00:00 2001 From: Woen-Sug Choi Date: Mon, 17 Jun 2024 21:08:01 +0900 Subject: [PATCH] readme more in details --- .github/workflows/build.yml | 10 +++++++- README.md | 48 +++++++++++++++++++++++++++++++++---- 2 files changed, 53 insertions(+), 5 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 92e1b71..51f3869 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -11,9 +11,17 @@ jobs: steps: - name: Check out repository code uses: actions/checkout@v4 + - name: Install GitHub CLI run: | brew update brew install gh curl + - name: Run install script - run: /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/IOES-Lab/ROS2_Jazzy_MacOS_Native_AppleSilicon/main/install.sh)" -- -a \ No newline at end of file + run: /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/IOES-Lab/ROS2_Jazzy_MacOS_Native_AppleSilicon/main/install.sh)" -- -a + + - name: Run Test (ROS2 Jazzy) + run: source ~/ros2_jazzy/activate_ros && cd ~/ros2_jazzy && colcon test-result --all --verbose + + - name: Run Test (Gazebo Harmonic) + run: source ~/ros2_jazzy/activate_ros && cd ~/gz_harmonic && colcon test-result --all --verbose \ No newline at end of file diff --git a/README.md b/README.md index 73640b0..0c5d759 100644 --- a/README.md +++ b/README.md @@ -8,19 +8,59 @@ ``` ## Introduction -This is a source code behind oneline installation code to install ROS2 Jazzy and Gazebo Harmonic on Apple Silicon Macbooks. +This is the source code behind the one-line installation command to install ROS2 Jazzy and Gazebo Harmonic on Apple Silicon Macbooks. -Tested and desgined on macOS Sonomar 14.5 with Apple M3 chip (36 GB), it took about 15 mintues each for ROS2 Jazzy and Gazebo Harmonic +Tested and designed on macOS Sonoma 14.5 with an Apple M3 chip (36 GB), it took about 15 minutes each to install ROS2 Jazzy and Gazebo Harmonic. -The reasons we are installing ROS2 Jazzy on Apple Silicon Macbooks natively are: +The reasons for installing ROS2 Jazzy natively on Apple Silicon Macbooks are: - Faster performance - To avoid using Rosetta 2 to emulate x86_64 architecture - Better compatibility - USB and other hardware drivers are not fully supported with Docker Desktop for Mac with HyperKit (for now) - To avoid any potential issues that may arise from using Rosetta 2 +## What it Does +- ROS2 Jazzy Installation (`install.sh`) + - 1. Checking System Requirements + - Check XCode Installation + - Check Brew Installation + - Generate workspace for ROS2 Jazzy (default: `~/ros2_jazzy`) + - 2. Install Dependencies + - Install dependencies with Brew + - Set environment variables for Brew packages + - Create a Python 3.11 virtual environment (default `~/.ros2_venv`) + - Install Python dependencies + - 3. Download ROS2 Jazzy Source Code + - Clone the ROS2 Jazzy source code + - It's using release tag (default: `release-jazzy-20240523`) + - Partial compile to generate structure + - 4. Patch for macOS X Installation + - Patch for cyclondds, orocos-kdl, rviz_ogre_vendor, rosbag2_transport + - Ensure link with qt5 + - Revert python_orocos_kdl_vendor back to 0.4.1 + - Remove eclipse-cyclonedds + - 5. Compile ROS2 Jazzy + - 6. Post Installation + - Generate a config file in the workspace + - Make source script +- Gazebo Harmonic Installation (`gz_install.sh`) + - 1. Checking System Requirements + - Create a workspace for Gazebo Harmonic (default: `~/gz_harmonic`) + - Check the Python virtual environment + - 2. Install Dependencies + - Install Brew dependencies + - Install Python dependencies + - Set environmetnal variables for brew packages + - Install xquartz + - 3. Download Gazebo Harmonic Source Code + - Clone Gazebo Harmonic Source Code + - 4. Compile Gazebo Harmonic + - 5. Post Installation + - Read/append to the config file in the workspace + - Regenerate source script + ## Notes -- `eclipse-cyclonedds` is excluded from during the installation process +- `eclipse-cyclonedds` is excluded from the installation process - It is not supported on Apple Silicon Macbooks (compile errors) - Ref : https://ros.org/reps/rep-2000.html