default.nix (1245B)
1 { lib, stdenv, fetchurl, osmium-tool }: 2 3 stdenv.mkDerivation rec { 4 pname = "osm-extracts"; 5 version = "230520"; 6 7 src = fetchurl { 8 url = "https://download.geofabrik.de/russia/northwestern-fed-district-${version}.osm.pbf"; 9 hash = "sha256-n1VyJNcdURWRpCHuYyeabU/FNkNJ9oe/7/TKEP8iqtA="; 10 }; 11 12 dontUnpack = true; 13 14 nativeBuildInputs = [ osmium-tool ]; 15 16 buildPhase = '' 17 runHook preBuild 18 19 for region in RU-{ARK,KO,KR,LEN,MUR,NEN,NGR,PSK,SPE,VLG}; do 20 osmium tags-filter -o $region-boundary.osm $src r/ISO3166-2=$region 21 osmium extract -p $region-boundary.osm $src --set-bounds -s simple -o $region.osm.pbf 22 osmium export $region-boundary.osm -o $region-boundary.geojson 23 osmium tags-filter -o $region-water.osm $region.osm.pbf a/natural=water 24 osmium export $region-water.osm -o $region-water.geojson 25 done 26 27 runHook postBuild 28 ''; 29 30 installPhase = '' 31 install -Dm644 *.geojson *.osm *.osm.pbf -t $out 32 ''; 33 34 meta = with lib; { 35 description = "Administrative boundaries"; 36 homepage = "https://wiki.openstreetmap.org/wiki/Tag:boundary%3Dadministrative"; 37 license = licenses.free; 38 maintainers = [ maintainers.sikmir ]; 39 platforms = platforms.all; 40 skip.ci = true; 41 }; 42 }