about summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorDmitry Kalinkin <dmitry.kalinkin@gmail.com>2018-12-21 17:40:40 -0500
committerGitHub <noreply@github.com>2018-12-21 17:40:40 -0500
commit62aea9510c81ca85a500b1814e7f978c3285fb7f (patch)
tree0804fa9a3592657de7c2ac3b39cdc9c0ca21e026 /pkgs
parent8ed71e836af37a5e79e61ae25d448e542a4c8c7d (diff)
parent3facb3bf793b9bf6514cb55bbae6c398adb8b386 (diff)
downloadnixlib-62aea9510c81ca85a500b1814e7f978c3285fb7f.tar
nixlib-62aea9510c81ca85a500b1814e7f978c3285fb7f.tar.gz
nixlib-62aea9510c81ca85a500b1814e7f978c3285fb7f.tar.bz2
nixlib-62aea9510c81ca85a500b1814e7f978c3285fb7f.tar.lz
nixlib-62aea9510c81ca85a500b1814e7f978c3285fb7f.tar.xz
nixlib-62aea9510c81ca85a500b1814e7f978c3285fb7f.tar.zst
nixlib-62aea9510c81ca85a500b1814e7f978c3285fb7f.zip
Merge pull request #51796 from bachp/dsview-0.99
dsview: init at 0.99
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/applications/science/electronics/dsview/default.nix47
-rw-r--r--pkgs/applications/science/electronics/dsview/install.patch15
-rw-r--r--pkgs/applications/science/electronics/dsview/libsigrok4dsl.nix28
-rw-r--r--pkgs/applications/science/electronics/dsview/libsigrokdecode4dsl.nix27
-rw-r--r--pkgs/top-level/all-packages.nix6
5 files changed, 123 insertions, 0 deletions
diff --git a/pkgs/applications/science/electronics/dsview/default.nix b/pkgs/applications/science/electronics/dsview/default.nix
new file mode 100644
index 000000000000..af3844f47312
--- /dev/null
+++ b/pkgs/applications/science/electronics/dsview/default.nix
@@ -0,0 +1,47 @@
+{ stdenv, fetchFromGitHub, pkgconfig, cmake, autoreconfHook,
+glib, libzip, boost, fftw, qtbase,
+libusb, makeWrapper, libsigrok4dsl, libsigrokdecode4dsl
+}:
+
+stdenv.mkDerivation rec {
+  name = "dsview-${version}";
+
+  version = "0.99";
+
+  src = fetchFromGitHub {
+      owner = "DreamSourceLab";
+      repo = "DSView";
+      rev = version;
+      sha256 = "189i3baqgn8k3aypalayss0g489xi0an9hmvyggvxmgg1cvcwka2";
+  };
+
+  postUnpack = ''
+    export sourceRoot=$sourceRoot/DSView
+  '';
+
+  patches = [
+    # Fix absolute install paths
+    ./install.patch
+  ];
+
+  nativeBuildInputs = [ cmake pkgconfig makeWrapper ];
+
+  buildInputs = [
+   boost fftw qtbase libusb libzip libsigrokdecode4dsl libsigrok4dsl
+  ];
+
+  enableParallelBuilding = true;
+
+  postFixup = ''
+    wrapProgram $out/bin/DSView --suffix QT_PLUGIN_PATH : \
+      ${qtbase.bin}/${qtbase.qtPluginPrefix}
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A GUI program for supporting various instruments from DreamSourceLab, including logic analyzer, oscilloscope, etc";
+    homepage = http://www.dreamsourcelab.com/;
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.bachp ];
+  };
+}
diff --git a/pkgs/applications/science/electronics/dsview/install.patch b/pkgs/applications/science/electronics/dsview/install.patch
new file mode 100644
index 000000000000..e30a28d80fa3
--- /dev/null
+++ b/pkgs/applications/science/electronics/dsview/install.patch
@@ -0,0 +1,15 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index c1c33e1..208a184 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -403,8 +403,8 @@ install(DIRECTORY res DESTINATION share/${PROJECT_NAME})
+ install(FILES icons/logo.png DESTINATION share/${PROJECT_NAME} RENAME logo.png)
+ install(FILES ../NEWS DESTINATION share/${PROJECT_NAME} RENAME NEWS)
+ install(FILES ../ug.pdf DESTINATION share/${PROJECT_NAME} RENAME ug.pdf)
+-install(FILES DreamSourceLab.rules DESTINATION /etc/udev/rules.d/)
+-install(FILES DSView.desktop DESTINATION /usr/share/applications/)
++install(FILES DreamSourceLab.rules DESTINATION etc/udev/rules.d/)
++install(FILES DSView.desktop DESTINATION share/applications/)
+ 
+ #===============================================================================
+ #= Packaging (handled by CPack)
diff --git a/pkgs/applications/science/electronics/dsview/libsigrok4dsl.nix b/pkgs/applications/science/electronics/dsview/libsigrok4dsl.nix
new file mode 100644
index 000000000000..4a681907e192
--- /dev/null
+++ b/pkgs/applications/science/electronics/dsview/libsigrok4dsl.nix
@@ -0,0 +1,28 @@
+{ stdenv, pkgconfig, autoreconfHook,
+glib, libzip, libserialport, check, libusb, libftdi,
+systemd, alsaLib, dsview
+}:
+
+stdenv.mkDerivation rec {
+  inherit (dsview) version src;
+
+  name = "libsigrok4dsl-${version}";
+
+  postUnpack = ''
+    export sourceRoot=$sourceRoot/libsigrok4DSL
+  '';
+
+  nativeBuildInputs = [ pkgconfig autoreconfHook ];
+
+  buildInputs = [
+    glib libzip libserialport libusb libftdi systemd check alsaLib
+  ];
+
+  meta = with stdenv.lib; {
+    description = "A fork of the sigrok library for usage with DSView";
+    homepage = http://www.dreamsourcelab.com/;
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.bachp ];
+  };
+}
diff --git a/pkgs/applications/science/electronics/dsview/libsigrokdecode4dsl.nix b/pkgs/applications/science/electronics/dsview/libsigrokdecode4dsl.nix
new file mode 100644
index 000000000000..58f32f2ae6cc
--- /dev/null
+++ b/pkgs/applications/science/electronics/dsview/libsigrokdecode4dsl.nix
@@ -0,0 +1,27 @@
+{ stdenv, pkgconfig, autoreconfHook,
+glib, check, python3, dsview
+}:
+
+stdenv.mkDerivation rec {
+  inherit (dsview) version src;
+
+  name = "libsigrokdecode4dsl-${version}";
+
+  postUnpack = ''
+    export sourceRoot=$sourceRoot/libsigrokdecode4DSL
+  '';
+
+  nativeBuildInputs = [ pkgconfig autoreconfHook ];
+
+  buildInputs = [
+    python3 glib check
+  ];
+
+  meta = with stdenv.lib; {
+    description = "A fork of the sigrokdecode library for usage with DSView";
+    homepage = http://www.dreamsourcelab.com/;
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.bachp ];
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 93fb364e4726..9494790f0666 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -2361,6 +2361,8 @@ in
 
   dropbear = callPackage ../tools/networking/dropbear { };
 
+  dsview = libsForQt5.callPackage ../applications/science/electronics/dsview { };
+
   dtach = callPackage ../tools/misc/dtach { };
 
   dtc = callPackage ../development/compilers/dtc { };
@@ -8534,6 +8536,10 @@ in
 
   libsigrokdecode = callPackage ../development/tools/libsigrokdecode { };
 
+  # special forks used for dsview
+  libsigrok4dsl = callPackage ../applications/science/electronics/dsview/libsigrok4dsl.nix { };
+  libsigrokdecode4dsl = callPackage ../applications/science/electronics/dsview/libsigrokdecode4dsl.nix { };
+
   dcadec = callPackage ../development/tools/dcadec { };
 
   dejagnu = callPackage ../development/tools/misc/dejagnu { };