From 108a6be92adc1e80839d90b552e72b8142140f6c Mon Sep 17 00:00:00 2001 From: Carl Dong Date: Tue, 25 May 2021 22:27:37 -0400 Subject: guix: Check for disk space availability before building --- contrib/guix/guix-build | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'contrib/guix/guix-build') diff --git a/contrib/guix/guix-build b/contrib/guix/guix-build index 69c244a6fa..29d6701b25 100755 --- a/contrib/guix/guix-build +++ b/contrib/guix/guix-build @@ -138,6 +138,28 @@ for host in $HOSTS; do esac done +################ +# VERSION_BASE should have enough space +################ + +avail_KiB="$(df -Pk "$VERSION_BASE" | sed 1d | tr -s ' ' | cut -d' ' -f4)" +total_required_KiB=0 +for host in $HOSTS; do + case "$host" in + *darwin*) required_KiB=440000 ;; + *mingw*) required_KiB=7600000 ;; + *) required_KiB=6400000 ;; + esac + total_required_KiB=$((total_required_KiB+required_KiB)) +done + +if (( total_required_KiB > avail_KiB )); then + total_required_GiB=$((total_required_KiB / 1048576)) + avail_GiB=$((avail_KiB / 1048576)) + echo "Performing a Bitcoin Core Guix build for the selected HOSTS requires ${total_required_GiB} GiB, however, only ${avail_GiB} GiB is available. Please free up some disk space before performing the build." + exit 1 +fi + ################ # Check that we can connect to the guix-daemon ################ -- cgit v1.2.3