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

[wip] Bump most apple-source-releases to macOS 10.14.1 #60439

Closed
wants to merge 7 commits into from

Conversation

burke
Copy link
Contributor

@burke burke commented Apr 29, 2019

I haven't figured out sandboxing yet, I'll give that a crack tomorrow. This is thoroughly untested and guaranteed to not work yet.

There's a lot of version drift in apple-source-releases and none of it is up-to-date. I'll try to get it all updated and refactored a bit.

Motivation for this change
Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option 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 nix-review --run "nix-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Assured whether relevant documentation is up to date
  • Fits CONTRIBUTING.md.

@ofborg ofborg bot added the 6.topic: darwin Running or building packages on Darwin label Apr 29, 2019
@burke
Copy link
Contributor Author

burke commented May 1, 2019

Welp, this turns out to be more work than I expected; I'm going to start over bottom-up rather than top-down.

@burke burke closed this May 1, 2019
@matthewbauer
Copy link
Member

Hey, thanks for working on this! Some things are okay to update, like command line tools, but other things are important to leave older, like libdispatch or Libsystem. We want to support older macOS systems and that means using the older headers.

There are some major changes to this that are included in #56744 and now in staging-next. It might be a good idea to base off of those.

@burke
Copy link
Contributor Author

burke commented May 1, 2019

Hey, 10.12's Libc actually has the header that led me down this whole path in the first place, so that's great. I definitely underestimated the complexity here 🤯.

I might continue to plug away at this just to learn the system better—it's looking like we're likely to be deploying nix to 500–1000 macbooks and I'd like to have a handle on how this part of it works.

@matthewbauer
Copy link
Member

Yeah we definitely need more visibility and documentation. The difference between "bootstrapping" things like Libsystem and the others are not clearly marked from the less critical apps.

@LnL7
Copy link
Member

LnL7 commented May 1, 2019

Being stuck on 10.10 for so long with the unavailability of CF was definitively becoming painful. The stdenv is pretty complex because we have to deal with impurities that are out of control of nix as well as the fact that we want binaries to be backwards compatible with (some) previous releases.

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

3 participants