1*4882a593Smuzhiyun#!/bin/bash -e 2*4882a593Smuzhiyun 3*4882a593SmuzhiyunSCRIPTS_DIR="${SCRIPTS_DIR:-$(dirname "$(realpath "$0")")}" 4*4882a593Smuzhiyun 5*4882a593Smuzhiyunif ! ping google.com -c 1 -W 1 &>/dev/null; then 6*4882a593Smuzhiyun echo -e "\e[35m" 7*4882a593Smuzhiyun echo "Your network is not able to access google.com" 8*4882a593Smuzhiyun echo "Please setup a VPN to bypass the GFW." 9*4882a593Smuzhiyun echo -e "\e[0m" 10*4882a593Smuzhiyun exit 1 11*4882a593Smuzhiyunfi 12*4882a593Smuzhiyun 13*4882a593Smuzhiyunif ! which zstd >/dev/null 2>&1; then 14*4882a593Smuzhiyun echo -e "\e[35m" 15*4882a593Smuzhiyun echo "Your zstd is missing" 16*4882a593Smuzhiyun echo "Please install it:" 17*4882a593Smuzhiyun echo "sudo apt-get install zstd" 18*4882a593Smuzhiyun echo -e "\e[0m" 19*4882a593Smuzhiyun exit 1 20*4882a593Smuzhiyunfi 21*4882a593Smuzhiyun 22*4882a593SmuzhiyunPYTHON3_MIN_VER=$(python3 --version | cut -d'.' -f2) 23*4882a593Smuzhiyunif [ "${PYTHON3_MIN_VER:-0}" -lt 6 ]; then 24*4882a593Smuzhiyun echo -e "\e[35m" 25*4882a593Smuzhiyun echo "Your python3 is too old for yocto: $(python3 --version)" 26*4882a593Smuzhiyun echo "Please update it:" 27*4882a593Smuzhiyun "$SCRIPTS_DIR/install-python3.sh" 28*4882a593Smuzhiyun echo -e "\e[0m" 29*4882a593Smuzhiyun exit 1 30*4882a593Smuzhiyunfi 31*4882a593Smuzhiyun 32*4882a593Smuzhiyun# The yocto's e2fsprogs doesn't support new features like 33*4882a593Smuzhiyun# metadata_csum_seed and orphan_file 34*4882a593Smuzhiyunif grep -wq metadata_csum_seed /etc/mke2fs.conf; then 35*4882a593Smuzhiyun echo -e "\e[35m" 36*4882a593Smuzhiyun echo "Your mke2fs is too new: $(mke2fs -V 2>&1 | head -n 1)" 37*4882a593Smuzhiyun echo "Please downgrade it:" 38*4882a593Smuzhiyun "$SCRIPTS_DIR/install-e2fsprogs.sh" 39*4882a593Smuzhiyun echo -e "\e[0m" 40*4882a593Smuzhiyun exit 1 41*4882a593Smuzhiyunfi 42