osrf / docker_images

A repository to hold definitions of docker images maintained by OSRF
Apache License 2.0
549 stars 169 forks source link

Problem with installing rviz2 in docker image ros:rolling #636

Closed hodnajit closed 2 years ago

hodnajit commented 2 years ago

Hi, I am facing issues in installing ros-rolling-rviz2 in the docker container based on ros:rolling image. It gives me this error with unment dependencies: I start docker via docker run -it --env="DISPLAY" -env="QT_X11_NO_MITSHM=1" --volume="/tmp/.X11-unix:/tmp/.X11-unix:rw" ros:rolling bash

And install ros-rolling-rviz2 inside the docker.

root@ff90dca19386:/# sudo apt update
...
...
root@ff90dca19386:/# sudo apt install ros-rolling-rviz2
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 libignition-math6-dev : Depends: libignition-cmake2-dev (>= 2.13.0) but 2.12.1-2~jammy is to be installed
E: Unable to correct problems, you have held broken packages.

Is it desired behaviour?

Thank you, Jitka

mikaelarguedas commented 2 years ago

@chapulina @j-rivero I can confirm that the deb on packages.ros.org of: libignition-math6-dev depends on libignition-cmake2-dev (>= 2.13.0):

``` root@7506be41bd7a:/# apt-cache show libignition-math6-dev Package: libignition-math6-dev Priority: extra Section: libdevel Installed-Size: 1393 Maintainer: Jose Luis Rivero Architecture: amd64 Source: ignition-math6 Version: 6.12.0-2~jammy Replaces: libignition-math-dev (<< 6.12.0-2~jammy) Provides: libignition-math-dev (= 6.12.0-2~jammy) Depends: libignition-math6 (= 6.12.0-2~jammy), libignition-cmake2-dev (>= 2.13.0) Breaks: libignition-math-dev (<< 6.12.0-2~jammy) Filename: pool/main/i/ignition-math6/libignition-math6-dev_6.12.0-2~jammy_amd64.deb SHA512: 57a533f1cf9d617f62e06c80abc146d0df7b19fc1aaf4c0d4ab933d111071ec896ccf62d7499e2a635fcaa1967d0dd2c1339037ef0c62a68fce76388102f49be Size: 142692 SHA256: 1f45c3d01769fe994274514fc34645c986b1c4b8469574bedc6f6685278ae710 SHA1: 9852a3981bf08d0856cbbf6d85fd887baf3be3c6 MD5sum: a68104f743da3d7bd048bb91781c4c8f Description: Gazebo Math Library - Development files A small, fast, and high performance math library. This library is a self-contained set of classes and functions suitable for robot applications. . Gazebo is a set of simple libraries that provide useful functionality to bootstrap robot applications. The included libraries encapsulate all the essentials, such as common math data types, console logging, 3D mesh management, and asynchronous message passing. Description-md5: da5c37fa254f8f06e29a1cf1e05c199d Homepage: https://github.com/gazebosim/gz-math Multi-Arch: same ```

but the version of libignition-cmake2-dev currently on the apt repo is incompatible: 2.12.1-2~jammy

``` root@7506be41bd7a:/# apt-cache show libignition-cmake2-dev Package: libignition-cmake2-dev Priority: optional Section: libdevel Installed-Size: 1980 Maintainer: Jose Luis Rivero Architecture: amd64 Source: ignition-cmake2 Version: 2.12.1-2~jammy Replaces: libignition-cmake-dev (<= 2.10.0-2) Provides: libignition-cmake-dev (= 2.12.1-2~jammy) Depends: cmake Breaks: libignition-cmake-dev (<= 2.10.0-2) Filename: pool/main/i/ignition-cmake2/libignition-cmake2-dev_2.12.1-2~jammy_amd64.deb SHA512: 82ceabf28f2d4abaad53b5a1a30dbb59261a0da264af0c30b44fc33ae80e1aac011c4df3d080a55e42e6e86cdf77688506e8b1bfdaa87d0ddacb511131b280f5 Size: 197812 SHA256: 6f040d2a530b4d67628b5892a2c0b31e381b0a3f270bb4853c4d9f4fcef08deb SHA1: 5555a869aec26d73cdc3822660f17141479b03e6 MD5sum: adc87d1d32c33f4a1e3491f0f61f0630 Description: Ignition Robotics CMake Library - Development files CMake modules to be used by the Ignition projects. . This package is required to build ignition projects, as well as to link your third party projects against them. It provides modules that are used to find dependencies of ignition projects and generate cmake targets for consumers of ignition projects to link against. Description-md5: 85c80471a8e6241d78f7cedda0245a6f Homepage: http://ignitionrobotics.org/ Multi-Arch: same ```
mikaelarguedas commented 2 years ago

cc @nuclearsandwich

chapulina commented 2 years ago

I'm not sure why apt-cache is showing that version, but the latest available version is 2.14.0:

$ apt list  | grep libignition-cmake2-dev
libignition-cmake2-dev/unknown 2.14.0-2~jammy amd64 [upgradable from: 2.13.0-1~jammy]
mikaelarguedas commented 2 years ago

most likely because ROS uses packages.ros.org and not packages.osrfoundation.org http://packages.ros.org/ros2/ubuntu/pool/main/i/ignition-cmake2/

chapulina commented 2 years ago

Should be fixed since https://github.com/ros-infrastructure/reprepro-updater/pull/165

mikaelarguedas commented 2 years ago

@hodnajit looks like a new version of the faulty package has been put on the repo in the last couple hours. Can you try again and report here if you still have the issue ?

hodnajit commented 2 years ago

Hi, thank you for your work. It works for install rviz2 now :) great

Unfortunately, I am facing unmet dependencies while installing ros-ign packages in this docker :/ is it valid behaviour?

Ex: ros-rolling-ros-ign-gazebo

root@6f85cfa86ef4:/# apt install ros-rolling-ros-ign-gazebo
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 libignition-gazebo6-dev : Depends: libignition-common4-av-dev (>= 4.5.1) but 4.5.0+osrf-1~jammy is to be installed
                           Depends: libignition-common4-profiler-dev (>= 4.5.1) but 4.5.0+osrf-1~jammy is to be installed
                           Depends: libignition-common4-events-dev (>= 4.5.1) but 4.5.0+osrf-1~jammy is to be installed
                           Depends: libignition-msgs8-dev (>= 8.5.0) but 8.4.0-1~jammy is to be installed
                           Depends: libignition-sensors6-dev (>= 6.6.0) but it is not going to be installed
                           Depends: libignition-rendering6-dev (>= 6.5.0) but it is not going to be installed
                           Depends: libignition-gazebo6 (= 6.10.0-1~jammy) but it is not going to be installed
                           Depends: libignition-gazebo6-plugins (= 6.10.0-1~jammy) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

or ros-rolling-ros-ign

root@6f85cfa86ef4:/# apt install ros-rolling-ros-ign
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 libignition-gazebo6-dev : Depends: libignition-common4-av-dev (>= 4.5.1) but 4.5.0+osrf-1~jammy is to be installed
                           Depends: libignition-common4-profiler-dev (>= 4.5.1) but 4.5.0+osrf-1~jammy is to be installed
                           Depends: libignition-common4-events-dev (>= 4.5.1) but 4.5.0+osrf-1~jammy is to be installed
                           Depends: libignition-msgs8-dev (>= 8.5.0) but 8.4.0-1~jammy is to be installed
                           Depends: libignition-sensors6-dev (>= 6.6.0) but it is not going to be installed
                           Depends: libignition-rendering6-dev (>= 6.5.0) but it is not going to be installed
                           Depends: libignition-gazebo6 (= 6.10.0-1~jammy) but it is not going to be installed
                           Depends: libignition-gazebo6-plugins (= 6.10.0-1~jammy) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
j-rivero commented 2 years ago

Unfortunately, I am facing unmet dependencies while installing ros-ign packages in this docker :/ is it valid behaviour?

Ex: ros-rolling-ros-ign-gazebo

Working on it https://github.com/ros-infrastructure/reprepro-updater/pull/166.

mikaelarguedas commented 2 years ago

my guess i that will be adressed by the work in progress of @j-rivero at https://github.com/ros-infrastructure/reprepro-updater/pull/166/files

hodnajit commented 2 years ago

Amazing! Thank you guys for your work :)

j-rivero commented 2 years ago

Amazing! Thank you guys for your work :)

You are welcome. This Mikael is the real superstar here,

mikaelarguedas commented 2 years ago

This Mikael is the real superstar here,

Just the middleman here, didnt actually do any work ;) but thanks!