Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ stdenvNoCC, fetchurl, dpkg, lib, qt5, autoPatchelfHook, SDL2 }: 2 3stdenvNoCC.mkDerivation (finalAttrs: { 4 pname = "gamepad-tool"; 5 version = "1.2"; 6 7 src = fetchurl { 8 url = "https://generalarcade.com/gamepadtool/linux/gamepadtool_${finalAttrs.version}_amd64.deb"; 9 hash = "sha256-ZuB0TOyT2B5QkU1o5h3/8PL85tBq06hlz5YclRanD88="; 10 }; 11 12 nativeBuildInputs = [ dpkg qt5.wrapQtAppsHook autoPatchelfHook ]; 13 14 unpackCmd = '' 15 mkdir -p root 16 dpkg-deb -x $curSrc root 17 ''; 18 19 dontBuild = true; 20 21 buildInputs = [ 22 SDL2 23 qt5.qtbase 24 ]; 25 26 installPhase = '' 27 runHook preInstall 28 29 mkdir -p $out/bin $out/share/applications 30 cp usr/bin/gamepad-tool $out/bin 31 cp -r usr/share/icons $out/share/icons 32 substitute usr/share/applications/gamepad-tool-debian.desktop \ 33 $out/share/applications/gamepad-tool.desktop \ 34 --replace "Exec=gamepad-tool" "Exec=$out/bin/gamepad-tool" \ 35 --replace "/usr/share/icons/hicolor/256x256/apps/gamepad-tool.png" "$out/share/icons/hicolor/256x256/apps/gamepad-tool.png" 36 runHook postInstall 37 ''; 38 39 meta = with lib; { 40 description = "A simple GUI tool to create/modify gamepad mappings for games that use SDL2 Game Controller API"; 41 homepage = "https://generalarcade.com/gamepadtool/"; 42 license = licenses.unfree; 43 platforms = [ "x86_64-linux" ]; 44 maintainers = with maintainers; [ gador ]; 45 }; 46})