aboutsummaryrefslogtreecommitdiffstats
path: root/download.sh
blob: 7fd9d47124f6df94d4d762e85564ec3e5faf15c5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# Packages

download()
{
    tput civis
    local url=$1
    echo -n "    "
    wget -nc -q --show-progress --progress=dot $url 2>&1 | grep --line-buffered "%" | \
        sed -u -e "s,\.,,g" | awk '{printf("\b\b\b\b%4s", $2)}'
    echo -ne "\b\b\b\b\n"
    tput cnorm
}

cat packages.csv patches.csv | while read line; do
    NAME="$(echo $line | cut -d\, -f1)"
    VERSION="$(echo $line | cut -d\, -f2)"
    URL="$(echo $line | cut -d\, -f3 | sed "s/@/${VERSION}/g")"
    MD5SUM="$(echo $line | cut -d\, -f4)"
    CACHEFILE="$(basename "${URL}")"

    if [ ! -f "${CACHEFILE}" ]; then


        echo -ne "${PRP}Downloading ${YLW}${CACHEFILE}${RST}... "
	#wget -nc ${URL} -O ${LFS_SRC}/${CACHEFILE} --progress=dot -q --show-progress 2>&1 | awk 'NF>2 && $(NF-2) ~ /%/{printf "\r \t\t\t\t\t\t%s",$(NF-2)} END{print "\r    "}'
	download ${URL}
	if ! echo "${MD5SUM} ${LFS_SRC}/${CACHEFILE}" | md5sum -c > /dev/null 2>&1; then
            rm -f "${LFS_SRC}/${CACHEFILE}"
            echo -e "\n${GRN}Verification of ${YLW}${CACHEFILE} ${RED}failed! MD5 mismatch!${RST}"
            exit 1
        fi
    fi
done