#!/bin/bash

set -e

baseurl="https://geolite.maxmind.com/download/geoip/database"
geoipdir='/var/lib/GeoIP2'

tempdir=`mktemp -d`
cd "$tempdir"
trap "/bin/rm -rf $tempdir" EXIT

sources=(GeoLite2-City.tar.gz GeoLite2-Country.tar.gz GeoLite2-ASN.tar.gz)
targets=(GeoLite2-City.mmdb   GeoLite2-Country.mmdb   GeoLite2-ASN.mmdb)

verbose=
if [ -t 0 ]; then
  verbose="-#"
fi
skiplarge=

i=0
while [ $i -lt ${#sources[@]} ]; do
  [ -z "$verbose" ] || echo "${sources[$i]} ..."
  if curl ${verbose:--s} -f -o "$tempdir/${sources[$i]}" "$baseurl/${sources[$i]}"; then
    tar --wildcards --strip-components 1 -xvzf ${sources[$i]} */${targets[$i]}
    mv ${targets[$i]} "$geoipdir/${targets[$i]}"
  fi
  i=$((i+1))
done
