Skip to content

Commit e028f29

Browse files
author
Marco A. Gutiérrez
authored
Feature/adding binary install (#105)
* Adding package based installation instructions Signed-off-by: Marco A. Gutierrez <[email protected]>
1 parent bfbbd35 commit e028f29

File tree

1 file changed

+48
-19
lines changed

1 file changed

+48
-19
lines changed

README.md

Lines changed: 48 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -10,17 +10,9 @@ The OpenRMF platform for multi-fleet robot management.
1010
## Install ROS 2 Galactic
1111

1212
First, please follow the installation instructions for ROS 2 Galactic.
13-
If you are on an Ubuntu 20.04 LTS machine (as recommended), [here is the binary install page for ROS 2 Galactic on Ubuntu 20.04](https://docs.ros.org/en/galactic/Installation/Ubuntu-Install-Debians.html)
13+
If you are on an Ubuntu 20.04 LTS machine (as recommended), [here is the binary install page for ROS 2 Galactic on Ubuntu 20.04](https://docs.ros.org/en/galactic/Installation/Ubuntu-Install-Debians.html).
1414

15-
## Install rosdep
16-
`rosdep` helps install dependencies for ROS packages across various distros. It can be installed with:
17-
```bash
18-
sudo apt install python3-rosdep
19-
sudo rosdep init
20-
rosdep update
21-
```
22-
23-
## Additional Dependencies
15+
## Setup Gazebo repositories
2416

2517
Setup your computer to accept Gazebo packages from packages.osrfoundation.org.
2618

@@ -30,7 +22,31 @@ sudo apt install -y wget
3022
sudo sh -c 'echo "deb http://packages.osrfoundation.org/gazebo/ubuntu-stable `lsb_release -cs` main" > /etc/apt/sources.list.d/gazebo-stable.list'
3123
wget https://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add -
3224
```
33-
Install all non-ROS dependencies of RMF packages,
25+
26+
## Binary install
27+
28+
OpenRMF binary packages are available for Ubuntu Focal 20.04 for the `Foxy`, `Galactic` and `Rolling` releases of ROS 2. Most OpenRMF packages have the prefix `rmf` on their name, therefore, you can find them by them by searching for the pattern `ros-<ro2distro>-rmf`, e.g., for galatic it would be:
29+
30+
```bash
31+
apt-cache search ros-galactic-rmf
32+
```
33+
34+
### RMF Demos
35+
36+
A good way to install the `rmf` set of packages in one go is to install the one of the main [RMF Demos](https://github.com/open-rmf/rmf_demos) packages. This will pull all the rest of the OpenRMF packages as a dependency. The core of RMF demos is contained on the `rmf_demos` package. However, if you want to install it with simulation support, you should install the `rmf_demos_gz` or `rmf_demos_ign` package which come with gazebo or ignition support respectively. As an example, to install the ROS 2 Galactic release with gazebo support package, you would run:
37+
38+
```bash
39+
sudo apt install ros-galactic-rmf-demos-gz
40+
```
41+
42+
## Building from sources
43+
44+
If you want to get the latest developments you might want to install from sources and compile OpenRMF yourself.
45+
46+
47+
### Additional Dependencies
48+
49+
Install all non-ROS dependencies of OpenRMF packages,
3450

3551
```bash
3652
sudo apt update && sudo apt install \
@@ -41,7 +57,17 @@ python3 -m pip install flask-socketio
4157
sudo apt-get install python3-colcon*
4258
```
4359

44-
## Download the source code
60+
### Install rosdep
61+
62+
`rosdep` helps install dependencies for ROS packages across various distros. It can be installed with:
63+
64+
```bash
65+
sudo apt install python3-rosdep
66+
sudo rosdep init
67+
rosdep update
68+
```
69+
70+
### Download the source code
4571
Setup a new ROS 2 workspace and pull in the demo repositories using `vcs`,
4672

4773
```bash
@@ -57,7 +83,7 @@ cd ~/rmf_ws
5783
rosdep install --from-paths src --ignore-src --rosdistro galactic -yr
5884
```
5985

60-
## Compiling Instructions
86+
### Compiling Instructions
6187

6288
On `Ubuntu 20.04`:
6389

@@ -72,29 +98,32 @@ As a result, the first build can take a very long time depending on the server l
7298

7399
## Run RMF Demos
74100

75-
Demonstrations of RMF is shown in [rmf_demos](https://github.com/open-rmf/rmf_demos/)
101+
Demonstrations of OpenRMF are shown in [rmf_demos](https://github.com/open-rmf/rmf_demos/).
76102

77103
### Docker Containers
78104
Alternatively, you can run RMF Demos by using [docker](https://docs.docker.com/engine/install/ubuntu/).
79105

80106
Pull docker image from `open-rmf/rmf` github registry (setup refer [here](https://docs.github.com/en/free-pro-team@latest/packages/using-github-packages-with-your-projects-ecosystem/configuring-docker-for-use-with-github-packages#authenticating-with-a-personal-access-token)).
107+
81108
```bash
82-
docker pull docker.pkg.github.com/open-rmf/rmf/rmf_demos:latest
83-
docker tag docker.pkg.github.com/open-rmf/rmf/rmf_demos:latest rmf:latest
109+
docker pull ghcr.io/open-rmf/rmf/rmf_demos:latest
110+
docker tag ghcr.io/open-rmf/rmf/rmf_demos:latest rmf:latest
84111
```
85112

86113
Run it!
114+
87115
```bash
116+
88117
docker run -it --network host rmf:latest bash -c "export ROS_DOMAIN_ID=9; ros2 launch rmf_demos_gz office.launch.xml headless:=1"
89118
```
90-
This will run `rmf_demos` in headless mode. Open `localhost:5000` with a browser to start a task.
119+
This will run `rmf_demos` in headless mode. Open [this link](https://open-rmf.github.io/rmf-panel-js/) with a browser to start a task.
91120

92121
(Experimental) User can also run `rmf_demos` in “non-headless” graphical form, via [rocker](https://github.com/osrf/rocker).
93122

94123
## Roadmap
95124

96-
A near-term roadmap of the entire RMF project (including and beyond `rmf_traffic`) can be found in the user manual [here](https://osrf.github.io/ros2multirobotbook/roadmap.html).
125+
A near-term roadmap of the entire OpenRMF project (including and beyond `rmf_traffic`) can be found in the user manual [here](https://osrf.github.io/ros2multirobotbook/roadmap.html).
97126

98127
## Integrating with RMF
99128

100-
Instructions on how to integrate your system with RMF can be found [here](https://osrf.github.io/ros2multirobotbook/integration.html).
129+
Instructions on how to integrate your system with OpenRMF can be found [here](https://osrf.github.io/ros2multirobotbook/integration.html).

0 commit comments

Comments
 (0)