1 {lib, stdenv, fetchurl, unzip, makeDesktopItem, copyDesktopItems, nwjs
2 , wrapGAppsHook3, gsettings-desktop-schemas, gtk3 }:
4 stdenv.mkDerivation rec {
5 pname = "emuflight-configurator";
9 url = "https://github.com/emuflight/EmuConfigurator/releases/download/${version}/emuflight-configurator_${version}_linux64.zip";
10 sha256 = "sha256-7NcN1wF3BUClJBVm13VnV80N/+a2jAEIRqB/x9+GDEg=";
13 nativeBuildInputs = [ wrapGAppsHook3 unzip copyDesktopItems ];
15 buildInputs = [ gsettings-desktop-schemas gtk3 ];
18 mkdir -p $out/bin $out/share/${pname}
20 cp -r . $out/share/${pname}/
21 install -m 444 -D icon/emu_icon_128.png $out/share/icons/hicolor/128x128/apps/${pname}.png
23 makeWrapper ${nwjs}/bin/nw $out/bin/${pname} --add-flags $out/share/${pname}
31 comment = "Emuflight configuration tool";
32 desktopName = "Emuflight Configurator";
33 genericName = "Flight controller configuration tool";
38 description = "Emuflight flight control system configuration tool";
39 mainProgram = "emuflight-configurator";
41 A crossplatform configuration tool for the Emuflight flight control system.
42 Various types of aircraft are supported by the tool and by Emuflight, e.g.
43 quadcopters, hexacopters, octocopters and fixed-wing aircraft.
44 The application allows you to configure the Emuflight software running on any supported Emuflight target.
46 homepage = "https://github.com/emuflight/EmuConfigurator";
47 sourceProvenance = with sourceTypes; [ binaryNativeCode ];
48 license = licenses.gpl3Only;
49 maintainers = with maintainers; [ beezow ];
50 platforms = platforms.linux;