fetchpatch: Add includes to compliment excludes, and require that both not be non-empty.

This commit is contained in:
John Ericson 2018-06-04 22:29:22 -04:00 committed by Matthew Bauer
parent a260b3d681
commit 57bb96d659

View File

@ -5,7 +5,7 @@
# stripLen acts as the -p parameter when applying a patch. # stripLen acts as the -p parameter when applying a patch.
{ lib, fetchurl, patchutils }: { lib, fetchurl, patchutils }:
{ stripLen ? 0, extraPrefix ? null, excludes ? [], ... }@args: { stripLen ? 0, extraPrefix ? null, excludes ? [], includes ? [], ... }@args:
fetchurl ({ fetchurl ({
postFetch = '' postFetch = ''
@ -24,7 +24,9 @@ fetchurl ({
${patchutils}/bin/filterdiff \ ${patchutils}/bin/filterdiff \
-p1 \ -p1 \
${builtins.toString (builtins.map (x: "-x ${x}") excludes)} \ ${builtins.toString (builtins.map (x: "-x ${x}") excludes)} \
${builtins.toString (builtins.map (x: "-i ${x}") includes)} \
"$tmpfile" > "$out" "$tmpfile" > "$out"
${args.postFetch or ""} ${args.postFetch or ""}
''; '';
} // builtins.removeAttrs args ["stripLen" "extraPrefix" "excludes" "postFetch"]) meta.broken = excludes != [] && includes != [];
} // builtins.removeAttrs args ["stripLen" "extraPrefix" "excludes" "includes" "postFetch"])