{ stdenv, fetchurl }: let fetchDB = src: name: sha256: fetchurl { inherit name sha256; url = "https://geolite.maxmind.com/download/geoip/database/${src}"; }; # Annoyingly, these files are updated without a change in URL. This means that # builds will start failing every month or so, until the hashes are updated. version = "2015-09-08"; in stdenv.mkDerivation { name = "geolite-legacy-${version}"; srcGeoIP = fetchDB "GeoLiteCountry/GeoIP.dat.gz" "GeoIP.dat.gz" "11xv6ws0gzyj9bf1j1g67cklkkl6s4wb6z6n7kxjcxnn2274nfy0"; srcGeoIPv6 = fetchDB "GeoIPv6.dat.gz" "GeoIPv6.dat.gz" "1q5vgk522wq5ybhbw86zk8njgg611kc46a22vkrp08vklbni3akz"; srcGeoLiteCity = fetchDB "GeoLiteCity.dat.xz" "GeoIPCity.dat.xz" "07hx9g6kif75icsblcdk64rq13w2knpns4lrxdbf63mmqbqxj29g"; srcGeoLiteCityv6 = fetchDB "GeoLiteCityv6-beta/GeoLiteCityv6.dat.gz" "GeoIPCityv6.dat.gz" "0f3y1cpjfd4q55a2kvhzsklmmp6k19v9vsdsjxr4sapc8f5fgfc9"; srcGeoIPASNum = fetchDB "asnum/GeoIPASNum.dat.gz" "GeoIPASNum.dat.gz" "0jmvq6pllxj802yq1ygf487yk8qb30v7izrl82pyvqnjljkhkm5m"; srcGeoIPASNumv6 = fetchDB "asnum/GeoIPASNumv6.dat.gz" "GeoIPASNumv6.dat.gz" "0hcw69mfgqfhlrf4mwfb6qa1m107k2xrxjgr3fssk3l18x0bw2br"; meta = with stdenv.lib; { inherit version; description = "GeoLite Legacy IP geolocation databases"; homepage = https://geolite.maxmind.com/download/geoip; license = licenses.cc-by-sa-30; platforms = platforms.all; maintainers = with maintainers; [ nckx ]; }; builder = ./builder.sh; }