NixOS / SC-election-2024

2024 Election for the Steering Committee
20 stars 60 forks source link

What is your plan on improving the darwin PR situtation? #97

Open SuperSandro2000 opened 5 days ago

SuperSandro2000 commented 5 days ago

Question

Right now ofborg often takes days to complete package builds for the darwin arches and it is unviable as a reviewer to wait for them to complete as they might never complete or just time out, so darwin builds are often with a bit of luck. Also if they fail, people are often clueless on how to fix the compiler/linker issues.

What are your ideas for that? Should darwin be demoted to tier 3? Should we try to find sponsors for new hardware?

Candidates I'd like to get an answer from

No response

Reminder of the Q&A rules

Please adhere to the Q&A guidelines and rules

Gabriella439 commented 4 days ago

So take these anecdotes with a grain of salt but at my current job and my last job Darwin support was a must and (as the team that supported Nix at work) we went to heroic lengths to help people get Darwin working and keep it working. For example, I personally worked on fixing linker issues on macOS at my current job so I'm acutely aware of how painful it is to keep macOS working.

If the problem were fixable with greater funding I'd argue we should lean on that because I'm pretty sure most Nix shops struggle with macOS support and would definitely pay for it to be in a much better position because they're already paying a lot in terms of their own devs working on debugging/supporting/working around Nix-on-macOS issues and they'd probably get a much better bang-for-their-buck paying the Nixpkgs contributors already working on and familiar with this territory.

tomberek commented 4 days ago

Darwin is popular, but requires additional resources and people focused on the problem. We should keep Darwin as a supported platform by funding additional hardware and finding personnel to focus on this portion of Nixpkgs. Concrete steps to take would be to establish a formal Darwin team who would manage provided funding for hardware and coordinate support via the infra team. This is part of an overall approach of establishing ownership of the problem as well as providing the necessary resources to solve it.

This is a problem to be solved for end-users and developers. So I would engage with organizations using Nix as a development tool on Darwin. They benefit from the ecosystem and thus also have some responsibility for its upkeep.

phaer commented 2 days ago

What are your ideas for that? Should darwin be demoted to tier 3? Should we try to find sponsors for new hardware?

We should not demote it, but establish a dedicated team for it and secure funding for additional builders and hopefully labor needed to keep the SDKs, etc up to date and documented.

nix on darwin sees enough usage in companies that I am optimistic that this is solvable with a coordinated approach and some outreach.

Prioritize finding funding for new darwin builders, establish a darwin team.

getchoo commented 2 days ago

What are your ideas for that?

As someone with a little bit of experience in adding Darwin support to packages, the biggest blocker for me is the hardware. All of the PRs linked above were only possible to test on my end through a 2017 MacBook Air with a 1.8GHz, dual-core i5 I was given from a relative. It's as fun as you can probably imagine 😆

So one of my priorities here would be in providing access to Darwin hardware to contributors. The quickest way to do this would of course be Ofborg -- which we should still fund more Darwin machines for -- but given the massive demand it has, I would also want to give more resources to nix-community's Community builder program so people would have the opportunity to directly (and quickly) test changes. This would hopefully help ease the reliance on friends who are gracious enough to test PRs that I and other contributors have surely experienced

Further, I would encourage more community calls for maintainers and testers for Darwin (possibly under a NixOS/darwin-testers team?). The former has already shown to be quite effective, and I believe the latter would assist even further in the issue of contributors not being able to test and debug things properly as I mentioned above

Should darwin be demoted to tier 3?

No

Should we try to find sponsors for new hardware?

Most definitely. As interest grows in Nix, I believe there are many companies and organizations who would be interested in both using and growing our support for the platform in nixpkgs