New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
docker & docker-machine-xhyve: enable darwin support #31737
Conversation
For the heck of it, could you (outside this PR) try Docker v17.11.0-ce-rc4 ? |
@NeQuissimus sure, why not :) |
@NeQuissimus The darwin build for |
No, no worries, I just wanted to make sure since I usually only test Docker on Linux when I update |
@GrahamcOfBorg build docker |
bd20383
to
1b5b157
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Failure for system: x86_64-linux
a) For `nixos-rebuild` you can set
{ nixpkgs.config.allowBroken = true; }
in configuration.nix to override this.
b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
{ allowBroken = true; }
to ~/.config/nixpkgs/config.nix.
(use ‘--show-trace’ to show detailed location information)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Failure for system: x86_64-darwin
a) For `nixos-rebuild` you can set
{ nixpkgs.config.allowBroken = true; }
in configuration.nix to override this.
b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
{ allowBroken = true; }
to ~/.config/nixpkgs/config.nix.
(use ‘--show-trace’ to show detailed location information)
@grahamc What happened to the borg here? |
I just re-triggered evaluation checking again. Are you wondering about the build results or the eval results? |
Docker should not be marked as broken... |
It turns out all the errors here are from the same problem. something about this PR makes this happen:
|
Oh! Could we get @GrahamcOfBorg to output this info somehow? |
I've been thinking through this a bit. I think yes, I'm a bit worried about sharing secrets about hosts but I think with our Hydra-like safeguards, we should be OK to share them. Actually doing so is another thing. Can you open an issue on grahamc/ofborg ? |
@NeQuissimus Packaging |
@grahamc Can anybody call for Grahamcofborg to build our PR or maintainers only? |
@GrahamcOfBorg build docker |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Failure for system: x86_64-darwin
a) For `nixos-rebuild` you can set
{ nixpkgs.config.allowBroken = true; }
in configuration.nix to override this.
b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
{ allowBroken = true; }
to ~/.config/nixpkgs/config.nix.
(use ‘--show-trace’ to show detailed location information)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Failure for system: x86_64-linux
a) For `nixos-rebuild` you can set
{ nixpkgs.config.allowBroken = true; }
in configuration.nix to override this.
b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
{ allowBroken = true; }
to ~/.config/nixpkgs/config.nix.
(use ‘--show-trace’ to show detailed location information)
@periklis only about 10 people can call it right now. We're working on making it a wider group though! |
Note, though, that it doesn't make sense that Docker is broken on Linux here. Something is wrong with this PR. |
@grahamc Sure it doesn't make sense to merge something broken. However, if borg is not giving me an useful error message, could somebody put a simple jobset on hydra to find the issue? |
I've posted the error message, and the bot has posted the same error message, also see the "Details" link next to "eval-nixos-options" (this is new as of Yesterday.) Hydra won't tell us more, unfortunately. |
@periklis This is literally all we have to go on: (Docker definitely builds on master, not with this PR; I just tried both) λ nix-build -A docker --show-trace
error: while evaluating the attribute ‘docker_17_09’ at /home/nequi/dev/nixpkgs/pkgs/applications/virtualization/docker/default.nix:200:3:
while evaluating ‘dockerGen’ at /home/nequi/dev/nixpkgs/pkgs/applications/virtualization/docker/default.nix:11:15, called from /home/nequi/dev/nixpkgs/pkgs/applications/virtualization/docker/default.nix:200:18:
while evaluating ‘mkDerivation’ at /home/nequi/dev/nixpkgs/pkgs/stdenv/generic/make-derivation.nix:15:5, called from /home/nequi/dev/nixpkgs/pkgs/applications/virtualization/docker/default.nix:16:7:
while evaluating ‘addPassthru’ at /home/nequi/dev/nixpkgs/lib/customisation.nix:135:22, called from /home/nequi/dev/nixpkgs/pkgs/stdenv/generic/make-derivation.nix:166:7:
while evaluating anonymous function at /home/nequi/dev/nixpkgs/pkgs/stdenv/generic/check-meta.nix:5:1, called from /home/nequi/dev/nixpkgs/pkgs/stdenv/generic/make-derivation.nix:167:22:
while evaluating ‘throwEvalHelp’ at /home/nequi/dev/nixpkgs/pkgs/stdenv/generic/check-meta.nix:128:19, called from /home/nequi/dev/nixpkgs/pkgs/stdenv/generic/check-meta.nix:194:17:
Package ‘docker-17.09.0-ce’ in /home/nequi/dev/nixpkgs/pkgs/applications/virtualization/docker/default.nix:190 is not supported on ‘x86_64-linux’, refusing to evaluate.
a) For `nixos-rebuild` you can set
{ nixpkgs.config.allowBroken = true; }
in configuration.nix to override this.
b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
{ allowBroken = true; }
to ~/.config/nixpkgs/config.nix. |
1b5b157
to
594ad44
Compare
@periklis I am still getting the same error |
594ad44
to
73c9152
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I suspect you have allowBroken = true;
in your config.nix that hides the meta problem on your machine. In that case you can use --argstr config {}
or :a import <nixpkgs> { config = {}; }
in nix-repl for testing to make sure your local config/overrides don't influence the results.
maintainers = with maintainers; [ nequissimus offline tailhook vdemeester ]; | ||
platforms = platforms.linux; | ||
maintainers = with maintainers; [ nequissimus offline tailhook vdemeester periklis ]; | ||
platforms = with platforms; [ linux darwin ]; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this is causing the evaluation errors, things in stdenv.lib.platforms
are already lists because some attributes contain multiple architectures.
@GrahamcOfBorg build docker |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Failure for system: x86_64-linux
a) For `nixos-rebuild` you can set
{ nixpkgs.config.allowBroken = true; }
in configuration.nix to override this.
b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
{ allowBroken = true; }
to ~/.config/nixpkgs/config.nix.
(use ‘--show-trace’ to show detailed location information)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Failure for system: x86_64-darwin
a) For `nixos-rebuild` you can set
{ nixpkgs.config.allowBroken = true; }
in configuration.nix to override this.
b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
{ allowBroken = true; }
to ~/.config/nixpkgs/config.nix.
(use ‘--show-trace’ to show detailed location information)
just for the protocol from the irc, the instantiation of the derivation on The error was in |
@GrahamcOfBorg build docker |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Success for system: x86_64-darwin
2017/11/20 20:08:00 WARN: man/src/system/prune.md does not exist, skipping
2017/11/20 20:08:00 WARN: man/src/system.md does not exist, skipping
2017/11/20 20:08:00 WARN: man/src/volume/prune.md does not exist, skipping
2017/11/20 20:08:00 WARN: man/src/volume/rm.md does not exist, skipping
Generate legacy manpages
post-installation fixup
patching script interpreter paths in /nix/store/wj9ffr61i0dkxwk3yj88q1wyq23hpm1k-docker-17.09.0-ce
gzipping man pages under /nix/store/ih418srgyhp4j97g7h3npdwlm66x36d3-docker-17.09.0-ce-man/share/man/
patching script interpreter paths in /nix/store/ih418srgyhp4j97g7h3npdwlm66x36d3-docker-17.09.0-ce-man
/nix/store/wj9ffr61i0dkxwk3yj88q1wyq23hpm1k-docker-17.09.0-ce
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Success for system: x86_64-linux
shrinking RPATHs of ELF executables and libraries in /nix/store/qdn6f8g5faq5xknkvi2kljf25nrb96rb-docker-17.09.0-ce
shrinking /nix/store/qdn6f8g5faq5xknkvi2kljf25nrb96rb-docker-17.09.0-ce/libexec/docker/docker
shrinking /nix/store/qdn6f8g5faq5xknkvi2kljf25nrb96rb-docker-17.09.0-ce/libexec/docker/dockerd
patching script interpreter paths in /nix/store/qdn6f8g5faq5xknkvi2kljf25nrb96rb-docker-17.09.0-ce
checking for references to /tmp/nix-build-docker-17.09.0-ce.drv-0 in /nix/store/qdn6f8g5faq5xknkvi2kljf25nrb96rb-docker-17.09.0-ce...
shrinking RPATHs of ELF executables and libraries in /nix/store/jb688pnw1m9lx69qc3a9w0w4xqvgincz-docker-17.09.0-ce-man
gzipping man pages under /nix/store/jb688pnw1m9lx69qc3a9w0w4xqvgincz-docker-17.09.0-ce-man/share/man/
patching script interpreter paths in /nix/store/jb688pnw1m9lx69qc3a9w0w4xqvgincz-docker-17.09.0-ce-man
checking for references to /tmp/nix-build-docker-17.09.0-ce.drv-0 in /nix/store/jb688pnw1m9lx69qc3a9w0w4xqvgincz-docker-17.09.0-ce-man...
/nix/store/qdn6f8g5faq5xknkvi2kljf25nrb96rb-docker-17.09.0-ce
Ah, I missed that! Makes sense now... I think this is good to go then?! |
@NeQuissimus yes let's wait for the borg builds and then i'll push the squashed commits with the fixups. |
I think everything has been built, no? |
was waiting for the eval checks |
Is there any documentation that could/should be written for this? |
I guess we're not squashing? :D Anyways, things should work fine now |
@gilligan it can be used like this: https://pewpewthespells.com/blog/setup_docker_on_mac.html |
@periklis that’s not documentation though, that is a link to a blog article talking about homebrew stuff ;) I was wondering if smth could/should be added to the manual about using this. |
Motivation for this change
Using docker cli client as a pure dependency on darwin is the starting point for a more pure docker support on this platform. The proposed PR makes docker-engine builds depending on platform. This is not a full docker support for darwin, because running the daemon needs either a virtualbox or xhyve based solution.
This packages:
Things done
build-use-sandbox
innix.conf
on non-NixOS)nix-shell -p nox --run "nox-review wip"
./result/bin/
)