[GRASS-dev] [release planning] GRASS GIS 8.3.0

Sebastiaan Couwenberg sebastic at xs4all.nl
Fri Jun 23 01:38:18 PDT 2023


On 6/23/23 10:31, Markus Neteler wrote:
> diff --git a/docker/debian/Dockerfile b/docker/debian/Dockerfile
> index 66134a2f67..d697738633 100644
> --- a/docker/debian/Dockerfile
> +++ b/docker/debian/Dockerfile
> @@ -1,5 +1,5 @@
>   FROM debian:stable
> -# currently Debian 11
> +# currently Debian 12
> 
>   # docker run -it --rm debian:stable bash
>   # apt-get update && apt-get install lsb-release -y && lsb_release -a
> @@ -11,7 +11,7 @@ ENV DEBIAN_FRONTEND noninteractive
> 
>   # define versions to be used (PDAL is not available on Debian, so we
> compile it here)
>   # https://github.com/PDAL/PDAL/releases
> -ARG PDAL_VERSION=2.4.3
> +ARG PDAL_VERSION=2.5.5

There is no PDAL in bookworm:

  https://tracker.debian.org/pkg/pdal

> STEP 48/59: RUN pip3 install grass-session
> error: externally-managed-environment
> 
> × This environment is externally managed
> ╰─> To install Python packages system-wide, try apt install
>      python3-xyz, where xyz is the package you are trying to
>      install.
> 
>      If you wish to install a non-Debian-packaged Python package,
>      create a virtual environment using python3 -m venv path/to/venv.
>      Then use path/to/venv/bin/python and path/to/venv/bin/pip. Make
>      sure you have python3-full installed.
> 
>      If you wish to install a non-Debian packaged Python application,
>      it may be easiest to use pipx install xyz, which will manage a
>      virtual environment for you. Make sure you have pipx installed.
> 
>      See /usr/share/doc/python3.11/README.venv for more information.
> 
> note: If you believe this is a mistake, please contact your Python
> installation or OS distribution provider. You can override this, at
> the risk of breaking your Python installation or OS, by passing
> --break-system-packages.
> hint: See PEP 668 for the detailed specification.
> Error: building at STEP "RUN pip3 install grass-session": while
> running runtime: exit status 1
> 
> What is the best practice for Debian Dockerfiles here? A venv doesn't
> make sense in this context.

The best option is to package all Python modules and install those.

For CI containers you can break the system packages as suggested.

Kind Regards,

Bas

-- 
  GPG Key ID: 4096R/6750F10AE88D4AF1
Fingerprint: 8182 DE41 7056 408D 6146  50D1 6750 F10A E88D 4AF1



More information about the grass-dev mailing list