1{
2 lib,
3 stdenv,
4 fetchgit,
5 pkg-config,
6 cmake,
7 glib,
8 boost,
9 libsigrok,
10 libsigrokdecode,
11 libserialport,
12 libzip,
13 libftdi1,
14 hidapi,
15 glibmm,
16 pcre,
17 python3,
18 qtsvg,
19 qttools,
20 bluez,
21 wrapQtAppsHook,
22 desktopToDarwinBundle,
23}:
24
25stdenv.mkDerivation {
26 pname = "pulseview";
27 version = "0.4.2-unstable-2024-03-14";
28
29 src = fetchgit {
30 url = "git://sigrok.org/pulseview";
31 rev = "d00efc65ef47090b71c4da12797056033bee795f";
32 hash = "sha256-MwfMUqV3ejxesg+3cFeXVB5hwg4r0cOCgHJuH3ZLmNE=";
33 };
34
35 nativeBuildInputs = [
36 cmake
37 pkg-config
38 qttools
39 wrapQtAppsHook
40 ]
41 ++ lib.optional stdenv.hostPlatform.isDarwin desktopToDarwinBundle;
42
43 buildInputs = [
44 glib
45 boost
46 libsigrok
47 libsigrokdecode
48 libserialport
49 libzip
50 libftdi1
51 hidapi
52 glibmm
53 pcre
54 python3
55 qtsvg
56 ]
57 ++ lib.optionals stdenv.hostPlatform.isLinux [ bluez ];
58
59 meta = with lib; {
60 description = "Qt-based LA/scope/MSO GUI for sigrok (a signal analysis software suite)";
61 mainProgram = "pulseview";
62 homepage = "https://sigrok.org/";
63 license = licenses.gpl3Plus;
64 maintainers = with maintainers; [
65 bjornfor
66 vifino
67 ];
68 platforms = platforms.unix;
69 };
70}