From 01e98e49b155d989d8c80066db6de910396cdcaa Mon Sep 17 00:00:00 2001 From: Nicolas Pierron Date: Mon, 16 Nov 2009 22:23:11 +0000 Subject: [PATCH] * Add a stdenv adapter which can remove all maintainers fields. This can be used to remove error reports from development branches. svn path=/nixpkgs/trunk/; revision=18377 --- pkgs/stdenv/adapters.nix | 16 ++++++++++++++++ pkgs/top-level/all-packages.nix | 3 ++- 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/pkgs/stdenv/adapters.nix b/pkgs/stdenv/adapters.nix index db3803661531..5760c4459ad5 100644 --- a/pkgs/stdenv/adapters.nix +++ b/pkgs/stdenv/adapters.nix @@ -186,4 +186,20 @@ rec { # `keepBuildTree' adapter as well. (cleanupBuildTree (keepBuildTree stdenv)); + + /* Replace the meta.maintainers field of a derivation. This is useful + when you want to fork to update some packages without disturbing other + developers. + + e.g.: in all-packages.nix: + + # remove all maintainers. + defaultStdenv = replaceMaintainersField allStdenvs.stdenv pkgs []; + */ + replaceMaintainersField = stdenv: pkgs: maintainers: stdenv // + { mkDerivation = args: + pkgs.lib.recursiveUpdate + (stdenv.mkDerivation args) + { meta.maintainers = maintainers; }; + }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 272f39c9400a..04b52299f03f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -237,7 +237,8 @@ let inherit (import ../stdenv/adapters.nix {inherit (pkgs) dietlibc fetchurl runCommand;}) overrideGCC overrideInStdenv overrideSetup useDietLibC useKlibc makeStaticBinaries addAttrsToDerivation - keepBuildTree cleanupBuildTree addCoverageInstrumentation; + keepBuildTree cleanupBuildTree addCoverageInstrumentation + replaceMaintainersField; ### BUILD SUPPORT