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

patchpkg: use devbox flake instead of local binary #2378

Merged
merged 1 commit into from
Oct 24, 2024
Merged

Conversation

gcurtis
Copy link
Collaborator

@gcurtis gcurtis commented Oct 24, 2024

Update the patching flake to use the devbox flake (added in 37c36a1) instead of copying the binary manually.

  • It uses the flakeref "github:jetify-com/devbox/" + build.Version to get the same version of Devbox that's currently running.
  • For dev builds, it attempts to find the devbox source and use the local flake instead.

When Devbox needs to patch a package, it generates a flake that calls devbox patch as its builder. Because flake builds are sandboxed, we need a way of getting devbox into the Nix store.

Previously, we were just copying the currently running devbox executable into the Nix store and using that. However, Devbox isn't actually a static binary (we don't build with CGO_ENABLED=0). This causes devbox patch to fail because the flake is isolated from the system's linker.

Update the patching flake to use the devbox flake (added in 37c36a1)
instead of copying the binary manually.

- It uses the flakeref `"github:jetify-com/devbox/" + build.Version` to
  get the same version of Devbox that's currently running.
- For dev builds, it attempts to find the devbox source and use the
  local flake instead.

When Devbox needs to patch a package, it generates a flake that calls
`devbox patch` as its builder. Because flake builds are sandboxed, we
need a way of getting devbox into the Nix store.

Previously, we were just copying the currently running devbox executable
into the Nix store and using that. However, Devbox isn't actually a
static binary (we don't build with CGO_ENABLED=0). This causes `devbox
patch` to fail because the flake is isolated from the system's linker.
@gcurtis gcurtis merged commit cab9ca6 into main Oct 24, 2024
29 checks passed
@gcurtis gcurtis deleted the gcurtis/patch-flake branch October 24, 2024 19:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

2 participants