1 { lib, stdenv, fetchurl, makeDesktopItem, makeWrapper, unzip, mono, gitUpdater
5 pname = "mission-planner";
6 desktopItem = makeDesktopItem {
10 comment = "MissionPlanner GCS & Ardupilot configuration tool";
11 desktopName = "MissionPlanner";
12 genericName = "Ground Control Station";
14 in stdenv.mkDerivation rec {
20 "https://firmware.ardupilot.org/Tools/MissionPlanner/MissionPlanner-${version}.zip";
21 sha256 = "sha256-554fFDxHMo4jV3yrPdGgDYQ6XeW+TWdVIIkGQIBdrCQ=";
24 nativeBuildInputs = [ makeWrapper mono unzip ];
27 AOT_FILES = [ "MissionPlanner.exe" "MissionPlanner.*.dll" ];
31 for file in $AOT_FILES
40 mkdir -p $out/{bin,opt/mission-planner}
41 install -m 444 -D mpdesktop150.png $out/share/icons/mission-planner.png
42 cp -r ${desktopItem}/share/applications $out/share/
43 mv * $out/opt/mission-planner
44 makeWrapper ${mono}/bin/mono $out/bin/mission-planner \
45 --add-flags $out/opt/mission-planner/MissionPlanner.exe
49 passthru.updateScript = gitUpdater { };
52 description = "ArduPilot ground station";
53 mainProgram = "mission-planner";
55 Full-featured ground station application for the ArduPilot open source
56 autopilot project. Lets you both flash, configure and control ArduPilot
57 Plane, Copter and Rover targets.
59 homepage = "https://ardupilot.org/planner/";
60 license = licenses.gpl3Plus;
61 maintainers = with maintainers; [ wucke13 ];
62 platforms = platforms.all;