package.nix (1913B)
1 { 2 lib, 3 fetchFromGitHub, 4 python3Packages, 5 lat-lon-parser, 6 }: 7 8 python3Packages.buildPythonApplication (finalAttrs: { 9 pname = "maptoposter"; 10 version = "0.3.0-unstable-2026-01-30"; 11 pyproject = true; 12 13 src = fetchFromGitHub { 14 owner = "originalankur"; 15 repo = "maptoposter"; 16 rev = "fffad0c276f5bbab1e6f242144126c574f72705a"; 17 hash = "sha256-deHv04POhh3GOa3EESSvF2YqxXiWR3ILivgh1aGXlZk="; 18 leaveDotGit = true; 19 }; 20 21 postPatch = '' 22 substituteInPlace create_map_poster.py font_management.py \ 23 --replace-warn "FONTS_DIR = \"fonts\"" "FONTS_DIR = \"$out/share/maptoposter/fonts\"" \ 24 --replace-warn "THEMES_DIR = \"themes\"" "THEMES_DIR = \"$out/share/maptoposter/themes\"" 25 ''; 26 27 build-system = with python3Packages; [ setuptools ]; 28 29 pythonRelaxDeps = true; 30 31 dependencies = with python3Packages; [ 32 certifi 33 charset-normalizer 34 contourpy 35 cycler 36 fonttools 37 geographiclib 38 geopandas 39 geopy 40 idna 41 kiwisolver 42 lat-lon-parser 43 matplotlib 44 networkx 45 numpy 46 osmnx 47 packaging 48 pandas 49 pillow 50 pyogrio 51 pyparsing 52 pyproj 53 python-dateutil 54 pytz 55 requests 56 scipy 57 shapely 58 tqdm 59 tzdata 60 urllib3 61 ]; 62 63 postInstall = '' 64 site_packages=$out/lib/${python3Packages.python.libPrefix}/site-packages 65 install -Dm644 font_management.py $site_packages 66 install -Dm644 fonts/* -t $out/share/maptoposter/fonts 67 install -Dm644 themes/* -t $out/share/maptoposter/themes 68 69 makeWrapper ${python3Packages.python.interpreter} $out/bin/create_map_poster \ 70 --prefix PYTHONPATH : $PYTHONPATH:$(toPythonPath "$out") \ 71 --add-flags "$site_packages/create_map_poster.py" 72 ''; 73 74 meta = { 75 description = "City Map Poster Generator"; 76 homepage = "https://github.com/originalankur/maptoposter"; 77 license = lib.licenses.mit; 78 maintainers = [ lib.maintainers.sikmir ]; 79 }; 80 })
