ros-tooling / cross_compile

A tool to build ROS and ROS2 workspaces for various targets
Apache License 2.0
188 stars 60 forks source link

rosdep get stuck because of console input for some packages #281

Closed olivier-haddad closed 3 years ago

olivier-haddad commented 3 years ago

Description

Some packages require the keyboard-configuration package and rosdep gets stuck while waiting for keyboard selection from user.

Expected Behavior

The script shouldn't prompt the user.

Actual Behavior

rosdep gets stuck while waiting for keyboard selection from user and shows the following: `Setting up keyboard-configuration (1.108ubuntu15.5) ... debconf: unable to initialize frontend: Dialog debconf: (Dialog frontend will not work on a dumb terminal, an emacs shell buffer, or without a controlling terminal.) debconf: falling back to frontend: Readline Configuring keyboard-configuration

The layout of keyboards varies per country, with some countries having multiple common layouts. Please select the country of origin for the keyboard of this computer.

Country of origin for the keyboard: `

To Reproduce

** Steps to reproduce the behavior, e.g.

  1. In your workspace, create a package the requires keyboard-configuration. In my case the problematic package includes a reference to 'ros-foxy-pcl-conversions' and 'ros-foxy-rclcpp-components'. I don't even know which is the culprit.
  2. launch the cross_compilation
  3. In my case after about 10mn, the process get stucks during rosdep install waiting for keyboard selection.

System (please complete the following information)

Additional context

Add any other context about the problem here I fixed the problem by modifying the "sysroot.Dockerfile" (my version is attached). I changed: RUN apt-get update && \ ./install_rosdeps.sh && \ rm -rf /var/lib/apt/lists/* into: RUN export DEBIAN_FRONTEND=noninteractive && apt-get update && \ ./install_rosdeps.sh && \ rm -rf /var/lib/apt/lists/*

emersonknapp commented 3 years ago

Thank you for reporting this! Your suggested fix looks fine, a PR would be welcome.