1#! /usr/bin/env nix-shell
2#! nix-shell -p gawk nix -i bash
3
4# Retrieve sha256 hashes for each dependency in and format fetchNuGet calls
5echo "" > deps.nix
6urlbase="https://www.nuget.org/api/v2/package"
7cat << EOL
8# This file is autogenerated.
9# To regenerate, run "create_deps.sh \$PATH_TO_LANGUAGE_SERVER_CHECKOUT"
10
11{ fetchurl }: let
12
13 fetchNuGet = { name, version, sha256 }: fetchurl {
14 inherit sha256;
15 url = "$urlbase/\${name}/\${version}";
16 };
17
18in [
19EOL
20IFS=''
21while read line; do
22 name=$(echo $line | awk '{print $1}')
23 version=$(echo $line | awk '{print $2}')
24 sha256=$(nix-prefetch-url "$urlbase/$name/$version" 2>/dev/null)
25
26 if [ -n "$sha256" ]; then
27 cat << EOL
28
29 (fetchNuGet {
30 name = "$name";
31 version = "$version";
32 sha256 = "$sha256";
33 })
34EOL
35 fi
36done < $1
37cat << EOL
38
39]
40EOL