fix darwin build#409
Conversation
|
not sure if |
There was a problem hiding this comment.
Thanks for the quick fix!
not sure if
buildStaticwould be useful on darwin, maybe we should remove it
So long as we get enough cache hits that it doesn't impact CI time-to-green I don't feel strongly.
If we ever plan to attach other platforms' static builds to releases, then CI should build them too. If not, I agree it's pointless work.
We could add a build_attrs field to the job matrix if that helps? Or just make the ci attr's content platform-specific.
| -- the executable name nixfmt and the library namespace Nixfmt can collide on | ||
| -- darwin due to case insentivity on APFS |
There was a problem hiding this comment.
Should we fix the underlying naming conflict?
There was a problem hiding this comment.
changing to executable: Nixfmt would fix the conflict, but we would need an additional step moving the binary from Nixfmt to nixfmt. I looked through haskell/cabal#4739 and some relevant threads but couldn't find a better alternative
There was a problem hiding this comment.
What a mess. This seems like a fine solution.
a9cbcea to
91d5c84
Compare
buildStatic is taking a long time on darwin-build-box due to the lack of existing cache, this might be an issue whenever nixpkgs is bumped |
| -- the executable name nixfmt and the library namespace Nixfmt can collide on | ||
| -- darwin due to case insentivity on APFS |
There was a problem hiding this comment.
What a mess. This seems like a fine solution.
91d5c84 to
e70b5c9
Compare
MattSturgeon
left a comment
There was a problem hiding this comment.
So long as we get enough cache hits that it doesn't impact CI time-to-green I don't feel strongly.
buildStatic is taking a long time on darwin-build-box due to the lack of existing cache, this might be an issue whenever nixpkgs is bumped
Let's try it out and play it by ear.
Thanks again!
|
|
||
| - name: checks | ||
| run: nix-build -A ci | ||
| run: nix-build -A ci --argstr system "${{ matrix.system }}" |
There was a problem hiding this comment.
This is totally fine here, as matrix.system is a controlled value.
But generally speaking, I try to avoid interpolating GHA expressions into shell scripts (any scripts, tbh).
Since these values don't contain any shell syntax, we could even drop the quotes to avoid the illusion of safety.
The robust general-case solution would be to pass matrix.system in via env.
No changes needed, just commenting to raise awareness.
also enables ci (only the
nix-build -A cipart) on darwin, we can test aarch64-linux too but it might be out of scope for this prhaskell/cabal#4739 (comment)