Skip to content

Conversation

@corngood
Copy link
Contributor

@corngood corngood commented Dec 3, 2025

Dependency PRs:

Related:

Things done

  • Built on platform:
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • Tested, as applicable:
  • Ran nixpkgs-review on this PR. See nixpkgs-review usage.
  • Tested basic functionality of all binary files, usually in ./result/bin/.
  • Nixpkgs Release Notes
    • Package update: when the change is major or breaking.
  • NixOS Release Notes
    • Module addition: when adding a new NixOS module.
    • Module update: when the change is significant.
  • Fits CONTRIBUTING.md, pkgs/README.md, maintainers/README.md and other READMEs.

Add a 👍 reaction to pull requests you find important.

@nixpkgs-ci nixpkgs-ci bot added 10.rebuild-linux: 11-100 This PR causes between 11 and 100 packages to rebuild on Linux. 10.rebuild-darwin: 11-100 This PR causes between 11 and 100 packages to rebuild on Darwin. labels Dec 3, 2025
@corngood
Copy link
Contributor Author

corngood commented Dec 3, 2025

@ofborg build pkgsCross.x86_64-cygwin.nix

@Ericson2314
Copy link
Member

Ericson2314 commented Dec 3, 2025

Very excited about this!

@alyssais how would you like the changes to be merged (preemptively create many PRs? Split out dynamically based on what needs more review?) I am hoping that these changes can be merged soon (because I am very excited by @corngood's work!) and also backported to 25.11, because I would like to use this in Nix's own CI to make sure we don't have Cygwin regressions.

Per it being draft, there is still some cleanup to be done to the stuff (my comments below are premature, @corngood is already aware of many of those things) but @corngood was wondering about what sort of approach to PR bucketting he should use (as he cleans up and gets ready to submit non-draft PRs) and so I am relaying that question to you.

@nixpkgs-ci nixpkgs-ci bot added 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin. 10.rebuild-linux: 0 This PR does not cause any packages to rebuild on Linux. and removed 10.rebuild-linux: 11-100 This PR causes between 11 and 100 packages to rebuild on Linux. 10.rebuild-darwin: 11-100 This PR causes between 11 and 100 packages to rebuild on Darwin. labels Dec 3, 2025
@alyssais
Copy link
Member

alyssais commented Dec 3, 2025

@alyssais how would you like the changes to be merged (preemptively create many PRs? Split out dynamically based on what needs more review?)

In my experience doing musl, the fastest way to get something like this through review and merged is:

  • Open one PR per fixed package. For packages that require a dependency to be fixed first, wait until the dependency PRs are fixed before opening the PR for the dependent. This lets simple changes get finalised fast, which will make subsequent review cycles faster, because it limits what has to be rechecked repeatedly to only the controversial stuff. Smaller PRs = more distributed review, less overwhelmed reviewers, faster review cycles.
  • Use a draft PR or tracking issue to let interested people find all such PRs. (I don't usually bother with this but it probably does help if you have the energy to keep it updated.)
  • Request review from people generally interested in the initiative as well as the topic.
  • Just send mass rebuilds to staging. The staging process has relatively fixed waiting period once changes are in it, whereas review doesn't, so getting a simple, mass-rebuild diff into staging will often end up with it in master faster than getting a PR with a more complicated rebuild-avoiding diff merged straight to master.

@corngood
Copy link
Contributor Author

corngood commented Dec 3, 2025

@ofborg build pkgsCross.x86_64-cygwin.nix

It doesn't look like this has worked. Any ideas for demonstrating in a PR that a package builds in cross?

@corngood
Copy link
Contributor Author

corngood commented Dec 5, 2025

I started tracking the dependency PRs in the top comment. Either this PR can stay for tracking only, or we can use it when it's down to changing nix only. I think it's useful to keep a rebased version of all the changes with the rebuild hacks so we can verify zero rebuilds.

@nixpkgs-ci nixpkgs-ci bot added 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 2.status: merge conflict This PR has merge conflicts with the target branch and removed 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin. 10.rebuild-linux: 0 This PR does not cause any packages to rebuild on Linux. labels Dec 5, 2025
@Eveeifyeve
Copy link
Member

What is the difference between the last cygwin pr: #447520 and this?

@corngood
Copy link
Contributor Author

What is the difference between the last cygwin pr: #447520 and this?

This one is specifically for getting a cross-build of nix working. It's a subset of the other one.

@nixpkgs-ci nixpkgs-ci bot removed 2.status: merge conflict This PR has merge conflicts with the target branch 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. labels Dec 21, 2025
@nixpkgs-ci nixpkgs-ci bot added 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin. 10.rebuild-linux: 0 This PR does not cause any packages to rebuild on Linux. and removed 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. labels Dec 21, 2025
@corngood
Copy link
Contributor Author

This PR now only contains one small change to nix packaging, which is also in NixOS/nix#14844.

It won't build in master until the next (or possibly next-next) staging merge, but it should build in staging after this and the last remaining dependency PR (libidn2) makes it there.

@corngood corngood marked this pull request as ready for review December 21, 2025 02:58
@corngood corngood requested a review from Ericson2314 December 21, 2025 02:58
@Ericson2314 Ericson2314 added this pull request to the merge queue Dec 21, 2025
@Ericson2314
Copy link
Member

Congratulations!

Merged via the queue into NixOS:master with commit 6dddf7e Dec 21, 2025
33 of 36 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin. 10.rebuild-linux: 0 This PR does not cause any packages to rebuild on Linux.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants