From 00b385c61226a3f3c396581fd7b4851d99e20910 Mon Sep 17 00:00:00 2001 From: freezeboy Date: Wed, 18 Nov 2020 15:36:03 +0100 Subject: [PATCH] dsview: 0.99 -> 1.12 Adapted the patches and took a commit from upstream master branch to allow the migration to Qt5.15. Had to copy the patch because of the custom sourceRoot. --- .../science/electronics/dsview/default.nix | 32 +++++++++++-------- .../science/electronics/dsview/install.patch | 8 ++--- .../science/electronics/dsview/qt515.patch | 13 ++++++++ pkgs/top-level/all-packages.nix | 2 +- 4 files changed, 36 insertions(+), 19 deletions(-) create mode 100644 pkgs/applications/science/electronics/dsview/qt515.patch diff --git a/pkgs/applications/science/electronics/dsview/default.nix b/pkgs/applications/science/electronics/dsview/default.nix index 4d3acb331d5d..e61017ea330d 100644 --- a/pkgs/applications/science/electronics/dsview/default.nix +++ b/pkgs/applications/science/electronics/dsview/default.nix @@ -1,42 +1,46 @@ -{ stdenv, fetchFromGitHub, pkgconfig, cmake, -libzip, boost, fftw, qtbase, -libusb1, wrapQtAppsHook, libsigrok4dsl, libsigrokdecode4dsl +{ lib, mkDerivation, fetchFromGitHub, pkgconfig, cmake +, libzip, boost, fftw, qtbase, libusb1, libsigrok4dsl +, libsigrokdecode4dsl, python3, fetchpatch }: -stdenv.mkDerivation rec { +mkDerivation rec { pname = "dsview"; - version = "0.99"; + version = "1.12"; src = fetchFromGitHub { owner = "DreamSourceLab"; repo = "DSView"; - rev = version; - sha256 = "189i3baqgn8k3aypalayss0g489xi0an9hmvyggvxmgg1cvcwka2"; + rev = "v${version}"; + sha256 = "q7F4FuK/moKkouXTNPZDVon/W/ZmgtNHJka4MiTxA0U="; }; - postUnpack = '' - export sourceRoot=$sourceRoot/DSView - ''; + sourceRoot = "source/DSView"; patches = [ # Fix absolute install paths ./install.patch + + # Fix buld with Qt5.15 already merged upstream for future release + # Using local file instead of content of commit #33e3d896a47 because + # sourceRoot make it unappliable + ./qt515.patch ]; - nativeBuildInputs = [ cmake pkgconfig wrapQtAppsHook ]; + nativeBuildInputs = [ cmake pkgconfig ]; buildInputs = [ - boost fftw qtbase libusb1 libzip libsigrokdecode4dsl libsigrok4dsl + boost fftw qtbase libusb1 libzip libsigrokdecode4dsl libsigrok4dsl + python3 ]; enableParallelBuilding = true; - meta = with stdenv.lib; { + meta = with lib; { description = "A GUI program for supporting various instruments from DreamSourceLab, including logic analyzer, oscilloscope, etc"; homepage = "https://www.dreamsourcelab.com/"; license = licenses.gpl3Plus; platforms = platforms.linux; - maintainers = [ maintainers.bachp ]; + maintainers = with maintainers; [ bachp ]; }; } diff --git a/pkgs/applications/science/electronics/dsview/install.patch b/pkgs/applications/science/electronics/dsview/install.patch index e30a28d80fa3..75c3e9628656 100644 --- a/pkgs/applications/science/electronics/dsview/install.patch +++ b/pkgs/applications/science/electronics/dsview/install.patch @@ -2,10 +2,10 @@ 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) +@@ -427,8 +427,8 @@ + install(FILES ../NEWS31 DESTINATION share/${PROJECT_NAME} RENAME NEWS31) + install(FILES ../ug25.pdf DESTINATION share/${PROJECT_NAME} RENAME ug25.pdf) + install(FILES ../ug31.pdf DESTINATION share/${PROJECT_NAME} RENAME ug31.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/) diff --git a/pkgs/applications/science/electronics/dsview/qt515.patch b/pkgs/applications/science/electronics/dsview/qt515.patch new file mode 100644 index 000000000000..552f2062ec57 --- /dev/null +++ b/pkgs/applications/science/electronics/dsview/qt515.patch @@ -0,0 +1,13 @@ +diff --git a/pv/view/viewport.cpp b/pv/view/viewport.cpp +index 921d3db..16cdce9 100755 +--- a/pv/view/viewport.cpp ++++ b/pv/view/viewport.cpp +@@ -37,7 +37,7 @@ + + #include + #include +- ++#include + + #include + diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index e2efe9633b92..e97d83dcfd3f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3414,7 +3414,7 @@ in dropbear = callPackage ../tools/networking/dropbear { }; - dsview = libsForQt514.callPackage ../applications/science/electronics/dsview { }; + dsview = libsForQt5.callPackage ../applications/science/electronics/dsview { }; dtach = callPackage ../tools/misc/dtach { };