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"