trofi / nix-guix-gentoo

Gentoo overlay for nix and guix functional package managers.
110 stars 9 forks source link

sys-apps/nix: restrict libcpuid dependency to amd64-only #31

Closed faithanalog closed 1 year ago

faithanalog commented 1 year ago

Per libcpuid's description on http://libcpuid.sourceforge.net/:

libcpuid is a small C library for x86 CPU detection and feature extraction

libcpuid is only keyworded on amd64, which makes sense, because it's not really relevant anywhere else. It's also not needed by nix on other CPU architectures such as aarch64. Nix builds / works correctly without it on my aarch64 machines.

Departing from this specific PR, I'd eventually like to get in missing ~arm64 keywords for sys-apps/nix's dependency tree in this repo and ::gentoo. Aside from this change, it's all been working just fine on my aarch64 machines, including pulling binaries from the nixpkgs cache, building flakes from source, etc. So, hoping to chip away at that when I have time.

trofi commented 1 year ago

Yeah, that looks very reasonable! That will also allow us to bring ~x86 support back that I lazily dropped.

trofi commented 1 year ago

Pulled as is. Thank you!

trofi commented 1 year ago

That will also allow us to bring ~x86 support back that I lazily dropped.

NonsolvableDepsInDev: version 2.13.2: nonsolvable depset(depend) keyword(~x86) dev profile (default/linux/x86/17.0/musl) (2 total): solutions: [ app-text/mdbook-linkcheck ]

Or maybe not.

faithanalog commented 1 year ago

yeah there's a few things that need keywording in the dependency chain. im digging back into it and here's some stuff from my package.accept_keywords

<sys-apps/nix-9999 **
<app-text/lowdown-nix-9999 **
<dev-libs/editline-9999 **
<sys-apps/busybox-nix-sandbox-shell-9999 **
<app-text/mdbook-linkcheck-9999 **

notably dev-libs/editline is in ::gentoo which is the thing I was tihnking about that isn't keyworded there.