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

plan9port: build everything on Darwin #62992

Merged
merged 1 commit into from Jun 11, 2019

Conversation

eraserhd
Copy link
Contributor

A commit in 2014 (see #2266) disabled building parts which depended on X11 on Mac OS. There's no explanation given in the pull request. In any case, many people install plan9port on Darwin specifically to use the UI components.

Aside from this, the derivation was broken on Mac OS, probably because people put the which and perl dependencies inside the !isDarwin conditional. Some programs worked, however the static libraries did not build, so this could not be used as a buildInput to build programs
which need the libraries. This fixes that.

Motivation for this change

Specifically experienced on Mac OS:

  • $out/plan9/bin/rc was missing.
  • $out/plan9/lib/lib*.a was missing, preventing 9l from working.
Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
  • Built on platform(s)
    • NixOS (Same hash and path size as before)
    • macOS (path size 111,256,024 -> 215,351,448)
    • 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 nix-review --run "nix-review wip"
  • Tested execution of all binary files (usually in ./result/bin/) (see note)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Assured whether relevant documentation is up to date (no docs in this repo)
  • Fits CONTRIBUTING.md.

There's a lot of binaries, so I didn't run them all. I did test the things that I needed that were missing on Mac OS (rc and 9l), and they work.

nix-review reported that no packages were built.

This should be safe.


@ofborg ofborg bot added the 6.topic: darwin Running or building packages on Darwin label Jun 11, 2019
@ofborg ofborg bot requested a review from AndersonTorres June 11, 2019 19:20
@vcunat
Copy link
Member

vcunat commented Jun 11, 2019

@GrahamcOfBorg build plan9port

A commit in 2014 (see NixOS#2266) disabled building parts which depended on
X11 on Mac OS.  There's no explanation given in the pull request.  In
any case, many people install plan9port on Darwin specifically to use
the UI components.

Aside from this, the derivation was broken on Mac OS, probably because
people put the `which` and `perl` dependencies inside the !isDarwin
conditional.  Some programs worked, however the static libraries did
not build, so this could not be used as a buildInput to build programs
which need the libraries.  This fixes that.
@eraserhd eraserhd force-pushed the plan9port-enable-darwin-x11 branch from 05991ec to 26aef37 Compare June 11, 2019 20:34
@eraserhd
Copy link
Contributor Author

I just amended the commit with an installCheckPhase. This changes the hash of the NixOS build.

@matthewbauer matthewbauer merged commit 21edffe into NixOS:master Jun 11, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants