default.nix (1292B)
1 { 2 lib, 3 stdenv, 4 fetchFromGitHub, 5 cmake, 6 desktopToDarwinBundle, 7 wrapQtAppsHook, 8 qtsvg, 9 qtwebsockets, 10 qtx11extras, 11 mosquitto, 12 libdwarf, 13 protobuf, 14 zeromq, 15 zstd, 16 }: 17 18 stdenv.mkDerivation (finalAttrs: { 19 pname = "plotjuggler"; 20 version = "3.9.3"; 21 22 src = fetchFromGitHub { 23 owner = "facontidavide"; 24 repo = "PlotJuggler"; 25 rev = finalAttrs.version; 26 hash = "sha256-tcEcFGLLEHsBDb3sBEPs/WmDf7NNnwL/hbme5XfMgJI="; 27 }; 28 29 postPatch = '' 30 substituteInPlace CMakeLists.txt \ 31 --replace-fail "set(PJ_PLUGIN_INSTALL_DIRECTORY bin)" "set(PJ_PLUGIN_INSTALL_DIRECTORY lib/plugins)" 32 substituteInPlace plotjuggler_app/mainwindow.cpp \ 33 --replace-fail "QCoreApplication::applicationDirPath()" "\"$out/lib/plugins\"" 34 ''; 35 36 nativeBuildInputs = [ 37 cmake 38 wrapQtAppsHook 39 ] ++ lib.optional stdenv.isDarwin desktopToDarwinBundle; 40 41 buildInputs = [ 42 qtsvg 43 qtwebsockets 44 mosquitto 45 libdwarf 46 protobuf 47 zeromq 48 zstd 49 ] ++ lib.optionals stdenv.isLinux [ qtx11extras ]; 50 51 meta = { 52 description = "The Time Series Visualization Tool"; 53 homepage = "https://www.plotjuggler.io/"; 54 license = lib.licenses.mpl20; 55 maintainers = [ lib.maintainers.sikmir ]; 56 platforms = lib.platforms.unix; 57 broken = true; 58 }; 59 })