Deal with breaking changes in repo2docker#

Repo2docker occasionally has to make breaking changes in how repositories are built.

Upgrade of base image from Ubuntu 18.04 to 22.04#

The base image used by repo2docker was upgraded from Ubuntu 18.04 to Ubuntu 22.04 in version 2023.10.0 due to Ubuntu 18.04 going out of support.

This is unlikely to affect you unless you are using apt.txt.

apt.txt installs packages from the official Ubuntu package repositories, and is intrinsically tied to the Ubuntu version. Many packages will be available in both Ubuntu 18.04 and Ubuntu 22.04, however some may be renamed (for example if multiple incompatible versions are available).

Some packages may be removed, or may not be compatible with the previous version. In this case you should see if your packages can be installed using a Conda environment.yml file using either the default conda-forge channel or in one of the many third-party channels.

Alternatively you can try installing the packages from source, using a postBuild script.

As a last resort you can install an older version of repo2docker locally, build your image, push it to a public container registry such as Docker Hub, GitHub Container Registry or, and replace your repository’s repo2docker configuration with a minimal Dockerfile containing just:

FROM <registry>/<username>/<image>:<tag>

This image will contain a frozen version of your repository at the time the image was built. You will need to rebuild and push it everytime your repository is modified.