# ------------------------------------------------------------------------------
+AX_PYTHON_MODULE([location], [fatal])
+
+# ------------------------------------------------------------------------------
+
AC_ARG_WITH([systemd],
AS_HELP_STRING([--with-systemd], [Enable systemd support.])
)
--- /dev/null
+# ===========================================================================
+# https://www.gnu.org/software/autoconf-archive/ax_python_module.html
+# ===========================================================================
+#
+# SYNOPSIS
+#
+# AX_PYTHON_MODULE(modname[, fatal, python])
+#
+# DESCRIPTION
+#
+# Checks for Python module.
+#
+# If fatal is non-empty then absence of a module will trigger an error.
+# The third parameter can either be "python" for Python 2 or "python3" for
+# Python 3; defaults to Python 3.
+#
+# LICENSE
+#
+# Copyright (c) 2008 Andrew Collier
+#
+# Copying and distribution of this file, with or without modification, are
+# permitted in any medium without royalty provided the copyright notice
+# and this notice are preserved. This file is offered as-is, without any
+# warranty.
+
+#serial 9
+
+AU_ALIAS([AC_PYTHON_MODULE], [AX_PYTHON_MODULE])
+AC_DEFUN([AX_PYTHON_MODULE],[
+ if test -z $PYTHON;
+ then
+ if test -z "$3";
+ then
+ PYTHON="python3"
+ else
+ PYTHON="$3"
+ fi
+ fi
+ PYTHON_NAME=`basename $PYTHON`
+ AC_MSG_CHECKING($PYTHON_NAME module: $1)
+ $PYTHON -c "import $1" 2>/dev/null
+ if test $? -eq 0;
+ then
+ AC_MSG_RESULT(yes)
+ eval AS_TR_CPP(HAVE_PYMOD_$1)=yes
+ else
+ AC_MSG_RESULT(no)
+ eval AS_TR_CPP(HAVE_PYMOD_$1)=no
+ #
+ if test -n "$2"
+ then
+ AC_MSG_ERROR(failed to find required module $1)
+ exit 1
+ fi
+ fi
+])
+++ /dev/null
-#!/usr/bin/python
-
-import geoip2.database
-import geoip2.errors
-import os.path
-
-from . import base
-
-from .constants import DATADIR
-
-class GeoIP(base.Object):
- def init(self):
- path = os.path.join(DATADIR, "geoip/GeoLite2-Country.mmdb")
-
- # Open the database
- self.db = geoip2.database.Reader(path)
-
- def guess_from_address(self, address):
- # Query the database
- try:
- result = self.db.country(address)
-
- # Return nothing if the address could not be found
- except geoip2.errors.AddressNotFoundError:
- return
-
- if result:
- return result.country.iso_code
+++ /dev/null
-#!/bin/bash
-
-URL="http://geolite.maxmind.com/download/geoip/database/GeoLite2-Country.tar.gz"
-
-tmpfile=$(mktemp)
-
-# Download the file
-if ! wget "${URL}" -O "${tmpfile}"; then
- echo "Could not download the database file" >&2
- unlink "${tmpfile}"
-
- exit 1
-fi
-
-# Extract database from tarball
-if ! tar xvOf "${tmpfile}" "*/GeoLite2-Country.mmdb" > src/geoip/GeoLite2-Country.mmdb; then
- echo "Could not extract the database" >&2
- unlink "${tmpfile}"
-
- exit 1
-fi
-
-echo "OK"
-exit 0