···149 });
150151152- /* Return a modified stdenv that builds packages with GCC's coverage
153- instrumentation. The coverage note files (*.gcno) are stored in
154- $out/.build, along with the source code of the package, to enable
155- programs like lcov to produce pretty-printed reports.
156- */
157 addCoverageInstrumentation = stdenv:
0158 overrideInStdenv stdenv [ pkgs.enableGCOVInstrumentation pkgs.keepBuildTree ];
159160161- /* Replace the meta.maintainers field of a derivation. This is useful
162- when you want to fork to update some packages without disturbing other
163- developers.
164-165- e.g.: in all-packages.nix:
166-167- # remove all maintainers.
168- defaultStdenv = replaceMaintainersField allStdenvs.stdenv pkgs [];
169- */
170 replaceMaintainersField = stdenv: pkgs: maintainers:
0171 stdenv.override (old: {
172 mkDerivationFromStdenv = overrideMkDerivationResult (pkg:
173 lib.recursiveUpdate pkg { meta.maintainers = maintainers; });
···193 });
194195196- /* Abort if the license predicate is not verified for a derivation
197- declared with mkDerivation.
198-199- One possible predicate to avoid all non-free packages can be achieved
200- with the following function:
201-202- isFree = license: with builtins;
203- if license == null then true
204- else if isList license then lib.all isFree license
205- else license != "non-free" && license != "unfree";
206-207- This adapter can be defined on the defaultStdenv definition. You can
208- use it by patching the all-packages.nix file or by using the override
209- feature of ~/.config/nixpkgs/config.nix .
210- */
211 validateLicenses = licensePred: stdenv:
0212 stdenv.override (old: {
213 mkDerivationFromStdenv = overrideMkDerivationResult (pkg:
214 let
···149 });
150151152+ # remove after 22.05 and before 22.11
0000153 addCoverageInstrumentation = stdenv:
154+ builtins.trace "'addCoverageInstrumentation' adapter is deprecated and will be removed before 22.11"
155 overrideInStdenv stdenv [ pkgs.enableGCOVInstrumentation pkgs.keepBuildTree ];
156157158+ # remove after 22.05 and before 22.11
00000000159 replaceMaintainersField = stdenv: pkgs: maintainers:
160+ builtins.trace "'replaceMaintainersField' adapter is deprecated and will be removed before 22.11"
161 stdenv.override (old: {
162 mkDerivationFromStdenv = overrideMkDerivationResult (pkg:
163 lib.recursiveUpdate pkg { meta.maintainers = maintainers; });
···183 });
184185186+ # remove after 22.05 and before 22.11
00000000000000187 validateLicenses = licensePred: stdenv:
188+ builtins.trace "'validateLicenses' adapter is deprecated and will be removed before 22.11"
189 stdenv.override (old: {
190 mkDerivationFromStdenv = overrideMkDerivationResult (pkg:
191 let