-
-
Notifications
You must be signed in to change notification settings - Fork 14.8k
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
qemu: 8.2.4 -> 9.0.0 #298097
qemu: 8.2.4 -> 9.0.0 #298097
Conversation
Might it be time to set |
I don't use or understand macOS, so I don't really have an opinion, except that something needs to be done in the next two weeks. |
I'm told the fixes needed to make this work on darwin are currently in staging. Haven't been able to do a staging bootstrap yet to test this. |
3706afa
to
124808e
Compare
staging-next has merged now, so am I understanding correctly that if I rebase this it should build on Darwin without the patches? |
124808e
to
2793eaf
Compare
Still not building on x86_64-darwin. Is there something else that needs to happen? |
I no longer have access to an x86 mac (moved on to arm64) and so can't actually run the relevant builds. However, unless #101229 and similar issues happen, it would surprise me to not need these anymore. The patches are basically undoing 10.13+ stuff that is being added to QEMU to allow it to keep building on x86. At this point, 10.13 came out in 2017, and I think we're reaching the point where it's unreasonable to backport software to require an OS's API that has to be 7+ years old. If only because I don't know anyone else who is invested in qemu on darwin x86 on nix, I'm not sure how to test that functionality short of me trial-and-erroring blindly by trying to fix diffs and with ofborg as my guinea pig. |
No, I'm told it missed this staging-next cycle. |
Have tried with the new |
9.0 (non RC) is out now, if you can and want to pursue this. |
I still need somebody to tell me what to do about x86_64-darwin, unless we just mark it broken? |
Unless we can find someone with an x86-darwin machine who wants to rebase and test, I think broken is the best bet, but that's just me. |
2793eaf
to
f2f62fe
Compare
@ofborg test cage cagebreak cloud-init-hostname cloud-init mtp os-prober phosh sway systemd-initrd-luks-fido2 tinywl virtualbox |
Ugh, apparently QEMU is release-critical for x86_64-darwin, so we can't just mark it broken without blocking the channel. @roberth @Enzime seems like you were involved in that — can you help here? |
If it's okay to get it removed out of being release critical, that makes the most sense to me. If it's considered release critical, then we'll need to find a volunteer from darwin maintainers who's still on x86 and doesn't mind rebasing the patches (not pinging them yet...) |
Following the advice from the docs on using a newer SDK does not seem to work, or at least has other problems: applying this patch onto this PR (after rebasing on nixos-unstable)diff --git a/pkgs/applications/virtualization/qemu/default.nix b/pkgs/applications/virtualization/qemu/default.nix
index a2b01272b1f3..7afca0cbd371 100644
--- a/pkgs/applications/virtualization/qemu/default.nix
+++ b/pkgs/applications/virtualization/qemu/default.nix
@@ -265,7 +265,6 @@ stdenv.mkDerivation (finalAttrs: {
license = licenses.gpl2Plus;
maintainers = with maintainers; [ eelco qyliss ];
platforms = platforms.unix;
- broken = stdenv.hostPlatform.system == "x86_64-darwin";
}
# toolsOnly: Does not have qemu-kvm and there's no main support tool
// lib.optionalAttrs (!toolsOnly) {
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index eaa23105da40..398179be3fa2 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -34070,8 +34070,8 @@ with pkgs;
eiskaltdcpp = libsForQt5.callPackage ../applications/networking/p2p/eiskaltdcpp { };
- qemu = callPackage ../applications/virtualization/qemu {
- inherit (darwin.apple_sdk.frameworks) CoreServices Cocoa Hypervisor vmnet;
+ qemu = darwin.apple_sdk_11_0.callPackage ../applications/virtualization/qemu {
+ inherit (darwin.apple_sdk_11_0.frameworks) CoreServices Cocoa Hypervisor vmnet;
inherit (darwin.stubs) rez setfile;
inherit (darwin) sigtool;
};
results in these errors when building on x86_64-darwin
|
@NixOS/darwin-maintainers does anybody care about QEMU on x86_64-darwin? If nobody steps up there's not much we can do apart from remove it from the tested set… |
Their is an effort to port nixos test on macos so I think we should repair it. I will try to fix it (not today but tomorrow) but if anyone have a fix earlier it is ok. |
I'm also looking into this but won't have time to finish until tomorrow. Feel free to beat me to it. |
I'm also working on this. |
beadcc2
to
99dc467
Compare
Thanks a lot @wegank! |
libvirt doesn't build (with sandbox enabled) on x86_64-darwin. It doesn't build on master
Other error are not related. diffoscope build on master but not in this PR. |
So the build failure is unrelated to this PR? |
I have found Meson-based tests to be annoyingly unreliable on Darwin. Try using |
Result of 15 packages marked as broken and skipped:
33 packages failed to build:
56 packages built:
|
@ofborg build solo5 |
@ofborg build linuxKernel.packages.linux_6_8.virtualbox |
pkgs/by-name/so/solo5/package.nix
Outdated
@@ -59,6 +59,8 @@ in stdenv.mkDerivation { | |||
checkPhase = '' | |||
runHook preCheck | |||
patchShebangs tests | |||
substituteInPlace scripts/virtio-run/solo5-virtio-run.sh \ | |||
--replace-fail "-no-acpi" "-machine acpi=off" |
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.
Upstream?
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.
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.
Thanks!
Description of changes
The Darwin patches have stopped applying again. (cc @willcohen)
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.