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

isabelle: fix darwin build #348092

Merged
merged 1 commit into from
Dec 13, 2024
Merged

Conversation

Liamolucko
Copy link
Contributor

@Liamolucko Liamolucko commented Oct 12, 2024

It looks like the check for whether to include procps was backwards. I removed the duplicate Java dependency as well while I was at it.

I moved procps into propagatedBuildInputs, since it's needed to check the number of cores every time Isabelle is run, and as such is needed to build any packages that depend on Isabelle (tlaps). Would patching Isabelle to use the absolute path be preferable?

I'm not sure whether or not this will build successfully in Hydra: it fails to build once I turn on the sandbox (I believe due to trying to access /tmp/isabelle-), but so does Isabelle 2023, and that built fine in Hydra.

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)
    • sandbox = relaxed
    • sandbox = true
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md.

Add a 👍 reaction to pull requests you find important.

@ofborg ofborg bot added the 6.topic: darwin Running or building packages on Darwin label Oct 12, 2024
@ofborg ofborg bot requested review from jwiegley and jvanbruegge October 12, 2024 18:53
@FliegendeWurst
Copy link
Member

@ofborg build isabelle

@FliegendeWurst FliegendeWurst added the 12.approvals: 1 This PR was reviewed and approved by one reputable person label Nov 13, 2024
@wegank wegank added 12.approvals: 2 This PR was reviewed and approved by two reputable people 12.approved-by: package-maintainer This PR was reviewed and approved by a maintainer listed in the package and removed 12.approvals: 1 This PR was reviewed and approved by one reputable person labels Nov 14, 2024
@khaneliman
Copy link
Contributor

nixpkgs-review result

Generated using nixpkgs-review.

Command: nixpkgs-review pr 348092


x86_64-linux

✅ 3 packages built:
  • isabelle
  • isabelle-components.isabelle-linter
  • tlaps

aarch64-linux

✅ 3 packages built:
  • isabelle
  • isabelle-components.isabelle-linter
  • tlaps

x86_64-darwin

❌ 3 packages failed to build:
  • isabelle
  • isabelle-components.isabelle-linter
  • tlaps

aarch64-darwin

❌ 3 packages failed to build:
  • isabelle
  • isabelle-components.isabelle-linter
  • tlaps

@Liamolucko
Copy link
Contributor Author

nixpkgs-review result

Are you building with the sandbox enabled? I'm already aware that this fails with it on (as does the polyml dependency).

I also figured out why it still builds in Hydra anyway: if #29087 is up-to-date, Hydra simply doesn't have sandboxing enabled on Darwin in the first place. Maybe CONTRIBUTING.md should be updated to clarify that it's only enabled on Linux? That's what made me think it was enabled on Darwin too.

The changes to isabelle-sha1 were necessary due to NixOS#349555: it results
in needing to pass `-syslibroot $SDKROOT` in addition to `-lSystem` when
invoking ld64 directly. But a simpler solution was to use $CC instead,
since it passes all those flags automatically, which is also how it's
built upstream (their build script sets `LD="gcc"`).
@wegank wegank removed 12.approvals: 2 This PR was reviewed and approved by two reputable people 12.approved-by: package-maintainer This PR was reviewed and approved by a maintainer listed in the package labels Dec 5, 2024
@ofborg ofborg bot requested a review from jvanbruegge December 6, 2024 17:05
@khaneliman
Copy link
Contributor

nixpkgs-review result

Are you building with the sandbox enabled? I'm already aware that this fails with it on (as does the polyml dependency).

I also figured out why it still builds in Hydra anyway: if #29087 is up-to-date, Hydra simply doesn't have sandboxing enabled on Darwin in the first place. Maybe CONTRIBUTING.md should be updated to clarify that it's only enabled on Linux? That's what made me think it was enabled on Darwin too.

No, I don't use sandbox on darwin.

@Liamolucko
Copy link
Contributor Author

No, I don't use sandbox on darwin.

Oh, my bad: I didn't realise that nixpkgs-review would rebase the PR on top of master, and I can reproduce the failure if I rebase it on top of a commit from the date you ran nixpkgs-review.

I think this was breaking due to #349555, which I've now pushed a fix for; do you want to try it again?

@khaneliman
Copy link
Contributor

nixpkgs-review result

Generated using nixpkgs-review.

Command: nixpkgs-review pr 348092


x86_64-darwin

✅ 3 packages built:
  • isabelle
  • isabelle-components.isabelle-linter
  • tlaps

aarch64-darwin

✅ 3 packages built:
  • isabelle
  • isabelle-components.isabelle-linter
  • tlaps

@khaneliman khaneliman merged commit ad347ac into NixOS:master Dec 13, 2024
36 of 37 checks passed
@Liamolucko Liamolucko deleted the isabelle-darwin branch December 13, 2024 09:38
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.

5 participants