Fixes <https://bugs.gnu.org/40368>.
Reported by Pierre Neidhardt <mail@ambrevar.xyz>.
* gnu/packages/docker.scm (docker)[configure]: Provide version string.
[install]: Install versioned binary.
* gnu/packages/patches/docker-adjust-tests-for-changes-in-go.patch: New file.
* gnu/local.mk (dist_patch_DATA): Use this.
* gnu/packages/docker.scm (docker): Use this.
* gnu/packages/python-xyz.scm (python-jsonschema-2.6):
New old public variable.
* gnu/packages/docker.scm (docker-compose)[inputs]:
Add python-docker-pycreds and use python-jsonschema-2.6.
* gnu/packages/docker.scm (docker)[inputs]: Add docker-libnetwork-cmd-proxy.
* gnu/packages/docker.scm (docker)[phases]{patch-paths}: Patch proxy.go to
refer to the docker-proxy binary by its absolute path.
This change halves the time needed to patch the paths.
* gnu/packages/docker.scm (docker)[phases]{patch-paths}: Allow passing
multiple SOURCE-TEXT, PACKAGE and RELATIVE-PATH tuples so that the rewrite
rules can be generated and processed by a single use of the SUBSTITUTE*
macro. Rename SUBSTITUTE-LOOKPATH to SUBSTITUTE-LOOKPATH* and
substitute-Command to SUBSTITUTE-COMMAND* to denote the change. Adapt the
uses of SUBSTITUTE-LOOKPATH* and SUBSTITUTE-COMMAND*.
* gnu/packages/docker.scm (docker)[phases]: Move implementation detail inside
the SUBSTITUTE-LOOKPATH and SUBSTITUTE-COMMAND macros definition, so that the
relative path argument can be given as a relative path.
* gnu/packages/docker.scm (docker)[phases]: In the patch-paths phase, update
the regexes used by SUBSTITUTE-LOOKPATH and SUBSTITUTE-COMMAND to match at the
start of the word, like it's done later.
Fixes <https://bugs.gnu.org/34333>.
Reported by Allan Adair <allan@adair.io>.
* gnu/packages/patches/docker-use-fewer-modprobes.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/docker.scm (docker)[source]: Use it.
This basically changes (guix build-system go) so that instead of looking
up its dependencies in a list of directories in $GOPATH, all the
Go dependencies are symlinked into a single directory.
Fixes <https://bugs.gnu.org/33620>.
* guix/build/go-build-system.scm (setup-go-environment): New variable.
(setup-environment, install-source): Remove variables.
(unpack): Unpack the source relative to $GOPATH.
(install): Do not install the compiled objects in the 'pkg' directory.
Install the source code in this phase, and only install the source of
the package named by IMPORT-PATH.
* doc/guix.texi (Build Systems): Adjust accordingly.
* gnu/packages/docker.scm (docker): Import (guix build union) on the build side
and adjust to build phase name changes in (guix build-system go).
* gnu/packages/shellutils.scm (direnv): Likewise.
* gnu/packages/databases.scm (mongo-tools)[arguments]:
Set '#:install-source #f'.
* gnu/packages/music.scm (demlo)[arguments]: Move the 'install-scripts'
phase after the 'install' phase.
* gnu/packages/docker.scm (%docker-version, docker, docker-cli): Update to
18.09.2.
(docker)[arguments]: Adjust to the Debian-specific 'iptables-legacy' lookup in
the 'patch-paths' phase.