diff options
Diffstat (limited to 'nixpkgs/pkgs/development/tools/misc/coreboot-toolchain/update.sh')
-rwxr-xr-x | nixpkgs/pkgs/development/tools/misc/coreboot-toolchain/update.sh | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/tools/misc/coreboot-toolchain/update.sh b/nixpkgs/pkgs/development/tools/misc/coreboot-toolchain/update.sh new file mode 100755 index 000000000000..fc758e4ab021 --- /dev/null +++ b/nixpkgs/pkgs/development/tools/misc/coreboot-toolchain/update.sh @@ -0,0 +1,38 @@ +#!/usr/bin/env nix-shell +#!nix-shell --pure -i bash -p nix cacert git getopt + +# shellcheck shell=bash + +if [ ! -d .git ]; then + echo "This script needs to be run from the root directory of nixpkgs. Exiting." + exit 1 +fi + +pkg_dir="$(dirname "$0")" + +src="$(nix-build . --no-out-link -A coreboot-toolchain.i386.src)" +urls=$("${src}/util/crossgcc/buildgcc" -u) + +tmp=$(mktemp) +echo '{ fetchurl }: [' >"$tmp" + +for url in $urls; do + name="$(basename "$url")" + hash="$(nix-prefetch-url "$url")" + + cat <<EOF >>"$tmp" + { + name = "$name"; + archive = fetchurl { + sha256 = "$hash"; + url = "$url"; + }; + } +EOF +done + +echo ']' >>"$tmp" + +sed -ie 's/https\:\/\/ftpmirror\.gnu\.org/mirror\:\/\/gnu/g' "$tmp" + +mv "$tmp" "${pkg_dir}/sources.nix" |