#!/usr/bin/env nix-shell #! nix-shell -i sh -p nix-prefetch-git jq # shellcheck shell=sh # print usage if test -z "$1" || test "$1" = "-h"; then >&2 printf 'Usage: %s REV\n' "$0" >&2 printf 'Fetch and generate the Nix expression for the coreboot sources.\n' >&2 printf 'The result is written to stdout.\n\n' >&2 printf ' REV: \t revision of the coreboot git repository\n' exit 1 fi # fetch coreboot source code url=https://review.coreboot.org/coreboot.git info=$(nix-prefetch-git "$url" "$1" --fetch-submodules) coreboot=$(echo "$info" | jq .path -r) hash=$(echo "$info" | jq .sha256 -r) # extract version numbers and URLs buildgcc="$coreboot/util/crossgcc/buildgcc" # shellcheck disable=SC2046 export $(grep '^[A-Z]\+_VERSION=' "$buildgcc" | tail -n+2) urls=$(awk -F'=|"' '/^[A-Z]+_ARCHIVE=/{print $3}' "$buildgcc") # generate Nix expression cat <