diff options
author | github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> | 2023-03-08 18:01:34 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-03-08 18:01:34 +0000 |
commit | 7072ae38b6f9a65b87a1cc37af07d61499210fa1 (patch) | |
tree | b7b5b48536a54e57511895a7e14656a19c5ad064 /pkgs/build-support | |
parent | 644e671d8012402b148df40d644cb2ba7892d034 (diff) | |
parent | 1e383aada51b416c6c27d4884d2e258df201bc11 (diff) | |
download | nixpkgs-7072ae38b6f9a65b87a1cc37af07d61499210fa1.tar nixpkgs-7072ae38b6f9a65b87a1cc37af07d61499210fa1.tar.gz nixpkgs-7072ae38b6f9a65b87a1cc37af07d61499210fa1.tar.bz2 nixpkgs-7072ae38b6f9a65b87a1cc37af07d61499210fa1.tar.lz nixpkgs-7072ae38b6f9a65b87a1cc37af07d61499210fa1.tar.xz nixpkgs-7072ae38b6f9a65b87a1cc37af07d61499210fa1.tar.zst nixpkgs-7072ae38b6f9a65b87a1cc37af07d61499210fa1.zip |
Merge master into staging-next
Diffstat (limited to 'pkgs/build-support')
-rw-r--r-- | pkgs/build-support/docker/default.nix | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/pkgs/build-support/docker/default.nix b/pkgs/build-support/docker/default.nix index bdc93f3643f..7fa5aeafc8e 100644 --- a/pkgs/build-support/docker/default.nix +++ b/pkgs/build-support/docker/default.nix @@ -229,6 +229,15 @@ rec { mount /dev/${vmTools.hd} disk cd disk + function dedup() { + declare -A seen + while read ln; do + if [[ -z "''${seen["$ln"]:-}" ]]; then + echo "$ln"; seen["$ln"]=1 + fi + done + } + if [[ -n "$fromImage" ]]; then echo "Unpacking base image..." mkdir image @@ -245,7 +254,8 @@ rec { parentID="$(cat "image/manifest.json" | jq -r '.[0].Config | rtrimstr(".json")')" fi - cat ./image/manifest.json | jq -r '.[0].Layers | .[]' > layer-list + # In case of repeated layers, unpack only the last occurrence of each + cat ./image/manifest.json | jq -r '.[0].Layers | .[]' | tac | dedup | tac > layer-list else touch layer-list fi |