zaphyra's git: gpx-map

render gpx files to tiles and display them on a map

1 
2 
3 
4 
5 
6 
7 
8 
9 
10 
11 
12 
13 
14 
15 
16 
17 
18 
19 
20 
21 
22 
23 
24 
25 
26 
27 
28 
29 
30 
31 
32 
33 
34 
35 
36 
37 
38 
39 
40 
41 
42 
43 
44 
45 
46 
47 
48 
49 
50 
51 
52 
53 
54 
55 
56 
{

  description = "render gpx files to tiles and display them on a map";

  inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.11";

  outputs =
    inputs:
    let
      forAllSystems =
        function:
        inputs.nixpkgs.lib.genAttrs
          [
            "x86_64-linux"
            "aarch64-linux"
            "aarch64-darwin"
          ]
          (
            system:
            function (
              import inputs.nixpkgs {
                system = system;
                overlays = [ inputs.self.overlays.default ];
              }
            )
          );

    in
    {

      overlays.default = final: prev: (import ./nix/packages prev);
      packages = forAllSystems (pkgs: (import ./nix/packages pkgs));

      apps = forAllSystems (pkgs: {
        default.type = "app";
        default.program = "${pkgs.generateTilesFromGPX}/bin/generateTilesFromGPX";
      });

      devShells = forAllSystems (pkgs: {
        default = pkgs.mkShell {
          nativeBuildInputs = with pkgs; [
            nodejs
            yarn
            datamaps
            generateTilesFromGPX
          ];
          shellHook = ''
            export NODE_OPTIONS=--openssl-legacy-provider
            alias serve="yarn build && php -S localhost:8080"
          '';
        };
      });

    };

}