From 51e87881675034c75a9830678519d04536ef768d Mon Sep 17 00:00:00 2001 From: deftdawg Date: Thu, 8 Dec 2022 18:35:48 -0500 Subject: [PATCH] Add check_available_memory_and_disk to BuildLinux.sh --- BuildLinux.sh | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/BuildLinux.sh b/BuildLinux.sh index 6bdbf1464..f862d4cc0 100755 --- a/BuildLinux.sh +++ b/BuildLinux.sh @@ -7,6 +7,26 @@ export CMAKE_BUILD_PARALLEL_LEVEL=${NCORES} FOUND_GTK2=$(dpkg -l libgtk* | grep gtk2) FOUND_GTK3=$(dpkg -l libgtk* | grep gtk-3) +function check_available_memory_and_disk() { + FREE_MEM_GB=$(free -g -t | grep 'Mem:' | rev | cut -d" " -f1 | rev) + MIN_MEM_GB=10 + + FREE_DISK_KB=$(df -k . | tail -1 | awk '{print $4}') + MIN_DISK_KB=$((10 * 1024 * 1024)) + + if [ ${FREE_MEM_GB} -le ${MIN_MEM_GB} ]; then + echo -e "\nERROR: Bambu Studio Builder requires at least ${MIN_MEM_GB}G of 'available' mem (systen has only ${FREE_MEM_GB}G available)" + echo && free -h && echo + exit 2 + fi + + if [[ ${FREE_DISK_KB} -le ${MIN_DISK_KB} ]]; then + echo -e "\nERROR: Bambu Studio Builder requires at least $(echo $MIN_DISK_KB |awk '{ printf "%.1fG\n", $1/1024/1024; }') (systen has only $(echo ${FREE_DISK_KB} | awk '{ printf "%.1fG\n", $1/1024/1024; }') disk free)" + echo && df -h . && echo + exit 1 + fi +} + unset name while getopts ":dsiuhgb" opt; do case ${opt} in @@ -133,6 +153,8 @@ then mkdir deps/build fi +check_available_memory_and_disk + if [[ -n "$BUILD_DEPS" ]] then echo "[3/9] Configuring dependencies..."