diff options
Diffstat (limited to 'pkgs/build-support/fetchzip/default.nix')
-rw-r--r-- | pkgs/build-support/fetchzip/default.nix | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/pkgs/build-support/fetchzip/default.nix b/pkgs/build-support/fetchzip/default.nix index 1145d32ba022..4a5381d71f20 100644 --- a/pkgs/build-support/fetchzip/default.nix +++ b/pkgs/build-support/fetchzip/default.nix @@ -11,10 +11,11 @@ stripRoot ? true , url , extraPostFetch ? "" +, name ? "source" , ... } @ args: lib.overrideDerivation (fetchurl ({ - name = args.name or (baseNameOf url); + inherit name; recursiveHash = true; @@ -23,7 +24,6 @@ lib.overrideDerivation (fetchurl ({ postFetch = '' export PATH=${unzip}/bin:$PATH - mkdir $out unpackDir="$TMPDIR/unpack" mkdir "$unpackDir" @@ -32,8 +32,6 @@ lib.overrideDerivation (fetchurl ({ renamed="$TMPDIR/${baseNameOf url}" mv "$downloadedFile" "$renamed" unpackFile "$renamed" - - shopt -s dotglob '' + (if stripRoot then '' if [ $(ls "$unpackDir" | wc -l) != 1 ]; then @@ -43,12 +41,11 @@ lib.overrideDerivation (fetchurl ({ fi fn=$(cd "$unpackDir" && echo *) if [ -f "$unpackDir/$fn" ]; then - mv "$unpackDir/$fn" "$out" - else - mv "$unpackDir/$fn"/* "$out/" + mkdir $out fi + mv "$unpackDir/$fn" "$out" '' else '' - mv "$unpackDir"/* "$out/" + mv "$unpackDir" "$out" '') #*/ + extraPostFetch; } // removeAttrs args [ "stripRoot" "extraPostFetch" ])) |