-
-
Notifications
You must be signed in to change notification settings - Fork 14.4k
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
sonarr: build from source #291640
sonarr: build from source #291640
Conversation
Why not? Why was using |
e89cd3c
to
2d4ecd5
Compare
W.r.t .NET build infrastructure updates. Some packages failed to build their web UI likely because of #253156, but otherwise looks good. Result of 5 packages failed to build:
60 packages built:
|
Is there a particular reason you are targeting staging here? |
I was expecting more rebuilds from .NET changes 😅 |
Result of 64 packages built:
|
Not sure I can meaningfully review this, but as one of the |
I tried running this on MacOS but can't execute the resulting
or, more directly,
and there's a Console message saying
In contrast, this correctly starts the server:
Perhaps there's a codesigning step missing for darwin, but I'mn not an expert on such things sorry. |
@purcell, weird, I can’t reproduce this in macOS VM (but then I guess it may have relaxed security constraints). Do other .NET packages work for you (e.g. jellyfin)? |
I have SIP enabled, which would be the MacOS default, and I have the sandbox enabled too.
Yes, |
@purcell, looks like something related to .NET is actually broken in upstream Nixpkgs, not sure why binary cache is fine though. System information
Works when jellyfin is fetched from binary cache. But then
and to confirm:
Edit: works fine when rebuilding with sandbox disabled. I guess macOS builders don’t have sandbox enabled? That would be weird but not unexpected. |
Ugh, that's unfortunate. But good investigation skills! Any idea what we could do to escalate this or find out more? |
8eb5543
to
8c03b29
Compare
This change refactors sonarr package to build from source instead of downloading pre-built releases.
Result of 1 package blacklisted:
1 package built:
|
@purcell, this should be ready for review and without .NET infrastructure changes. Note that these were merged separately (huge thanks to .NET build infrastructure maintainers for fast review cycles) and are required for this PR. That is, Sonarr version updates for the stable release channel would have to be done separately (see also note in the PR description). |
Sounds great to me, and I very much support this, but I'm a bit too slammed currently to spin it up locally for testing. |
description = "Smart PVR for newsgroup and bittorrent users"; | ||
homepage = "https://sonarr.tv"; | ||
license = lib.licenses.gpl3Only; | ||
maintainers = with lib.maintainers; [ fadenb purcell tie ]; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank goodness you're adding yourself as a maintainer for this, because maintaining this new version of the derivation is likely beyond my wizard level.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, I’m, unfortunately, stuck with Sonarr 😅
It’s sad that it’s not fully self-hostable (it requires skyhook.sonarr.tv to be up and reachable for operation), but there are no other alternatives with comparable feature set, so it’s an important piece of infrastructure for me.
I don’t think there would be any non-trivial maintenance with source build aside from occasionally bumping .NET version, but feel free to ping me if there are any issues (besides, ofborg will ping me anyway).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm happy to help with general dotnet source-build stuff too.
@purcell I'd like your approval before merging. Should we wait for you to test it? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I built and ran this without issues on aarch64-darwin
, and given the state of the CI for this PR, I'm going to approve it and suggest we merge.
Description of changes
This change refactors
sonarr
package (and its update script) to build the package from source. It also contains changes to the underlying .NET build infrastructure required for this package.See also #278050 (comment)
Important
This change relies on the recent PRs for the .NET build infrastructure (for structured attributes and cross-compilation) and cannot be backported.
Things done
nix.conf
? (See Nix manual)sandbox = relaxed
sandbox = true
nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD"
. Note: all changes have to be committed, also see nixpkgs-review usage./result/bin/
)Add a 👍 reaction to pull requests you find important.