Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ 2 lib, 3 stdenv, 4 fetchFromGitLab, 5 asciidoctor, 6 ninja, 7 gperf, 8 gawk, 9 pkg-config, 10 boost, 11 luajit_openresty, 12 fmt, 13 meson, 14 emilua, 15 qt6Packages, 16 openssl, 17 liburing, 18 gitUpdater, 19 runCommand, 20 xvfb-run, 21 qt6, # this 22}: 23 24stdenv.mkDerivation rec { 25 pname = "emilua-qt6"; 26 version = "1.2.2"; 27 28 src = fetchFromGitLab { 29 owner = "emilua"; 30 repo = "qt6"; 31 rev = "v${version}"; 32 hash = "sha256-Ch99ntLreiOjACxyJVR4174sHJT8EYXzDGPdysqmBXM="; 33 }; 34 35 buildInputs = with qt6Packages; [ 36 qtbase 37 qtdeclarative 38 boost 39 luajit_openresty 40 emilua 41 fmt 42 openssl 43 liburing 44 ]; 45 46 nativeBuildInputs = with qt6Packages; [ 47 qttools 48 wrapQtAppsHook 49 gperf 50 gawk 51 asciidoctor 52 pkg-config 53 meson 54 ninja 55 ]; 56 57 passthru = { 58 updateScript = gitUpdater { rev-prefix = "v"; }; 59 tests.basic = 60 runCommand "test-basic-qt6" 61 { 62 buildInputs = [ 63 emilua 64 qt6 65 qt6Packages.wrapQtAppsHook 66 qt6Packages.qtbase 67 qt6Packages.qtdeclarative 68 xvfb-run 69 ]; 70 dontWrapQtApps = true; 71 } 72 '' 73 makeWrapper ${lib.getExe emilua} payload \ 74 ''${qtWrapperArgs[@]} \ 75 --add-flags ${./basic_test.lua} 76 xvfb-run ./payload 77 touch $out 78 ''; 79 }; 80 81 meta = with lib; { 82 description = "Qt6 bindings for Emilua"; 83 homepage = "https://emilua.org/"; 84 license = licenses.boost; 85 maintainers = with maintainers; [ 86 manipuladordedados 87 lucasew 88 ]; 89 platforms = platforms.linux; 90 }; 91}