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

Markus Neteler neteler at osgeo.org
Fri Jun 23 03:33:26 PDT 2023


On Fri, Jun 23, 2023 at 10:38 AM Sebastiaan Couwenberg
<sebastic at xs4all.nl> wrote:
>
> 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

For that reason we  compile it when building the image:
https://github.com/OSGeo/grass/blob/51e962abbc1176211ad2c4cb7857a61a2b6d1c6f/docker/debian/Dockerfile#L104

> > 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.

If anyone wants to take over - I have no time to package that.

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

Like

RUN pip3 install grass-session  --break-system-packages

?

Best,
Markus


More information about the grass-dev mailing list