summary refs log tree commit diff
path: root/pkgs/stdenv/adapters.nix
diff options
context:
space:
mode:
authorNicolas Pierron <nicolas.b.pierron@gmail.com>2009-11-16 22:23:11 +0000
committerNicolas Pierron <nicolas.b.pierron@gmail.com>2009-11-16 22:23:11 +0000
commit01e98e49b155d989d8c80066db6de910396cdcaa (patch)
treee6865c23fbbadcd11b92c9c715edc50b67898e8c /pkgs/stdenv/adapters.nix
parent29384d43f2d1d1ae86865405c00fdc1e196de246 (diff)
downloadnixpkgs-01e98e49b155d989d8c80066db6de910396cdcaa.tar
nixpkgs-01e98e49b155d989d8c80066db6de910396cdcaa.tar.gz
nixpkgs-01e98e49b155d989d8c80066db6de910396cdcaa.tar.bz2
nixpkgs-01e98e49b155d989d8c80066db6de910396cdcaa.tar.lz
nixpkgs-01e98e49b155d989d8c80066db6de910396cdcaa.tar.xz
nixpkgs-01e98e49b155d989d8c80066db6de910396cdcaa.tar.zst
nixpkgs-01e98e49b155d989d8c80066db6de910396cdcaa.zip
* 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
Diffstat (limited to 'pkgs/stdenv/adapters.nix')
-rw-r--r--pkgs/stdenv/adapters.nix16
1 files changed, 16 insertions, 0 deletions
diff --git a/pkgs/stdenv/adapters.nix b/pkgs/stdenv/adapters.nix
index db380366153..5760c4459ad 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; };
+    };
 }