Commit fa3ebc5a authored by Rhys-T's avatar Rhys-T
Browse files

timidity: fix symlink permissions for Darwin build

All but one of the symlinks in the instruments.tar.gz tarball have their
permissions set to 0000. This causes noBrokenSymlinks to fail silently
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.

Resolves #380436.
parent 1c7d92f0
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -114,9 +114,10 @@ stdenv.mkDerivation rec {
    cp ${./timidity.cfg} $out/share/timidity/timidity.cfg
    substituteAllInPlace $out/share/timidity/timidity.cfg
    tar --strip-components=1 -xf $instruments -C $out/share/timidity/
    # All but one of the symlinks in the instruments tarball have their permissions set to 0000.
    # This causes problems on systems like Darwin that actually use symlink permissions.
    chmod -Rh u+rwX $out/share/timidity/
  '';
  # This fixup step is unnecessary and fails on Darwin
  dontRewriteSymlinks = stdenv.hostPlatform.isDarwin;

  passthru.tests = nixosTests.timidity;