Currently it's easy for users to skip the per-distro installation steps,
since direct download links for our packages are presented first. This
can lead to unnecessary frustration, since DD will not install if
pre-requisite steps are not followed. So instead of presenting package
download links in the most prominent spot, point users to per-distro
installation instructions.
Signed-off-by: Piotr Stankiewicz <piotr.stankiewicz@docker.com>
The previous instructions fixed situations where the directory
and file didn't exist, but had some issues remaining;
The `>>` _appends_ the content to the file; this would work if the file didn't
exist (before `touch`'ing it) but if there happened to be a file already, it
would append the content to the existing file, resulting in invalid JSON.
e.g. running it twice (which may be accidentally);
```bash
sudo echo '{"allowedOrgs":["myorg"]}' >> "/Library/Application Support/com.docker.docker/registry.json"
sudo echo '{"allowedOrgs":["myorg"]}' >> "/Library/Application Support/com.docker.docker/registry.json"
```
Would result in;
```bash
sudo cat "/Library/Application Support/com.docker.docker/registry.json"
{"allowedOrgs":["myorg"]}
{"allowedOrgs":["myorg"]}
```
(which is invalid JSON)
The `sudo echo` also had some issues; the `sudo` only applied to the `echo`, and
not to the piped output (see https://unix.stackexchange.com/questions/1416/redirecting-stdout-to-a-file-you-dont-have-write-permission-on);
```bash
$ sudo touch "/Library/Application Support/com.docker.docker/registry.json"
$ sudo echo '{"allowedOrgs":["myorg"]}' > "/Library/Application Support/com.docker.docker/registry.json"
bash: /Library/Application Support/com.docker.docker/registry.json: Permission denied
```
Instead, using `tee` to run as privileged process, similar to the approach taken
in c33d39a7ba/engine/install/debian.md (L106)
With that, the `touch` wouldn't be needed (the `mkdir` still would though);
```suggestion
$ sudo mkdir -p "/Library/Application Support/com.docker.docker"
$ echo '{"allowedOrgs":["myorg"]}' | sudo tee "/Library/Application Support/com.docker.docker/registry.json"
```
The new instructions will always overwrite the content with the new content,
replacing what's already there (that may need a small warning / note though) to
prevent the invalid JSON if someone runs the command multiple times, or if they
have to update the existing config with a new one.
Finally, some verification steps were added to verify content and permissions.
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>