Unverified Commit 02821c6a authored by Randy Eckenrode's avatar Randy Eckenrode Committed by GitHub
Browse files

haskell.compiler.ghc*Binary: work around com.apple.provenance xattr (#413450)

parents a94d9d11 759f2243
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -388,6 +388,15 @@ stdenv.mkDerivation {
  # calls install-strip ...
  dontBuild = true;

  # GHC tries to remove xattrs when installing to work around Gatekeeper
  # (see https://gitlab.haskell.org/ghc/ghc/-/issues/17418). This step normally
  # succeeds in nixpkgs because xattrs are not allowed in the store, but it
  # can fail when a file has the `com.apple.provenance` xattr, and it can’t be
  # modified (such as target of the symlink to `libiconv.dylib`).
  # The `com.apple.provenance` xattr is a new feature of macOS as of macOS 13.
  # See: https://eclecticlight.co/2023/03/13/ventura-has-changed-app-quarantine-with-a-new-xattr/
  makeFlags = lib.optionals stdenv.buildPlatform.isDarwin [ "XATTR=/does-not-exist" ];

  # Patch scripts to include runtime dependencies in $PATH.
  postInstall = ''
    for i in "$out/bin/"*; do
+9 −0
Original line number Diff line number Diff line
@@ -178,6 +178,15 @@ stdenv.mkDerivation rec {
  # calls install-strip ...
  dontBuild = true;

  # GHC tries to remove xattrs when installing to work around Gatekeeper
  # (see https://gitlab.haskell.org/ghc/ghc/-/issues/17418). This step normally
  # succeeds in nixpkgs because xattrs are not allowed in the store, but it
  # can fail when a file has the `com.apple.provenance` xattr, and it can’t be
  # modified (such as target of the symlink to `libiconv.dylib`).
  # The `com.apple.provenance` xattr is a new feature of macOS as of macOS 13.
  # See: https://eclecticlight.co/2023/03/13/ventura-has-changed-app-quarantine-with-a-new-xattr/
  makeFlags = lib.optionals stdenv.buildPlatform.isDarwin [ "XATTR=/does-not-exist" ];

  # Patch scripts to include runtime dependencies in $PATH.
  postInstall = ''
    for i in "$out/bin/"*; do
+9 −0
Original line number Diff line number Diff line
@@ -342,6 +342,15 @@ stdenv.mkDerivation {
  # calls install-strip ...
  dontBuild = true;

  # GHC tries to remove xattrs when installing to work around Gatekeeper
  # (see https://gitlab.haskell.org/ghc/ghc/-/issues/17418). This step normally
  # succeeds in nixpkgs because xattrs are not allowed in the store, but it
  # can fail when a file has the `com.apple.provenance` xattr, and it can’t be
  # modified (such as target of the symlink to `libiconv.dylib`).
  # The `com.apple.provenance` xattr is a new feature of macOS as of macOS 13.
  # See: https://eclecticlight.co/2023/03/13/ventura-has-changed-app-quarantine-with-a-new-xattr/
  makeFlags = lib.optionals stdenv.buildPlatform.isDarwin [ "XATTR=/does-not-exist" ];

  # Patch scripts to include runtime dependencies in $PATH.
  postInstall = ''
    for i in "$out/bin/"*; do
+9 −0
Original line number Diff line number Diff line
@@ -326,6 +326,15 @@ stdenv.mkDerivation {
  # calls install-strip ...
  dontBuild = true;

  # GHC tries to remove xattrs when installing to work around Gatekeeper
  # (see https://gitlab.haskell.org/ghc/ghc/-/issues/17418). This step normally
  # succeeds in nixpkgs because xattrs are not allowed in the store, but it
  # can fail when a file has the `com.apple.provenance` xattr, and it can’t be
  # modified (such as target of the symlink to `libiconv.dylib`).
  # The `com.apple.provenance` xattr is a new feature of macOS as of macOS 13.
  # See: https://eclecticlight.co/2023/03/13/ventura-has-changed-app-quarantine-with-a-new-xattr/
  makeFlags = lib.optionals stdenv.buildPlatform.isDarwin [ "XATTR=/does-not-exist" ];

  # Patch scripts to include runtime dependencies in $PATH.
  postInstall =
    ''