Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1#!/usr/bin/env nix-shell 2#! nix-shell -i bash -p nodejs libarchive prefetch-npm-deps moreutils jq 3# shellcheck shell=bash 4 5set -exuo pipefail 6 7cd -- "$(dirname -- "${BASH_SOURCE[0]}")" 8 9TMPDIR="$(mktemp -d)" 10trap 'rm -r -- "$TMPDIR"' EXIT 11 12pushd -- "$TMPDIR" 13npm pack mongosh --json | jq '.[0] | { version, integrity, filename }' > source.json 14bsdtar -x -f "$(jq -r .filename source.json)" 15 16pushd package 17npm install --omit=optional --package-lock-only 18popd 19 20DEPS="$(prefetch-npm-deps package/package-lock.json)" 21jq ".deps = \"$DEPS\"" source.json | sponge source.json 22 23popd 24 25cp -t . -- "$TMPDIR/source.json" "$TMPDIR/package/package-lock.json"