GithubHelp home page GithubHelp logo

ros-noetic's Introduction

RoboStack (for ROS Noetic)

Conda Gitter GitHub Repo stars QUT Centre for Robotics

Platforms Azure DevOps builds (branch) Azure DevOps builds (branch) Azure DevOps builds (branch) Azure DevOps builds (branch)

GitHub issues GitHub closed issues GitHub pull requests GitHub closed pull requests

Table with all available packages & architectures

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 Noetic without any issues. As no system libraries are used, you can also easily install ROS Noetic 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 blog post with more information.

Installation

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 / mambaforge or miniconda, which are much more "minimal" installers. These installers will create a "base" environment that contains the package managers conda (and mamba if you go with mambaforge). After this installation is done, you can move on to the next steps.

Note: Make sure to not install the ROS packages (in particular the ros-noetic-catkin package) in your base environment as this leads to issues down the track. Also do not source the system ROS environment, as the PYTHONPATH set in the setup script conflicts with the conda environment.

conda create -n robostackenv python=3.8
conda activate robostackenv
# this adds the conda-forge channel to your persistent configuration in ~/.condarc
conda config --add channels conda-forge
# and the robostack channel
conda config --add channels robostack
# it's very much advised to use strict channel priority
conda config --set channel_priority strict

# either
conda install ros-noetic-desktop
# or if you have mamba and want to use it
mamba install ros-noetic-desktop

# optionally, install some compiler packages if you want to e.g. build packages in a catkin_ws - with conda:
conda install compilers cmake pkg-config make ninja catkin_tools
# or with mamba:
mamba install compilers cmake pkg-config make ninja catkin_tools

# on Windows, install the Visual Studio command prompt via Conda:
conda install vs2019_win-64

# note that in this case, you should also install the necessary dependencies with conda/mamba, if possible

# reload environment to activate required scripts before running anything
# on Windows, please restart the Anaconda Prompt / Command Prompt!
conda deactivate
conda activate robostackenv

Note: at the moment on Windows only the Command Prompt terminal is supported, while Powershell is not supported.

Reporting issues

Feel free to open issues in this repository's issue tracker (please check whether your problem is already listed there before opening a new issue) or come around on Gitter to have a chat / ask questions. Please note that this repository is not an official distribution of ROS and relies on volunteers. It is further highly experimental - unfortunately things might not work immediately out-of-the-box, although we try our best.

Contributing

This project is in early stages and we are looking for contributors to help it grow. Please see CONTRIBUTING.md for ways to contribute.

ros-noetic's People

Contributors

tobias-fischer avatar wolfv avatar stevencolinmartin avatar traversaro avatar petermitrano avatar mlaves avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.