/flypi

A collection of tools for tracking planes/helicopters/UFOs/whatever with ADS-B. Packaged for NixOS with packages and modules

Primary LanguageNixApache License 2.0Apache-2.0

FlyPi

A collection of tools for tracking planes/helicopters/UFOs/whatever with ADS-B. Packaged for NixOS.

Contents

Currently includes:

Usage

First you must add this flake to your flake's inputs

inputs = {
    # ...
    flypi.url = "github:jnsgruk/flypi";
}

Ensure that you configure your system to use the included pkgs overlay:

nixpkgs = {
    overlays = [ inputs.flypi.overlay ]
};

Next, configure your system using the included modules:

{ inputs, ...}: {
  imports = [
    inputs.flypi.nixosModules.dump1090
    inputs.flypi.nixosModules.fr24
    inputs.flypi.nixosModules.piaware
    inputs.flypi.nixosModules.planefinder
    inputs.flypi.nixosModules.realadsb
  ];

  services = {
    dump1090 = {
      enable = true;
      ui.enable = true;
    };
    fr24 = {
      enable = true;
      sharingKey = "deadbeef";
    };
    piaware = {
      enable = true;
      feederId = "deadbeef";
    };
    planefinder = {
      enable = true;
      shareCode = "deadbeef";
      latitude = "52.352";
      longitude = "-1.621";
    };
    realadsb = {
        enable = true;
        configLines = ''
        {
          "input": [{
            "type": "beast_tcp",
            "name": "dump1090",
            "host": "localhost",
            "port": 30005
          }],
          "output": [{
            "type": "lametric",
            "name": "LaMetric clock",
            "host": "192.168.1.63",
            "access_token": "deadbeef",
            "latitude": "52.352",
            "longitude": "-1.621"
          }]
        }
      '';
    };
  };
};

Browsable Endpoints

By default, the following endpoints/ports are exposed: