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

pixie: refactor to allow macOS build #33771

Closed
wants to merge 3 commits into from
Closed

Conversation

alekcz
Copy link
Contributor

@alekcz alekcz commented Jan 12, 2018

Motivation for this change
Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option build-use-sandbox in nix.conf on non-NixOS)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Fits CONTRIBUTING.md.

- Pixie supports macOS. Nix package should too.
- Updated executable name as discussed in pixie-lang/pixie/issues/455.
@joachifm
Copy link
Contributor

@GrahamcOfBorg build pixie

Copy link

@GrahamcOfBorg GrahamcOfBorg left a comment

Choose a reason for hiding this comment

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

Failure for system: aarch64-linux

Package ‘pixie-0-r1356-jit’ in /var/lib/gc-of-borg/nix-test-rs-1/repo/38dca4e3aa6bca43ea96d2fcc04e8229/builder/grahamc-aarch64-community-1/pkgs/development/interpreters/pixie/default.nix:79 is not supported on ‘aarch64-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.

Copy link

@GrahamcOfBorg GrahamcOfBorg left a 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

Warning: write already refers to <inst pixie.stdlib.Var>
Warning: ISeekableStream already refers to <inst pixie.stdlib.Var>
Warning: write-byte already refers to <inst pixie.stdlib.Var>
Compiling  pixie/string.pxi
installing
post-installation fixup
strip is /nix/store/bhfkh37smh9lc5bngdha6zx98k6w6cgd-cctools-binutils-darwin/bin/strip
stripping (with command strip and flags -S) in /nix/store/j2cvsmygajbi1xinxk444bbnxzjfpikf-pixie-0-r1356-jit/bin
patching script interpreter paths in /nix/store/j2cvsmygajbi1xinxk444bbnxzjfpikf-pixie-0-r1356-jit
/nix/store/j2cvsmygajbi1xinxk444bbnxzjfpikf-pixie-0-r1356-jit

Copy link

@GrahamcOfBorg GrahamcOfBorg left a 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

Compiling  pixie/parser/json.pxi
installing
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/vkhllrhdklrmbnzzgkix330a5pyc9ywh-pixie-0-r1356-jit
shrinking /nix/store/vkhllrhdklrmbnzzgkix330a5pyc9ywh-pixie-0-r1356-jit/share/pixie-vm
strip is /nix/store/wxn5gn8amxm1w0ikcx4gbs8a17wvss4j-binutils-2.28.1/bin/strip
stripping (with command strip and flags -S) in /nix/store/vkhllrhdklrmbnzzgkix330a5pyc9ywh-pixie-0-r1356-jit/bin 
patching script interpreter paths in /nix/store/vkhllrhdklrmbnzzgkix330a5pyc9ywh-pixie-0-r1356-jit
checking for references to /tmp/nix-build-pixie-0-r1356-jit.drv-0 in /nix/store/vkhllrhdklrmbnzzgkix330a5pyc9ywh-pixie-0-r1356-jit...
/nix/store/vkhllrhdklrmbnzzgkix330a5pyc9ywh-pixie-0-r1356-jit

@alekcz
Copy link
Contributor Author

alekcz commented Jan 16, 2018

@joachifm any chance I could ask Graham for a new build?

@joachifm
Copy link
Contributor

@GrahamcOfBorg build pixie

Copy link

@GrahamcOfBorg GrahamcOfBorg left a 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

/nix/store/j2cvsmygajbi1xinxk444bbnxzjfpikf-pixie-0-r1356-jit

Copy link

@GrahamcOfBorg GrahamcOfBorg left a comment

Choose a reason for hiding this comment

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

Failure for system: aarch64-linux

Package ‘pixie-0-r1356-jit’ in /var/lib/gc-of-borg/nix-test-rs-3/repo/38dca4e3aa6bca43ea96d2fcc04e8229/builder/grahamc-aarch64-community-3/pkgs/development/interpreters/pixie/default.nix:79 is not supported on ‘aarch64-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.

Copy link

@GrahamcOfBorg GrahamcOfBorg left a 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

Compiling  pixie/parser/json.pxi
installing
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/vkhllrhdklrmbnzzgkix330a5pyc9ywh-pixie-0-r1356-jit
shrinking /nix/store/vkhllrhdklrmbnzzgkix330a5pyc9ywh-pixie-0-r1356-jit/share/pixie-vm
strip is /nix/store/wxn5gn8amxm1w0ikcx4gbs8a17wvss4j-binutils-2.28.1/bin/strip
stripping (with command strip and flags -S) in /nix/store/vkhllrhdklrmbnzzgkix330a5pyc9ywh-pixie-0-r1356-jit/bin 
patching script interpreter paths in /nix/store/vkhllrhdklrmbnzzgkix330a5pyc9ywh-pixie-0-r1356-jit
checking for references to /tmp/nix-build-pixie-0-r1356-jit.drv-0 in /nix/store/vkhllrhdklrmbnzzgkix330a5pyc9ywh-pixie-0-r1356-jit...
/nix/store/vkhllrhdklrmbnzzgkix330a5pyc9ywh-pixie-0-r1356-jit

@alekcz
Copy link
Contributor Author

alekcz commented Jan 16, 2018

@joachifm aarch64-linux is not on platforms list but Graham keeps trying to build on it. I'm not sure how to fix the build error. Any ideas?

@joachifm
Copy link
Contributor

@alekcz I'd ignore it for now

@joachifm joachifm requested a review from bendlas January 17, 2018 15:03
@bendlas
Copy link
Contributor

bendlas commented Jan 17, 2018

Great! Thanks for taking that on. I don't have a mac, so I'll have to go with your assessment, but one question: Why did you remove i686-linux as a platform? Isn't it supported by pixie?

@alekcz
Copy link
Contributor Author

alekcz commented Jan 17, 2018

@bendlas on pixie 0.1 yes. But with support i686 is being phased out in general, we'd be digging a hole. Also things like libuv and pypy will get harder and harder to support on i686.

https://www.archlinux.org/news/the-end-of-i686-support/

@bendlas
Copy link
Contributor

bendlas commented Jan 18, 2018

@alekcz have you had any actual breakage due to i686 being supported? If it's not related to OSX support, I'd ask you to submit a separate PR for that.

@alekcz
Copy link
Contributor Author

alekcz commented Jan 18, 2018

@bendlas done

@bendlas
Copy link
Contributor

bendlas commented Jan 19, 2018

OK.

Strictly speaking, the executable name change is out of scope for an OSX PR, as well,
but I'll accept it as part of this, because it is based on upstream consensus (and because pixie is not exactly a high-stakes package, right now).
However, please keep this idea of separating concerns in mind, when filing further pull requests, as it makes reviewer's lifes a lot easier.

Thanks and welcome to NixOS!

@bendlas bendlas closed this in 7eb4844 Jan 19, 2018
@anka-213
Copy link
Contributor

This change made dust stop working, since that has a reference to the path bin/pixie-vm. It should be a simple 1-line fix here:

pixiePath="${pixie}/bin/pixie-vm" \


I'm not really interested in this package, I just noticed it when accidentally installing this while trying to install the other package named "dust".

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

Successfully merging this pull request may close these issues.

None yet

6 participants