Skip to content

Build failure: timidity on *-darwin (noBrokenSymlinks and symlink permissions) #380436

@Rhys-T

Description

@Rhys-T

Nixpkgs version

  • Unstable (25.05)

Steps to reproduce

On macOS, run either of:

  • nix build nixpkgs\#timidity (requires flakes)
  • nix-build '<nixpkgs>' -A timidity

Can Hydra reproduce this build failure?

Yes, Hydra can reproduce this build failure.

Link to Hydra build job

x86_64: https://hydra.nixos.org/build/286953323 aarch64: https://hydra.nixos.org/build/287102877

Relevant log output

[…]
make[1]: Leaving directory '/private/tmp/nix-build-timidity-2.15.0.drv-1/TiMidity++-2.15.0'
Running phase: fixupPhase
@nix { "action": "setPhase", "phase": "fixupPhase" }
moving /nix/store/mag8qkp91s9jhkwkq3nhcsfk8r1wg2cz-timidity-2.15.0/man to /nix/store/mag8qkp91s9jhkwkq3nhcsfk8r1wg2cz-timidity-2.15.0/share/man
checking for references to /private/tmp/nix-build-timidity-2.15.0.drv-1/ in /nix/store/mag8qkp91s9jhkwkq3nhcsfk8r1wg2cz-timidity-2.15.0...
gzipping man pages under /nix/store/mag8qkp91s9jhkwkq3nhcsfk8r1wg2cz-timidity-2.15.0/share/man/
patching script interpreter paths in /nix/store/mag8qkp91s9jhkwkq3nhcsfk8r1wg2cz-timidity-2.15.0
stripping (with command strip and flags -S) in  /nix/store/mag8qkp91s9jhkwkq3nhcsfk8r1wg2cz-timidity-2.15.0/bin
[The log ends there without showing an error, but `nix build` reports `error: builder for '/nix/store/rybm0dqsmqfj7z3lxr4q5p34qwfbvb0d-timidity-2.15.0.drv' failed with exit code 1`.]

Additional context

All but one of the symlinks in the instruments.tar.gz tarball have their permissions set to 0000. This causes noBrokenSymlinks to fail silently1 at readlink on systems like Darwin/macOS that actually care about symlink permissions. It also seems to be the reason that turning on dontRewriteSymlinks on Darwin was necessary.

System metadata

  • system: "x86_64-darwin"
  • host os: Darwin 19.6.0, macOS 10.15.7
  • multi-user?: yes
  • sandbox: no
  • version: nix-env (Nix) 2.24.10
  • channels(root): "nixpkgs"
  • nixpkgs: /nix/var/nix/profiles/per-user/root/channels/nixpkgs

Note that while that channel is currently behind a bit on my machine, I'm ignoring it and using flakes when I reproduce this. I can also pull the nix-info -m from the GitHub runners where I originally saw this if you need them.

Notify maintainers

@MarcWeber


Note for maintainers: Please tag this issue in your pull request description. (i.e. Resolves #ISSUE.)

I assert that this issue is relevant for Nixpkgs

Is this issue important to you?

Add a 👍 reaction to issues you find important.

Footnotes

  1. Do I need to open a second issue for the fact that it's silent?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions