diff --git a/pkgs/development/haskell-modules/generic-builder.nix b/pkgs/development/haskell-modules/generic-builder.nix index 5eb4e1fac83a..2b597532b44d 100644 --- a/pkgs/development/haskell-modules/generic-builder.nix +++ b/pkgs/development/haskell-modules/generic-builder.nix @@ -47,6 +47,7 @@ , shellHook ? "" , coreSetup ? false # Use only core packages to build Setup.hs. , useCpphs ? false +, hardeningDisable ? [] } @ args: assert editedCabalFile != null -> revision != null; @@ -329,5 +330,6 @@ stdenv.mkDerivation ({ // optionalAttrs (preFixup != "") { inherit preFixup; } // optionalAttrs (postFixup != "") { inherit postFixup; } // optionalAttrs (dontStrip) { inherit dontStrip; } +// optionalAttrs (hardeningDisable != []) { inherit hardeningDisable; } // optionalAttrs (stdenv.isLinux) { LOCALE_ARCHIVE = "${glibcLocales}/lib/locale/locale-archive"; } ) diff --git a/pkgs/development/haskell-modules/lib.nix b/pkgs/development/haskell-modules/lib.nix index e96200578de5..246a9f305dba 100644 --- a/pkgs/development/haskell-modules/lib.nix +++ b/pkgs/development/haskell-modules/lib.nix @@ -62,6 +62,8 @@ rec { doHyperlinkSource = drv: overrideCabal drv (drv: { hyperlinkSource = true; }); dontHyperlinkSource = drv: overrideCabal drv (drv: { hyperlinkSource = false; }); + disableHardening = drv: flags: overrideCabal drv (drv: { hardeningDisable = flags; }); + sdistTarball = pkg: pkgs.lib.overrideDerivation pkg (drv: { name = "${drv.pname}-source-${drv.version}"; buildPhase = "./Setup sdist";