├── README.md ├── .travis.yml └── install /README.md: -------------------------------------------------------------------------------- 1 | # rosme [![Build Status](https://travis-ci.org/linorobot/rosme.svg?branch=master)](https://travis-ci.org/linorobot/rosme) 2 | ROS installation files. This will automatically detect your Ubuntu Release and install a compatible ROS distro. 3 | 4 | Works on: 5 | - Ubuntu 14.04 - ROS Indigo 6 | - Ubuntu 16.04 - ROS Kinetic 7 | - Ubuntu 18.04 - ROS Melodic 8 | - Ubuntu 20.04 - ROS Noetic 9 | 10 | Installs ros-$DISTRO-base (barebones) on non X86 machines. 11 | 12 | Run: 13 | 14 | ``` 15 | ./install 16 | ``` 17 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | sudo: required 2 | language: generic 3 | 4 | matrix: 5 | include: 6 | - dist: xenial 7 | env: ROSDISTRO=kinetic 8 | os: linux 9 | arch: amd64 10 | 11 | - dist: xenial 12 | env: ROSDISTRO=kinetic 13 | os: linux 14 | arch: arm64 15 | 16 | - dist: bionic 17 | env: ROSDISTRO=melodic 18 | os: linux 19 | arch: amd64 20 | 21 | - dist: bionic 22 | env: ROSDISTRO=melodic 23 | os: linux 24 | arch: arm64 25 | 26 | branches: 27 | only: 28 | - master 29 | 30 | compiler: 31 | - gcc 32 | 33 | install: 34 | - cd 35 | - git clone https://github.com/linorobot/rosme 36 | - cd rosme 37 | - sudo ./install 38 | 39 | notifications: 40 | email: 41 | - jimenojmm@gmail.com 42 | -------------------------------------------------------------------------------- /install: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | set -e 4 | 5 | ARCH=$(uname -i) 6 | RELEASE=$(lsb_release -c -s) 7 | 8 | if [ $RELEASE == "trusty" ] 9 | then 10 | ROSDISTRO=indigo 11 | 12 | elif [ $RELEASE == "xenial" ] 13 | then 14 | ROSDISTRO=kinetic 15 | 16 | elif [ $RELEASE == "bionic" ] 17 | then 18 | ROSDISTRO=melodic 19 | elif [ $RELEASE == "focal" ] 20 | then 21 | ROSDISTRO=noetic 22 | else 23 | echo "There's no ROS Distro compatible for your platform" 24 | exit 1 25 | fi 26 | 27 | echo Installing ros-$ROSDISTRO 28 | 29 | sudo apt update 30 | sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list' 31 | wget http://packages.ros.org/ros.key -O - | sudo apt-key add - 32 | sudo apt -y update 33 | sudo apt -y install dpkg 34 | 35 | if [ $ARCH == "x86_64" ] 36 | then 37 | sudo apt -y install ros-$ROSDISTRO-desktop-full 38 | echo "Installing ROS-$ROSDISTRO Full Desktop Version" 39 | 40 | else 41 | sudo apt -y install ros-$ROSDISTRO-ros-base 42 | echo "Installing ROS-$ROSDISTRO Barebones" 43 | fi 44 | 45 | source /opt/ros/$ROSDISTRO/setup.bash 46 | echo "source /opt/ros/$ROSDISTRO/setup.bash" >> ~/.bashrc 47 | source ~/.bashrc 48 | 49 | if [ $ROSDISTRO == "noetic" ] 50 | then 51 | sudo apt install -y python3-rosdep python3-rosinstall python3-rosinstall-generator python3-wstool build-essential 52 | else 53 | sudo apt install -y python-rosdep python-rosinstall python-rosinstall-generator python-wstool build-essential 54 | sudo `which rosdep` init 55 | fi 56 | 57 | rosdep update 58 | 59 | rosdep install --default-yes --from-paths . --ignore-src --rosdistro $ROSDISTRO 60 | 61 | echo "" 62 | echo "ROS $(rosversion -d) Installation Done!" 63 | echo "You can create your catkin workspace now. https://wiki.ros.org/catkin/Tutorials/create_a_workspace" 64 | 65 | #rosdep fail 66 | #https://github.com/ros-infrastructure/rosdep/issues/322 67 | --------------------------------------------------------------------------------