1{
2 stdenv,
3 lib,
4 fetchFromGitHub,
5 pkg-config,
6 cmake,
7 wrapQtAppsHook,
8 libzip,
9 boost,
10 fftw,
11 libusb1,
12 qtbase,
13 qtsvg,
14 qtwayland,
15 python3,
16 desktopToDarwinBundle,
17}:
18
19stdenv.mkDerivation (finalAttrs: {
20 pname = "dsview";
21
22 version = "1.3.2";
23
24 src = fetchFromGitHub {
25 owner = "DreamSourceLab";
26 repo = "DSView";
27 rev = "v${finalAttrs.version}";
28 sha256 = "sha256-d/TfCuJzAM0WObOiBhgfsTirlvdROrlCm+oL1cqUrIs=";
29 };
30
31 patches = [
32 # Fix absolute install paths
33 ./install.patch
34 ];
35
36 # /build/source/libsigrok4DSL/strutil.c:343:19: error: implicit declaration of function 'strcasecmp'; did you mean 'g_strcasecmp'? []
37 env.NIX_CFLAGS_COMPILE = "-Wno-error=implicit-function-declaration";
38
39 nativeBuildInputs = [
40 cmake
41 pkg-config
42 wrapQtAppsHook
43 ]
44 ++ lib.optional stdenv.hostPlatform.isDarwin desktopToDarwinBundle;
45
46 buildInputs = [
47 boost
48 fftw
49 qtbase
50 qtsvg
51 libusb1
52 libzip
53 python3
54 ]
55 ++ lib.optional stdenv.hostPlatform.isLinux qtwayland;
56
57 doInstallCheck = true;
58
59 meta = {
60 description = "GUI program for supporting various instruments from DreamSourceLab, including logic analyzer, oscilloscope, etc";
61 mainProgram = "DSView";
62 homepage = "https://www.dreamsourcelab.com/";
63 license = lib.licenses.gpl3Plus;
64 platforms = lib.platforms.unix;
65 maintainers = with lib.maintainers; [
66 bachp
67 carlossless
68 ];
69 };
70})