diff --git a/doc/pip_and_pep_668.rst b/doc/pip_and_pep_668.rst index fd7dfed32..e43d11340 100644 --- a/doc/pip_and_pep_668.rst +++ b/doc/pip_and_pep_668.rst @@ -3,7 +3,7 @@ Pip installation after PEP 668 `PEP-668`_ introduced `externally managed environments `_ to Python packaging. -``rosdep`` is designed to use pip as an alternative system package manager, rosdep installation of pip packages requires installing packages globally as root. +rosdep is designed to use pip as an alternative system package manager, rosdep installation of pip packages requires installing packages globally as root. Starting with Python 3.11, `PEP-668`_ compliance requires you to allow pip to install alongside externally managed packages using the ``break-system-packages`` option. There are multiple ways to configure pip so that rosdep will succeed. @@ -18,7 +18,7 @@ Setting environment variables in your login profile, ``PIP_BREAK_SYSTEM_PACKAGES The value of the environment variable can be any of ``1``, ``yes``, or ``true``. The string values are not case sensitive. -``rosdep`` is designed to use ``sudo`` in order to gain root privileges for installation when not run as root. +rosdep is designed to use ``sudo`` in order to gain root privileges for installation when not run as root. If your system's sudo configuration prohibits the passing of environment variables @@ -44,7 +44,7 @@ Configuring for CI setup Either environment variables or configuration files can be used with your CI system. Which one you choose will depend on how your CI environment is configured. -Perhaps the most straightforward will be to set the environent variable in the shell or script execution context before invoking rosdep. +Perhaps the most straightforward will be to set the environent variable in the shell or script execution context before invoking ``rosdep``. .. code-block:: bash @@ -52,7 +52,7 @@ Perhaps the most straightforward will be to set the environent variable in the s rosdep update PIP_BREAK_SYSTEM_PACKAGES=1 rosdep install -r rolling --from-paths src/ -If rosdep is invoked by internal processes in your CI and you need to set the configuration without having direct control over how ``rosdep install`` is run, setting the environment variable globally would also work. +If ``rosdep`` is invoked by internal processes in your CI and you need to set the configuration without having direct control over how ``rosdep install`` is run, setting the environment variable globally would also work. .. code-block:: bash