#!/bin/sh
# Copyright (C) 2023 Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
# This program is free software: you can redistribute it and/or modify
# it under the terms of the CC0 1.0 License.
# Maintainer: Parabola Hackers <dev@lists.parabola.nu>

cat  << EOF
The docker package was using, by default, the docker.io / docker hub
registry/repository which contained nonfree software and that had no
policies against that.

And since Parabola follows the Free System Distribution Guidelines
(FSDG)[1], it can't use or point to repositories with nonfree
software.

Because of that the default registry was changed to "localhost:5000".

Users that still want to use the docker.io / docker hub registry can
still do it manually but they are on their own for reviewing the
freedom of the software they download.

Due to a current limitation, users need to specify the docker.io
registry as registry-1.docker.io like that[2]:
$ sudo docker run \\
  -it --rm \\
  registry-1.docker.io/pureos/byzantium \\
  bash -c "echo hello world"

Also note that any changes to the docker (package) will only take
effect when the daemon is (re)started.

You can find more information on alternatives to Docker, research on
how to run your own (FSDG compliant) Docker registry, on how to make
docker images of various FSDG compliant distributions at the following
URLs:
- https://libreplanet.org/wiki/Group:Software/research/ExternalRepositories/DockerRegistries
- https://libreplanet.org/wiki/Group:Software/research/DistroExecutionEnvironments

We changed to localhost:5000 in order to also provide the ability for
users to provide compatibility with older commands by running their
local registry (and for instance bringing in some FSDG compliant
images that were hosted on docker.io / docker hub).

References:
-----------
[1]https://www.gnu.org/distros/free-system-distribution-guidelines.html
[2]At the time of writing, this PureOS image was made by Purism and is
   FSDG compliant because it's made only with PureOS[3] which is FSDG
   compliant[4]. The link[3] also points to ways of verifying that it
   has not been modified by docker hub, though users need to manually
   check that to be really sure.
[3]https://tracker.pureos.net/w/development/pureos_docker_images/
[4]https://www.gnu.org/distros/free-distros.html
EOF
