Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ lib 2, buildGoModule 3, buildFHSEnv 4, binutils 5, dejavu_fonts 6, pkg-config 7, fetchFromGitHub 8, roboto 9, writeScript 10, xorg 11, libglvnd 12, addOpenGLRunpath 13, makeWrapper 14, gcc 15, go 16, flutter 17}: 18 19let 20 pname = "hover"; 21 version = "0.47.0"; 22 23 libs = with xorg; [ 24 libX11.dev 25 libXcursor.dev 26 libXext.dev 27 libXi.dev 28 libXinerama.dev 29 libXrandr.dev 30 libXrender.dev 31 libXfixes.dev 32 libXxf86vm 33 libglvnd.dev 34 xorgproto 35 ]; 36 hover = buildGoModule rec { 37 inherit pname version; 38 39 meta = with lib; { 40 description = "A build tool to run Flutter applications on desktop"; 41 homepage = "https://github.com/go-flutter-desktop/hover"; 42 license = licenses.bsd3; 43 platforms = platforms.linux; 44 maintainers = with maintainers; [ ericdallo ]; 45 }; 46 47 subPackages = [ "." ]; 48 49 vendorSha256 = "sha256-GDoX5d2aDfaAx9JsKuS4r8137t3swT6rgcCghmaThSM="; 50 51 src = fetchFromGitHub { 52 rev = "v${version}"; 53 owner = "go-flutter-desktop"; 54 repo = pname; 55 sha256 = "sha256-ch59Wx4g72u7x99807ppURI4I+5aJ/W8Zr35q8X68v4="; 56 }; 57 58 nativeBuildInputs = [ addOpenGLRunpath makeWrapper ]; 59 60 buildInputs = libs; 61 62 checkRun = false; 63 64 patches = [ 65 ./fix-assets-path.patch 66 ]; 67 68 postPatch = '' 69 sed -i 's|@assetsFolder@|'"''${out}/share/assets"'|g' internal/fileutils/assets.go 70 ''; 71 72 postInstall = '' 73 mkdir -p $out/share 74 cp -r assets $out/share/assets 75 chmod -R a+rx $out/share/assets 76 77 wrapProgram "$out/bin/hover" \ 78 --prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath libs} 79 ''; 80 81 postFixup = '' 82 addOpenGLRunpath $out/bin/hover 83 ''; 84 }; 85 86in 87buildFHSEnv rec { 88 name = pname; 89 targetPkgs = pkgs: [ 90 binutils 91 dejavu_fonts 92 flutter 93 gcc 94 go 95 hover 96 pkg-config 97 roboto 98 ] ++ libs; 99 100 runScript = "hover"; 101}