Skip to content

Commit 40bf229

Browse files
clean up the conda/mamba/micromamba documentation and only keep micromamba
1 parent 82c4559 commit 40bf229

File tree

1 file changed

+70
-164
lines changed

1 file changed

+70
-164
lines changed

docs/GettingStarted.md

Lines changed: 70 additions & 164 deletions
Original file line numberDiff line numberDiff line change
@@ -3,120 +3,67 @@
33
RoboStack is a bundling of ROS for Linux, macOS and Windows using the [Conda package manager](https://docs.conda.io/en/latest/), based on top of [conda-forge](https://conda-forge.org/).
44
We have also extended support to the [Pixi](https://pixi.sh/latest/) package manager, which builds upon the foundations of, and maintains compatability with the Conda ecosystem. [Here](https://pixi.sh/dev/switching_from/conda/) is a comparison of how Pixi works when compared to Conda/Mamba.
55

6-
You can install Robostack using either Mamba or Pixi. We recommend using Pixi for any new installations.
7-
=== "Mamba"
8-
## Install Mamba
9-
To get started, you'll need a base conda installation. We recommend using the [`miniforge`](https://github.com/conda-forge/miniforge) installer.
6+
You can install Robostack using either Micromamba or Pixi. We recommend using Pixi for any new installations.
107

11-
To get started with conda (or mamba) as package managers, you need to have a base conda installation. Please do _not_ use the Anaconda installer, but rather start with [`miniforge`](https://github.com/conda-forge/miniforge) that is much more "minimal" installer. This installer will create a "base" environment that contains the package managers conda and mamba. After this installation is done, you can move on to the next steps.
12-
13-
When you already have a conda installation you can install mamba with:
8+
=== "Micromamba"
9+
## Install Micromamba
1410
```bash
15-
conda install mamba -c conda-forge
11+
"${SHELL}" <(curl -L micro.mamba.pm/install.sh)
1612
```
1713

18-
!!! warning "Do not install ROS packages in the `base` environment"
14+
For details, see the official [Micromamba Installation](https://mamba.readthedocs.io/en/latest/installation/micromamba-installation.html#automatic-install) instructions.
1915

20-
Make sure to _not_ install the ROS packages in your base environment as this leads to issues down the track. On the other hand, conda and mamba must not be installed in the `ros_env`, they should only be installed in base.
21-
22-
!!! warning "Do not source the system ROS environment"
23-
When there is an installation available of ros on the system, in non-conda environments, there will be interference with the environments as the `PYTHONPATH` set in the setup script conflicts with the conda environment.
16+
By default, the installer will set up `conda-forge`, the prefix location at `~/micromamba`, and initialise shell variables in your `~/.bashrc`. To undo the changes to your `~/.bashrc`, run:
17+
```bash
18+
micromamba shell deinit
19+
```
2420

25-
!!! warning "PowerShell is not supported"
21+
Once installed, you can update micromamba with:
22+
```bash
23+
micromamba self-update
24+
```
2625

27-
On Windows, Powershell is not supported, only the Command Prompt terminal is supported.
28-
29-
## Installing ros
30-
=== "Mamba"
26+
!!! important "Do not install ROS packages in the `base` environment"
27+
Make sure to _not_ install the ROS packages in your base environment as this leads to issues down the track. On the other hand, conda and mamba must not be installed in the `ros_env`, they should only be installed in base.
3128

32-
```bash title="Prepare an environment to use the correct channels"
33-
mamba create -n ros_env
34-
mamba activate ros_env
29+
!!! important "Do not source the system ROS environment"
30+
When there is an installation available of ROS on the system, in non-conda environments, there will be interference with the environments as the `PYTHONPATH` set in the setup script conflicts with the conda environment.
3531

36-
# this adds the conda-forge channel to the new created environment configuration
37-
conda config --env --add channels conda-forge
38-
# remove the defaults channel just in case, this might return an error if it is not in the list which is ok
39-
conda config --env --remove channels defaults
32+
## Installing ROS
33+
!!! note
34+
There are different channels depending on the version of ROS that you wish to install, to add these channels and install your desired version, you can run the following:
35+
=== "ROS 1 Noetic"
36+
```bash
37+
# Create a ros-noetic desktop environment
38+
micromamba create -n ros_env -c conda-forge -c robostack-noetic ros-noetic-desktop
4039
```
41-
!!! note
42-
There are different channels depending on the version of ROS that you wish to install, to add these channels and install your desired version, you can run the following:
43-
=== "ROS1 Noetic"
44-
```
45-
conda config --env --add channels robostack-noetic
46-
mamba install ros-noetic-desktop
47-
```
48-
=== "ROS2 Humble"
49-
```
50-
conda config --env --add channels robostack-humble
51-
mamba install ros-humble-desktop
52-
```
53-
=== "ROS2 Jazzy"
54-
```
55-
conda config --env --add channels robostack-jazzy
56-
mamba install ros-jazzy-desktop
57-
```
58-
59-
=== "ROS2 Kilted"
60-
```
61-
conda config --env --add channels robostack-kilted
62-
mamba install ros-kilted-desktop
63-
```
64-
65-
```bash title="Deactivate and reactivate the environment to initialize the configured ROS environment"
66-
mamba deactivate
67-
mamba activate ros_env
40+
=== "ROS 2 Humble"
41+
```bash
42+
# Create a ros-humble desktop environment
43+
micromamba create -n ros_env -c conda-forge -c robostack-humble ros-humble-desktop
44+
```
45+
=== "ROS 2 Jazzy"
46+
```bash
47+
# Create a ros-jazzy desktop environment
48+
micromamba create -n ros_env -c conda-forge -c robostack-jazzy ros-jazzy-desktop
6849
```
6950

70-
=== "Micromamba"
71-
72-
When you only have micromamba available use the following commands:
73-
74-
=== "ROS1 Noetic"
75-
```
76-
# Create a ros-noetic desktop environment
77-
micromamba create -n ros_env -c conda-forge -c robostack-noetic ros-noetic-desktop
78-
79-
# Activate the environment
80-
micromamba activate ros_env
81-
```
82-
=== "ROS2 Humble"
83-
```
84-
# Create a ros-humble desktop environment
85-
micromamba create -n ros_env -c conda-forge -c robostack-humble ros-humble-desktop
86-
87-
# Activate the environment
88-
micromamba activate ros_env
89-
```
90-
=== "ROS2 Jazzy"
91-
```
92-
# Create a ros-jazzy desktop environment
93-
micromamba create -n ros_env -c conda-forge -c robostack-jazzy ros-jazzy-desktop
94-
95-
# Activate the environment
96-
micromamba activate ros_env
97-
```
98-
99-
=== "ROS2 Kilted"
100-
```
101-
# Create a ros-kilted desktop environment
102-
micromamba create -n ros_env -c conda-forge -c robostack-kilted ros-kilted-desktop
103-
104-
# Activate the environment
105-
micromamba activate ros_env
106-
```
107-
108-
## Installing tools for local development
109-
=== "Mamba"
110-
111-
```bash title="Default tools to help with local development of ROS packages"
112-
mamba install compilers cmake pkg-config make ninja colcon-common-extensions catkin_tools rosdep
51+
=== "ROS 2 Kilted"
52+
```bash
53+
# Create a ros-kilted desktop environment
54+
micromamba create -n ros_env -c conda-forge -c robostack-kilted ros-kilted-desktop
11355
```
11456

115-
=== "Micromamba"
57+
```bash
58+
# Activate the environment
59+
micromamba activate ros_env
60+
```
11661

117-
```bash title="Default tools to help with local development of ROS packages"
118-
micromamba install -c conda-forge compilers cmake pkg-config make ninja colcon-common-extensions catkin_tools rosdep
119-
```
62+
## Installing tools for local development
63+
```bash title="Default tools to help with local development of ROS packages"
64+
micromamba activate ros_env
65+
micromamba install -c conda-forge compilers cmake pkg-config make ninja colcon-common-extensions catkin_tools rosdep
66+
```
12067

12168
!!! tip "Developing on Windows"
12269
- Windows users also need Visual Studio 2022 with C++ support
@@ -155,7 +102,7 @@ You can install Robostack using either Mamba or Pixi. We recommend using Pixi fo
155102
!!! note
156103
After installation, you may need to restart your terminal for the `pixi` command to be available.
157104

158-
!!! warning "Do not source the system ROS environment"
105+
!!! important "Do not source the system ROS environment"
159106
When there is an installation available of ROS on the system, in non-conda environments, there will be interference with the environments as the `PYTHONPATH` set in the setup script conflicts with the conda environment.
160107

161108

@@ -269,84 +216,43 @@ After installation, you should test if you are able to run `rviz`/`rviz2` and ot
269216
!!! note "Reminder"
270217
The ROS environment activation is included automatically. There is no need to add a `source` command in the `~/.bashrc`
271218

272-
=== "Mamba"
273-
=== "Mamba"
274-
275-
**ROS 1**
276-
```bash title="First terminal"
277-
mamba activate ros_env
278-
roscore
279-
```
280-
281-
```bash title="Second terminal"
282-
mamba activate ros_env
283-
rviz
284-
```
285-
286-
**ROS 2**
287-
!!! note
288-
289-
ROS 2 has the benefit of not needing a `roscore`, so only a single terminal is needed to run a tool.
290-
291-
```bash title="Terminal"
292-
mamba activate ros_env
293-
rviz2
294-
```
295-
296-
=== "Micromamba"
297-
298-
**ROS 1**
299-
```bash title="First terminal"
300-
micromamba activate ros_env
301-
roscore
302-
```
303-
304-
```bash title="Second terminal"
305-
micromamba activate ros_env
306-
rviz
307-
```
219+
=== "Micromamba"
220+
**ROS 1**
221+
```bash title="First terminal"
222+
micromamba activate ros_env
223+
roscore
224+
```
308225

309-
**ROS 2**
310-
!!! note
226+
```bash title="Second terminal"
227+
micromamba activate ros_env
228+
rviz
229+
```
311230

312-
ROS 2 has the benefit of not needing a `roscore`, so only a single terminal is needed to run a tool.
231+
**ROS 2**
232+
!!! note
233+
ROS 2 has the benefit of not needing a `roscore`, so only a single terminal is needed to run a tool.
313234

314-
```bash title="Terminal"
315-
micromamba activate ros_env
316-
rviz2
317-
```
235+
```bash title="Terminal"
236+
micromamba activate ros_env
237+
rviz2
238+
```
318239

319240
If you run into any issues or for any frequently asked questions, you can check the [FAQ page](https://robostack.github.io/FAQ.html)
320241

321242
## Updating
322243
Updating all packages in your environment is as easy as:
323244

324-
=== "Mamba"
325-
326-
```bash
327-
mamba update --all
328-
```
329-
330-
=== "Micromamba"
331-
332-
```bash
333-
micromamba update --all
334-
```
245+
```bash
246+
micromamba update --all
247+
```
335248

336249
## Deactivating
337250
The (de)activation of the ros workspace goes in together with the conda environment. So running the corresponding (de)activation command will also (un)source the ros environment.
338251

339-
=== "Mamba"
340-
341-
```bash
342-
mamba deactivate
343-
```
344-
345-
=== "Micromamba"
252+
```bash
253+
micromamba deactivate
254+
```
346255

347-
```bash
348-
micromamba deactivate
349-
```
350256
=== "Pixi"
351257

352258
!!! note

0 commit comments

Comments
 (0)