Skip to content

Commit dfcb65a

Browse files
[ros*-setup] Migrate to new APT source pkg (#470)
2 parents db11060 + 379f197 commit dfcb65a

File tree

6 files changed

+98
-17
lines changed

6 files changed

+98
-17
lines changed

networking/install.bash

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
#! /usr/bin/env bash
22

3-
# shellcheck disable=SC1091
4-
. /etc/os-release
5-
if [ "$UBUNTU_CODENAME" == "xenial" ]
3+
if [ "$(lsb-release -cs)" == "xenial" ]
64
then
75
# Install config file (mdns4_minimal is normally missing in xenial and should be present)
86

ros1-setup/install.bash

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
#! /usr/bin/env bash
2+
3+
if [[ -f /etc/apt/sources.list.d/ros.list ]]
4+
then
5+
tue-install-echo "Removing the old ROS apt sources"
6+
tue-install-pipe sudo rm -f /etc/apt/sources.list.d/ros.list* || tue-install-error "Failed to remove old ROS apt sources"
7+
else
8+
tue-install-debug "Old ROS APT sources do not exist"
9+
fi
10+
11+
ubuntu_name=$(lsb_release -cs)
12+
13+
# Check whether universe is enabled
14+
if ! grep -h ^deb /etc/apt/sources.list 2>/dev/null | grep "${ubuntu_name} universe" -q
15+
then
16+
tue-install-echo "Enabling universe repository"
17+
tue-install-pipe sudo add-apt-repository universe || tue-install-error "Failed to enable universe repository"
18+
tue-install-apt-get-update
19+
else
20+
tue-install-debug "Universe repository is already enabled"
21+
fi
22+
23+
ros_apt_source_pkg_name="ros-apt-source"
24+
25+
installed_version=$(dpkg -s ${ros_apt_source_pkg_name} 2>/dev/null | grep -F "Version" | awk '{print $2}')
26+
newest_version=$(curl -s https://api.github.com/repos/ros-infrastructure/ros-apt-source/releases/latest | grep -F "tag_name" | awk -F\" '{print $4}')
27+
needs_install=true
28+
if [[ -n ${installed_version} ]]
29+
then
30+
if [[ ${installed_version} == "${newest_version}~${ubuntu_name}" ]]
31+
then
32+
tue-install-debug "The most recent version of '${ros_apt_source_pkg_name}' is already installed '${installed_version}'"
33+
needs_install=false
34+
else
35+
tue-install-debug "Newer version, '${newest_version}', of '${ros_apt_source_pkg_name}' available, currently installed: '${installed_version}'"
36+
fi
37+
else
38+
tue-install-debug "No version of '${ros_apt_source_pkg_name}' installed"
39+
fi
40+
41+
if [[ ${needs_install} == true ]]
42+
then
43+
tue-install-debug "Going to install ${ros_apt_source_pkg_name}"
44+
tue-install-pipe curl -L -o /tmp/${ros_apt_source_pkg_name}.deb "https://github.com/ros-infrastructure/ros-apt-source/releases/download/${newest_version}/${ros_apt_source_pkg_name}_${newest_version}.${ubuntu_name}_all.deb" || tue-install-error "Failed to download ROS apt source debian"
45+
tue-install-dpkg /tmp/${ros_apt_source_pkg_name}.deb
46+
fi
47+

ros1-setup/install.yaml

Lines changed: 0 additions & 7 deletions
This file was deleted.

ros1/setup

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,3 +20,6 @@ fi
2020
# shellcheck disable=SC2016
2121
ROSCONSOLE_FORMAT='[${severity}][${node}][${time}]: ${message}'
2222
export ROSCONSOLE_FORMAT
23+
24+
DISABLE_ROS1_EOL_WARNINGS=true
25+
export DISABLE_ROS1_EOL_WARNINGS

ros2-setup/install.bash

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
#! /usr/bin/env bash
2+
3+
if [[ -f /etc/apt/sources.list.d/ros2.list ]]
4+
then
5+
tue-install-echo "Removing the old ROS2 apt sources"
6+
tue-install-pipe sudo rm -f /etc/apt/sources.list.d/ros2.list* || tue-install-error "Failed to remove old ROS2 apt sources"
7+
else
8+
tue-install-debug "Old ROS2 apt sources do not exist"
9+
fi
10+
11+
ubuntu_name=$(lsb_release -cs)
12+
13+
# Check whether universe is enabled
14+
if ! grep -h ^deb /etc/apt/sources.list 2>/dev/null | grep "${ubuntu_name} universe" -q
15+
then
16+
tue-install-echo "Enabling universe repository"
17+
tue-install-pipe sudo add-apt-repository universe || tue-install-error "Failed to enable universe repository"
18+
tue-install-apt-get-update
19+
else
20+
tue-install-debug "Universe repository is already enabled"
21+
fi
22+
23+
ros_apt_source_pkg_name="ros2-apt-source"
24+
25+
installed_version=$(dpkg -s ${ros_apt_source_pkg_name} 2>/dev/null | grep -F "Version" | awk '{print $2}')
26+
newest_version=$(curl -s https://api.github.com/repos/ros-infrastructure/ros-apt-source/releases/latest | grep -F "tag_name" | awk -F\" '{print $4}')
27+
needs_install=true
28+
if [[ -n ${installed_version} ]]
29+
then
30+
if [[ ${installed_version} == "${newest_version}~${ubuntu_name}" ]]
31+
then
32+
tue-install-debug "The most recent version of '${ros_apt_source_pkg_name}' is already installed '${installed_version}'"
33+
needs_install=false
34+
else
35+
tue-install-debug "Newer version, '${newest_version}', of '${ros_apt_source_pkg_name}' available, currently installed: '${installed_version}'"
36+
fi
37+
else
38+
tue-install-debug "No version of '${ros_apt_source_pkg_name}' installed"
39+
fi
40+
41+
if [[ ${needs_install} == true ]]
42+
then
43+
tue-install-debug "Going to install ${ros_apt_source_pkg_name}"
44+
tue-install-pipe curl -L -o /tmp/${ros_apt_source_pkg_name}.deb "https://github.com/ros-infrastructure/ros-apt-source/releases/download/${newest_version}/${ros_apt_source_pkg_name}_${newest_version}.${ubuntu_name}_all.deb" || tue-install-error "Failed to download ROS2 apt source debian"
45+
tue-install-dpkg /tmp/${ros_apt_source_pkg_name}.deb
46+
fi
47+

ros2-setup/install.yaml

Lines changed: 0 additions & 7 deletions
This file was deleted.

0 commit comments

Comments
 (0)