NixOS / nixpkgs

Nix Packages collection & NixOS
MIT License
17.86k stars 13.93k forks source link

Build failure: otel-desktop-viewer #301925

Open seh opened 6 months ago

seh commented 6 months ago

Steps To Reproduce

Steps to reproduce the behavior:

  1. In a flake, add pkgs.otel-desktop-viewer to the "buildInputs" parameter for pkgs.mkShellNoCC.
  2. Attempt to build the flake.
  3. Observe that github.com/shoenig/go-m1cpu Go package fails to build.

Build log

"nix log" output ``` @nix { "action": "setPhase", "phase": "unpackPhase" } Running phase: unpackPhase unpacking source archive /nix/store/fmq2j52k6np40lvxjigbkg9bn42m5rxd-source source root is source @nix { "action": "setPhase", "phase": "patchPhase" } Running phase: patchPhase applying patch /nix/store/2maxwn4kjayg5cfmcjk4gzdfb7ilqb0z-version-0.1.4.patch patching file main.go @nix { "action": "setPhase", "phase": "updateAutotoolsGnuConfigScriptsPhase" } Running phase: updateAutotoolsGnuConfigScriptsPhase @nix { "action": "setPhase", "phase": "configurePhase" } Running phase: configurePhase @nix { "action": "setPhase", "phase": "buildPhase" } Running phase: buildPhase Building subPackage ./... # github.com/shoenig/go-m1cpu vendor/github.com/shoenig/go-m1cpu/cpu.go:65:33: error: use of undeclared identifier 'kIOMainPortDefault'; did you mean 'kIOMasterPortDefault'? IOServiceGetMatchingServices(kIOMainPortDefault, matching, &iter); ^~~~~~~~~~~~~~~~~~ kIOMasterPortDefault /nix/store/ph0yw7c1jn80ln1js25i4bv8gd1phlv5-apple-framework-IOKit-11.0.0/Library/Frameworks/IOKit.framework/Headers/IOKitLib.h:103:19: note: 'kIOMasterPortDefault' declared here const mach_port_t kIOMasterPortDefault; ^ 1 error generated. ```

Additional context

I'm building this on Apple MacBook Pro with an Apple M2 Max chip, running macOS 14.4.1.

The following issues appear to be relevant:

Notify maintainers

@gaelreyrol

Metadata

Please run nix-shell -p nix-info --run "nix-info -m" and paste the result.

"nix-shell -p nix-info --run 'nix-info -m'" output ```console these 13 paths will be fetched (0.85 MiB download, 5.37 MiB unpacked): /nix/store/yadm7dy9b4fbi3glavna0gql6ypp4p44-adv_cmds-119-locale /nix/store/ksjrvlm6pa9p72zpwadnkqvbxmld435j-apple-framework-CoreFoundation-11.0.0 /nix/store/y1pd6i0mjandhyp862rd40vzaal22ar0-bzip2-1.0.8-bin /nix/store/fmac8jpmhm93d42axw4x5iczqvd94j94-ed-1.19 /nix/store/qzfj17jksdszg9pb9gqasmyrbalkgfhy-gnu-config-2023-01-21 /nix/store/6skh3zxl4cfzc2nfsq6yy82zlp9mwgv1-gnumake-4.4.1 /nix/store/w9i36qv2yih293yrd57dvzla88mnynq9-openbsm-1.1 /nix/store/psj1za7jgh893yzpp4gpivv50wblmhp2-openpam-20170430 /nix/store/8vp4s34dz8zw65abwplggs4dhn3djgmb-patch-2.7.6 /nix/store/rjbx6izmqnczdb457glllns8asdal4kn-stdenv-darwin /nix/store/bhryazlbvazk3r0ckmb1z1rk12k97fi4-system_cmds-550.6 /nix/store/3gb081smi80xa8l40m7784sy4vl5g9jd-update-autotools-gnu-config-scripts-hook /nix/store/9dssnswmdkzpf68kwsrpqq6dgxpnx2nz-xz-5.4.3-bin copying path '/nix/store/yadm7dy9b4fbi3glavna0gql6ypp4p44-adv_cmds-119-locale' from 'https://cache.nixos.org'... copying path '/nix/store/6skh3zxl4cfzc2nfsq6yy82zlp9mwgv1-gnumake-4.4.1' from 'https://cache.nixos.org'... copying path '/nix/store/qzfj17jksdszg9pb9gqasmyrbalkgfhy-gnu-config-2023-01-21' from 'https://cache.nixos.org'... copying path '/nix/store/psj1za7jgh893yzpp4gpivv50wblmhp2-openpam-20170430' from 'https://cache.nixos.org'... copying path '/nix/store/w9i36qv2yih293yrd57dvzla88mnynq9-openbsm-1.1' from 'https://cache.nixos.org'... copying path '/nix/store/ksjrvlm6pa9p72zpwadnkqvbxmld435j-apple-framework-CoreFoundation-11.0.0' from 'https://cache.nixos.org'... copying path '/nix/store/y1pd6i0mjandhyp862rd40vzaal22ar0-bzip2-1.0.8-bin' from 'https://cache.nixos.org'... copying path '/nix/store/9dssnswmdkzpf68kwsrpqq6dgxpnx2nz-xz-5.4.3-bin' from 'https://cache.nixos.org'... copying path '/nix/store/fmac8jpmhm93d42axw4x5iczqvd94j94-ed-1.19' from 'https://cache.nixos.org'... copying path '/nix/store/3gb081smi80xa8l40m7784sy4vl5g9jd-update-autotools-gnu-config-scripts-hook' from 'https://cache.nixos.org'... copying path '/nix/store/8vp4s34dz8zw65abwplggs4dhn3djgmb-patch-2.7.6' from 'https://cache.nixos.org'... copying path '/nix/store/bhryazlbvazk3r0ckmb1z1rk12k97fi4-system_cmds-550.6' from 'https://cache.nixos.org'... copying path '/nix/store/rjbx6izmqnczdb457glllns8asdal4kn-stdenv-darwin' from 'https://cache.nixos.org'... /nix/store/rjbx6izmqnczdb457glllns8asdal4kn-stdenv-darwin/setup: line 138: cd: frontend/components: No such file or directory pre-commit installed at .git/hooks/pre-commit - system: `"aarch64-darwin"` - host os: `Darwin 23.4.0, macOS 14.4.1` - multi-user?: `yes` - sandbox: `no` - version: `nix-env (Nix) 2.21.0` - channels(root): `"nixpkgs"` - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixpkgs` ```

Add a :+1: reaction to issues you find important.

gaelreyrol commented 6 months ago

Hi @seh,

It seems the error comes from the Go module github.com/shoenig/go-m1cpu used by otel-desktop-viewer which is using the version 0.1.4. I think the version 0.1.5 or higher will solve this issue.

Sadly I don't have any MacOS device to debug this. You can try to clone the repository, update the module and apply the patch in the derivation.

seh commented 6 months ago

You can try to clone the repository, update the module and apply the patch in the derivation.

Which repository and which module? Do you mean the CtrlSpice/otel-desktop-viewer GitHub repository that mentions the go-m1cpu Go module in its go.mod file, or do you mean the NixOS/nixpkgs repository, introducing another "patches" entry?

https://github.com/NixOS/nixpkgs/blob/ff0dbd94265ac470dda06a657d5fe49de93b4599/pkgs/by-name/ot/otel-desktop-viewer/package.nix#L20

gaelreyrol commented 6 months ago

@seh I mean updating the module by adding another patch :)