Skip to content
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

Fix busybox failure #33

Conversation

matthewbauer
Copy link
Contributor

Weird issue happens when combining cross overlays and pkgsStatic
together. Some issue when combining the two together.

This was introduced in
NixOS/nixpkgs@39769df.

/cc @Ericson2314

Weird issue happens when combining cross overlays and pkgsStatic
together. Some issue when combining the two together.

This was introduced in
NixOS/nixpkgs@39769df.

/cc @Ericson2314
wasm32-unknown is not in <nixpkgs/lib/doubles.nix>, so we need to
allow it manually.
fixes eval
@dfordivam
Copy link
Member

I tried this fix; nix-build release.nix -A wasm.hello-example-web goes past the busybox issue but now it tries to build gdb for wasm32 ??

To me this indicates that something is being done wrong in the wasm-cross. In build-wasm-app.nix / webabi-nix we just want to call the node2nix without doing any cross compilation. But the current code is trying to do cross compilation..

nix-build release.nix -A wasm.hello-example-web
these derivations will be built:
  /nix/store/vs01dqdawnfsdgjl4m2ww3rbvdrm3rm2-wasm32-unknown-unknown-wasm-gdb-8.3.1.drv
  /nix/store/7rldj3wanzj82d75knkvcjmysnipg589-python3.7-Cython-0.29.13.drv
  /nix/store/56qcdl7cc6r8i8v25bvni8gpqq2aijci-python3.7-lxml-4.4.1.drv
  /nix/store/14il2chdpw6m3z7lllg2l702nfkssn8h-python3-3.7.5-env.drv
  /nix/store/g5nmn6xfbad1gsbwbl1jvq8nzqcr8fhv-systemd-243.drv
  /nix/store/cs3a86n2rq6dkrkm9amrkc9fhp4vc12f-util-linux-2.33.2.drv
  /nix/store/afb12lpf2daxxfi8nvl353kqffynzyri-node_webabi-0.0.1.drv
  /nix/store/nhr3adslxl02nbpp6dk69hywlqrdlnq2-wasm-app-hello.drv
...
checking target system type... Invalid configuration `wasm32-unknown-unknown-wasm': system `unknown-wasm' not recognized
configure: error: /nix/store/b34zjdmq5l8k6rwdykjx55yl9r9isl8k-bash-4.4-p23/bin/bash ./config.sub wasm32-unknown-unknown-wasm failed
builder for '/nix/store/vs01dqdawnfsdgjl4m2ww3rbvdrm3rm2-wasm32-unknown-unknown-wasm-gdb-8.3.1.drv' failed with exit code 1

@dfordivam
Copy link
Member

I fixed the "unsupported system" issue in #30

@dfordivam dfordivam mentioned this pull request Dec 3, 2019
@matthewbauer
Copy link
Contributor Author

Yeah the gdb issue is weird. Cython apparently needs gdb here.

@matthewbauer
Copy link
Contributor Author

cython fix here: #37

@dfordivam dfordivam mentioned this pull request Dec 3, 2019
@ElvishJerricco
Copy link
Member

We should try to eliminate the util-linux dependency. Can't imagine why that's there, and it's pulling in systemd/python.

@ElvishJerricco
Copy link
Member

@matthewbauer Do you have any idea what's causing the util-linux dependency?

})] ++ overlays;
config = { allowUnsupportedSystem = true; };
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

allowUnsupportedSystem doesn't seem right....

Copy link
Contributor Author

@matthewbauer matthewbauer Dec 6, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The alternative is to add wasm32-unknown to systems/doubles.nix here: https://github.com/NixOS/nixpkgs/blob/master/lib/systems/doubles.nix. I'd like to avoid it though since wasm32-unknown-unknown is not actively maintained (https://github.com/jfbastien/musl has been archived). Switching to wasm32-unknown-wasi should also make this unnecessary.

@matthewbauer
Copy link
Contributor Author

matthewbauer commented Dec 6, 2019

@matthewbauer Do you have any idea what's causing the util-linux dependency?

It's a dependency of node here. But there's really nothing wrong with it, it's only gdb that's causing the hash hash changes.

@ElvishJerricco
Copy link
Member

@matthewbauer I can't find any nix why-depends command that reveals a dependency between Node and util-linux.

@matthewbauer
Copy link
Contributor Author

find

This would be a build time dependency, not a runtime dependency. So something like:

$ nix-store -q --references $(nix-instantiate '<nixpkgs>' -A nodejs) | grep util-linux

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants