Skip to content

Instantly share code, notes, and snippets.

@danhper
Last active April 22, 2020 13:11
Show Gist options
  • Save danhper/cec8298ab95e45b94c60c968fe27c352 to your computer and use it in GitHub Desktop.
Save danhper/cec8298ab95e45b94c60c968fe27c352 to your computer and use it in GitHub Desktop.
#!/bin/bash
version="7.0.7"
fallback_mirror="http://us1.php.net/get/php-$version.tar.bz2/from/this/mirror"
mirrors=$(curl -s https://secure.php.net/get/php-$version.tar.bz2/from/a/mirror | grep -Eo 'http://.+/from/this/mirror')
country=$(curl -s ipinfo.io | sed -n 's/\s*"country": "\(.\+\)",/\1/p' | tr '[:upper:]' '[:lower:]')
user_mirror=""
for mirror in $mirrors; do
if [ "$country" = ${mirror:7:2} ]; then
user_mirror=$mirror
break
fi
done
if [ -z "$user_mirror" ]; then
user_mirror=$fallback_mirror
fi
curl -#L $user_mirror > php-$version.tar.bz2
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment