#!/bin/sh . /etc/libmaxminddb.cron.conf set -e [ -z "$MAXMINDDB_FILES" ] && MAXMINDDB_FILES="GeoLite2-City.mmdb" [ -z "$MAXMINDDB_URL" ] && MAXMINDDB_URL="https://download.maxmind.com/geoip/databases" [ -z "$MAXMINDDB_LIBDIR" ] && MAXMINDDB_LIBDIR="/var/lib/libmaxminddb" [ -z "$MAXMINDDB_LICENSE_KEY" ] && { echo "No MaxMind license key found; exiting. Please enter your license key into /etc/libmaxminddb.cron.conf"; exit 1; } [ -z "$MAXMINDDB_USER_ID" ] && { echo "No MaxMind user id found; exiting. Please enter your user id into /etc/libmaxminddb.cron.conf"; exit 1; } clean_up() { [ -n "$TMPDIR" ] && rm -rf "$TMPDIR" } trap clean_up EXIT TERM INT QUIT TMPDIR="$(mktemp -d)" for filename in $MAXMINDDB_FILES; do EDITION_ID=$(echo "${filename}" | sed 's/\.mmdb$//') curl --silent -L -u "${MAXMINDDB_USER_ID}:${MAXMINDDB_LICENSE_KEY}" "${MAXMINDDB_URL}/${EDITION_ID}/download?suffix=tar.gz" -o "$TMPDIR/${filename}.tar.gz" tar xf "$TMPDIR/${filename}.tar.gz" -C "$TMPDIR" --strip-components=1 mv "$TMPDIR/$filename" "$MAXMINDDB_LIBDIR" done exit 0