From 60370d7133072e1e9140bd444c464cc4bbb45a69 Mon Sep 17 00:00:00 2001 From: Robert Hensing Date: Wed, 7 Jul 2021 22:49:18 +0200 Subject: [PATCH] nixUnstable: patch boehmgc (nix#4944) As has been done in https://github.com/NixOS/nix/pull/4944 This introduces the boehmgc_nix and boehmgc_nixUnstable attributes which are useful for external packages that link with Nix and its boehmgc. (cherry picked from commit 596ac242af767b38e48af9076887b206dc72e472) --- pkgs/tools/package-management/nix/default.nix | 11 ++++++++--- pkgs/top-level/all-packages.nix | 13 ++++++++++++- 2 files changed, 20 insertions(+), 4 deletions(-) diff --git a/pkgs/tools/package-management/nix/default.nix b/pkgs/tools/package-management/nix/default.nix index 8fb6692c490..49da6f40dce 100644 --- a/pkgs/tools/package-management/nix/default.nix +++ b/pkgs/tools/package-management/nix/default.nix @@ -2,7 +2,8 @@ , storeDir ? "/nix/store" , stateDir ? "/nix/var" , confDir ? "/etc" -, boehmgc +, boehmgc_nix +, boehmgc_nixUnstable , Security }: @@ -205,7 +206,9 @@ in rec { sha256 = "sha256-cToMnZU3+UpjeiiXnG3clz9zn8Xk+TbB7UbqmLMrlFk="; }; - inherit storeDir stateDir confDir boehmgc; + boehmgc = boehmgc_nix; + + inherit storeDir stateDir confDir; }); nixUnstable = lib.lowPrio (callPackage common rec { @@ -220,7 +223,9 @@ in rec { sha256 = "sha256-ARRiLrDOK+JQtvVXsYegspENYimQzilvdTfO7eiBuaA="; }; - inherit storeDir stateDir confDir boehmgc; + boehmgc = boehmgc_nixUnstable; + + inherit storeDir stateDir confDir; }); diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 91a0792812b..ace98e80db3 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -14274,6 +14274,18 @@ in boehmgc = callPackage ../development/libraries/boehm-gc { }; boehmgc_766 = callPackage ../development/libraries/boehm-gc/7.6.6.nix { }; + boehmgc_nix = pkgs.boehmgc.override { + enableLargeConfig = true; + }; + boehmgc_nixUnstable = pkgs.boehmgc_nix.overrideAttrs (drv: { + patches = (drv.patches or []) ++ [ + # Part of the GC solution in https://github.com/NixOS/nix/pull/4944 + (pkgs.fetchpatch { + url = https://github.com/hercules-ci/nix/raw/5c58d84a76d96f269e3ff1e72c9c9ba5f68576af/boehmgc-coroutine-sp-fallback.diff; + sha256 = "sha256-JvnWVTlkltmQUs/0qApv/LPZ690UX1/2hEP+LYRwKbI="; + }) + ]; + }); boolstuff = callPackage ../development/libraries/boolstuff { }; @@ -30440,7 +30452,6 @@ in inherit (callPackage ../tools/package-management/nix { storeDir = config.nix.storeDir or "/nix/store"; stateDir = config.nix.stateDir or "/nix/var"; - boehmgc = boehmgc.override { enableLargeConfig = true; }; inherit (darwin.apple_sdk.frameworks) Security; }) nix