Skip to content

Conversation

@schicks
Copy link

@schicks schicks commented Dec 5, 2025

What does this PR do?

nix develop was failing with errors mentioning that the apple sdk was outdated. This PR updates the referenced version of the apple SDK, along with the flake more generally.

How did you verify your code works?

ran nix develop and confirmed that the error no longer occurs. However, in the nix shell bun bd still fails; I think we are waiting on this PR and another flake update to resolve that.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Dec 5, 2025

Walkthrough

The flake.nix file is modified to consolidate macOS-specific dependencies. Explicit Apple framework inclusions (CoreFoundation, CoreServices, Security) are replaced with a unified pkgs.apple-sdk reference in the Darwin build configuration.

Changes

Cohort / File(s) Summary
macOS dependency consolidation
flake.nix
Replaces individual macOS framework dependencies (CoreFoundation, CoreServices, Security) with a single pkgs.apple-sdk package reference for Darwin builds

Possibly related PRs

  • oven-sh/bun#23406: Directly related modification to flake.nix's macOS framework declarations that adds macOS frameworks, contrasting with this PR's consolidation approach.

Pre-merge checks

✅ Passed checks (2 passed)
Check name Status Explanation
Title check ✅ Passed The title 'update flake to new apple sdk' directly and accurately summarizes the main change in the pull request - updating the flake to use a newer Apple SDK.
Description check ✅ Passed The description follows the repository template with both required sections ('What does this PR do?' and 'How did you verify your code works?') properly filled out with relevant details and context.

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

📜 Review details

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

Disabled knowledge base sources:

  • Linear integration is disabled by default for public repositories

You can enable these sources in your CodeRabbit configuration.

📥 Commits

Reviewing files that changed from the base of the PR and between 4d60b6f and 7254b0b.

⛔ Files ignored due to path filters (1)
  • flake.lock is excluded by !**/*.lock
📒 Files selected for processing (1)
  • flake.nix (1 hunks)

Comment on lines 121 to 124
] ++ pkgs.lib.optionals pkgs.stdenv.isDarwin [
# macOS specific dependencies
pkgs.darwin.apple_sdk.frameworks.CoreFoundation
pkgs.darwin.apple_sdk.frameworks.CoreServices
pkgs.darwin.apple_sdk.frameworks.Security
# macOS specific dependencies - use latest supported Apple SDK
pkgs.apple-sdk
];
Copy link
Contributor

Choose a reason for hiding this comment

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

🧹 Nitpick | 🔵 Trivial

Darwin SDK migration looks correct; consider SDK version pinning / redundancy.

Switching to pkgs.apple-sdk under the Darwin-only block matches the new nixpkgs Darwin SDK pattern and replaces the deprecated darwin.apple_sdk.frameworks.* approach. (nixos.org) Note that clangStdenv already wires in the default unversioned apple-sdk, so explicitly listing pkgs.apple-sdk here is a bit redundant unless you later choose a specific version like pkgs.apple-sdk_14/_15 to stabilize Darwin builds across future nixos-unstable updates. (nixos.org) I’d keep this change (it clearly documents the SDK dependency) but consider pinning a version if you hit regressions when the default SDK moves.

Please re-check nix develop on both x86_64-darwin and aarch64-darwin once the upstream nixpkgs SDK changes you’re depending on are available, to confirm there are no remaining SDK resolution/linking issues.

🤖 Prompt for AI Agents
In flake.nix around lines 121 to 124, the Darwin block currently adds the
unversioned pkgs.apple-sdk which is redundant with clangStdenv and may cause
future regressions; either pin to a concrete SDK (e.g., replace pkgs.apple-sdk
with pkgs.apple-sdk_14 or pkgs.apple-sdk_15 to stabilize builds) or keep the
unversioned entry but add a comment explaining the intentional redundancy; after
changing, run nix develop on x86_64-darwin and aarch64-darwin to verify SDK
resolution and linking succeed.

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.

1 participant