unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#74344] [PATCH 0/7] gnu: Add jamesdsp.
@ 2024-11-13 15:37 Sughosha via Guix-patches via
  2024-11-13 15:46 ` [bug#74344] [PATCH 1/7] gnu: Add asyncplusplus Sughosha via Guix-patches via
  0 siblings, 1 reply; 9+ messages in thread
From: Sughosha via Guix-patches via @ 2024-11-13 15:37 UTC (permalink / raw)
  To: 74344; +Cc: Sughosha, Gabriel Wicki

This patch series adds jamesdsp package.

Sughosha (7):
  gnu: Add asyncplusplus.
  gnu: Add qcodeeditor.
  gnu: Add qt-advanced-docking-system.
  gnu: Add qtcsv.
  gnu: Add qtpromise.
  gnu: Add widgetanimationframework.
  gnu: Add jamesdsp.

 gnu/packages/audio.scm | 133 ++++++++++++++++++++++++++++
 gnu/packages/cpp.scm   |  27 ++++++
 gnu/packages/qt.scm    | 194 +++++++++++++++++++++++++++++++++++++++++
 3 files changed, 354 insertions(+)


base-commit: 2a6d96425eea57dc6dd48a2bec16743046e32e06
-- 
2.46.0





^ permalink raw reply	[flat|nested] 9+ messages in thread

* [bug#74344] [PATCH 1/7] gnu: Add asyncplusplus.
  2024-11-13 15:37 [bug#74344] [PATCH 0/7] gnu: Add jamesdsp Sughosha via Guix-patches via
@ 2024-11-13 15:46 ` Sughosha via Guix-patches via
  2024-11-13 15:46   ` [bug#74344] [PATCH 2/7] gnu: Add qcodeeditor Sughosha via Guix-patches via
                     ` (5 more replies)
  0 siblings, 6 replies; 9+ messages in thread
From: Sughosha via Guix-patches via @ 2024-11-13 15:46 UTC (permalink / raw)
  To: 74344; +Cc: Sughosha

* gnu/packages/cpp.scm (asyncplusplus): New variable.

Change-Id: I6ba1b983ce05a634937d0d972e670ce636df3b94
---
 gnu/packages/cpp.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm
index f8e8557ef1..23d8439d00 100644
--- a/gnu/packages/cpp.scm
+++ b/gnu/packages/cpp.scm
@@ -190,6 +190,33 @@ (define-public asmjit
 development effort.")
       (license license:zlib))))
 
+(define-public asyncplusplus
+  (package
+    (name "asyncplusplus")
+    (version "1.2")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/Amanieu/asyncplusplus")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0iswbh7y46kn412c52af0n8bc4fplm3y94yh10n2lchispzar72j"))
+              (modules '((guix build utils)))
+              (snippet
+               ;; Fix install location of cmake files.
+               '(substitute* "CMakeLists.txt"
+                  (("DESTINATION cmake")
+                    "DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake")))))
+    (build-system cmake-build-system)
+    (arguments
+     (list #:tests? #f)) ;no tests
+    (home-page "https://github.com/Amanieu/asyncplusplus")
+    (synopsis "Concurrency framework for C++11")
+    (description "Async++ is a concurrency framework for C++11.")
+    (license license:expat)))
+
 (define-public biblesync
   (package
     (name "biblesync")

base-commit: 2a6d96425eea57dc6dd48a2bec16743046e32e06
-- 
2.46.0





^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [bug#74344] [PATCH 2/7] gnu: Add qcodeeditor.
  2024-11-13 15:46 ` [bug#74344] [PATCH 1/7] gnu: Add asyncplusplus Sughosha via Guix-patches via
@ 2024-11-13 15:46   ` Sughosha via Guix-patches via
  2024-11-13 15:46   ` [bug#74344] [PATCH 3/7] gnu: Add qt-advanced-docking-system Sughosha via Guix-patches via
                     ` (4 subsequent siblings)
  5 siblings, 0 replies; 9+ messages in thread
From: Sughosha via Guix-patches via @ 2024-11-13 15:46 UTC (permalink / raw)
  To: 74344; +Cc: Sughosha, Maxim Cournoyer, 宋文武

* gnu/packages/qt.scm (qcodeeditor): New variable.

Change-Id: I331a184f83891ed6f8cc9b787a4bbf6cc48b35dd
---
 gnu/packages/qt.scm | 36 ++++++++++++++++++++++++++++++++++++
 1 file changed, 36 insertions(+)

diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index 37f46e788e..c6488acdd8 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -4660,6 +4660,42 @@ (define-public dotherside
 @end itemize\n")
     (license license:lgpl3)))                    ;version 3 only (+ exception)
 
+(define-public qcodeeditor
+  (let ((commit "dc644d41b68978ab9a5591ba891a223221570e74")
+        (revision "0"))
+    (package
+      (name "qcodeeditor")
+      (version (git-version "0" revision commit))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://github.com/Megaxela/QCodeEditor")
+                      (commit commit)))
+                (file-name (git-file-name name version))
+                (sha256
+                 (base32
+                  "1bpvfwbgp275w79dzrd7d9k3md1ch7n88rh59mxdfj8s911n42j8"))))
+      (build-system qt-build-system)
+      (arguments
+       (list #:tests? #f ;no tests
+             #:phases
+             #~(modify-phases %standard-phases
+                 (replace 'install
+                   (lambda _
+                     (install-file "libQCodeEditor.a"
+                                   (string-append #$output "/lib"))
+                     (for-each
+                       (lambda (file)
+                         (install-file file
+                                       (string-append #$output
+                                                      "/include/QCodeEditor")))
+                       (find-files "../source/include/internal" "\\.hpp")))))))
+      (home-page "https://github.com/Megaxela/QCodeEditor")
+      (synopsis "Qt code editor widget")
+      (description
+       "QCodeEditor is a Qt widget for editing/viewing code.")
+      (license license:expat))))
+
 (define-public qtcolorwidgets
   (package
     (name "qtcolorwidgets")
-- 
2.46.0





^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [bug#74344] [PATCH 3/7] gnu: Add qt-advanced-docking-system.
  2024-11-13 15:46 ` [bug#74344] [PATCH 1/7] gnu: Add asyncplusplus Sughosha via Guix-patches via
  2024-11-13 15:46   ` [bug#74344] [PATCH 2/7] gnu: Add qcodeeditor Sughosha via Guix-patches via
@ 2024-11-13 15:46   ` Sughosha via Guix-patches via
  2024-11-13 15:46   ` [bug#74344] [PATCH 4/7] gnu: Add qtcsv Sughosha via Guix-patches via
                     ` (3 subsequent siblings)
  5 siblings, 0 replies; 9+ messages in thread
From: Sughosha via Guix-patches via @ 2024-11-13 15:46 UTC (permalink / raw)
  To: 74344; +Cc: Sughosha, Maxim Cournoyer, 宋文武

* gnu/packages/qt.scm (qt-advanced-docking-system): New variable.

Change-Id: I359c911cbbb36f8f96979021cb917757dedda505
---
 gnu/packages/qt.scm | 42 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 42 insertions(+)

diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index c6488acdd8..830e571f44 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -4696,6 +4696,48 @@ (define-public qcodeeditor
        "QCodeEditor is a Qt widget for editing/viewing code.")
       (license license:expat))))
 
+(define-public qt-advanced-docking-system
+  (package
+    (name "qt-advanced-docking-system")
+    (version "4.3.1")
+    (source
+     (origin
+       (method git-fetch)
+       (uri
+        (git-reference
+          (url "https://github.com/githubuser0xFFFF/Qt-Advanced-Docking-System")
+          (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0xb4j5pva3qbbj01xp5y98544hgh14p60z2dfypq4ikz6n3ac0z7"))
+       (modules '((guix build utils)))
+       (snippet
+        '(begin
+           ;; Disable building examples and demo.
+           (substitute* "ads.pro"
+             ((".*demo.*") "")
+             ((".*examples.*") ""))
+           ;; Include headers in their own directory.
+           (substitute* "src/src.pro"
+             (("/include") "/include/QtAdvancedDocking"))))))
+    (build-system qt-build-system)
+    (arguments
+     (list #:qtbase qtbase
+           #:tests? #f ;no tests
+           #:phases
+           #~(modify-phases %standard-phases
+               (replace 'configure
+                 (lambda _
+                   (invoke "qmake" (string-append "PREFIX=" #$output)))))))
+    (inputs
+     (list libxkbcommon))
+    (home-page "https://github.com/githubuser0xFFFF/Qt-Advanced-Docking-System")
+    (synopsis "Advanced docking system for Qt")
+    (description
+     "Qt Advanced Docking System lets you create customizable layouts using a
+window docking system.")
+    (license license:lgpl2.1+)))
+
 (define-public qtcolorwidgets
   (package
     (name "qtcolorwidgets")
-- 
2.46.0





^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [bug#74344] [PATCH 4/7] gnu: Add qtcsv.
  2024-11-13 15:46 ` [bug#74344] [PATCH 1/7] gnu: Add asyncplusplus Sughosha via Guix-patches via
  2024-11-13 15:46   ` [bug#74344] [PATCH 2/7] gnu: Add qcodeeditor Sughosha via Guix-patches via
  2024-11-13 15:46   ` [bug#74344] [PATCH 3/7] gnu: Add qt-advanced-docking-system Sughosha via Guix-patches via
@ 2024-11-13 15:46   ` Sughosha via Guix-patches via
  2024-11-13 15:46   ` [bug#74344] [PATCH 5/7] gnu: Add qtpromise Sughosha via Guix-patches via
                     ` (2 subsequent siblings)
  5 siblings, 0 replies; 9+ messages in thread
From: Sughosha via Guix-patches via @ 2024-11-13 15:46 UTC (permalink / raw)
  To: 74344; +Cc: Sughosha, Maxim Cournoyer, 宋文武

* gnu/packages/qt.scm (qtcsv): New variable.

Change-Id: I98f324ac982b34df395260298585a9f59b3eae6f
---
 gnu/packages/qt.scm | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index 830e571f44..6108763812 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -4738,6 +4738,29 @@ (define-public qt-advanced-docking-system
 window docking system.")
     (license license:lgpl2.1+)))
 
+(define-public qtcsv
+  (package
+    (name "qtcsv")
+    (version "1.7")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/iamantony/qtcsv")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "1c9i93kr7wvpr01i4wixi9mf991nd3k2adg5fy0vxwwlvvc7dgdw"))))
+    (build-system qt-build-system)
+    (arguments
+     (list #:qtbase qtbase
+           #:test-target "tests"))
+    (home-page "https://github.com/iamantony/qtcsv")
+    (synopsis "Library for reading and writing csv-files in Qt")
+    (description
+     "qtcsv is a library for reading and writing csv-files in Qt.")
+    (license license:expat)))
+
 (define-public qtcolorwidgets
   (package
     (name "qtcolorwidgets")
-- 
2.46.0





^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [bug#74344] [PATCH 5/7] gnu: Add qtpromise.
  2024-11-13 15:46 ` [bug#74344] [PATCH 1/7] gnu: Add asyncplusplus Sughosha via Guix-patches via
                     ` (2 preceding siblings ...)
  2024-11-13 15:46   ` [bug#74344] [PATCH 4/7] gnu: Add qtcsv Sughosha via Guix-patches via
@ 2024-11-13 15:46   ` Sughosha via Guix-patches via
  2024-11-13 15:46   ` [bug#74344] [PATCH 6/7] gnu: Add widgetanimationframework Sughosha via Guix-patches via
  2024-11-13 15:46   ` [bug#74344] [PATCH 7/7] gnu: Add jamesdsp Sughosha via Guix-patches via
  5 siblings, 0 replies; 9+ messages in thread
From: Sughosha via Guix-patches via @ 2024-11-13 15:46 UTC (permalink / raw)
  To: 74344; +Cc: Sughosha, Maxim Cournoyer, 宋文武

* gnu/packages/qt.scm (qtpromise): New variable.

Change-Id: I373a383187ec8ba73c2e8fcd5a5a5631d1f80a0d
---
 gnu/packages/qt.scm | 37 +++++++++++++++++++++++++++++++++++++
 1 file changed, 37 insertions(+)

diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index 6108763812..efff50a60c 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -4761,6 +4761,43 @@ (define-public qtcsv
      "qtcsv is a library for reading and writing csv-files in Qt.")
     (license license:expat)))
 
+(define-public qtpromise
+  (package
+    (name "qtpromise")
+    (version "0.7.0")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/simonbrunel/qtpromise")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0nsh6v5k4kdrrhcd6adz947n0dka4rrbx8f8rvm1175545nbi67s"))))
+    (build-system qt-build-system)
+    (arguments
+     (list #:test-target "tests"
+           #:phases
+           #~(modify-phases %standard-phases
+               (add-before 'install 'fix-include-path
+                 (lambda _
+                   (chdir "../source")
+                   (substitute* "include/QtPromise"
+                     (("../src/") ""))))
+               (replace 'install
+                 (lambda _
+                   (let ((include (string-append #$output "/include")))
+                     (install-file "include/QtPromise"
+                                   (string-append include))
+                     (copy-recursively "src/qtpromise"
+                                       (string-append include
+                                                      "/qtpromise"))))))))
+    (home-page "https://qtpromise.netlify.app/")
+    (synopsis "Promises/A+ implementation for Qt/C++")
+    (description
+     "This package provides Promises/A+ implementation for Qt/C++.")
+    (license license:expat)))
+
 (define-public qtcolorwidgets
   (package
     (name "qtcolorwidgets")
-- 
2.46.0





^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [bug#74344] [PATCH 6/7] gnu: Add widgetanimationframework.
  2024-11-13 15:46 ` [bug#74344] [PATCH 1/7] gnu: Add asyncplusplus Sughosha via Guix-patches via
                     ` (3 preceding siblings ...)
  2024-11-13 15:46   ` [bug#74344] [PATCH 5/7] gnu: Add qtpromise Sughosha via Guix-patches via
@ 2024-11-13 15:46   ` Sughosha via Guix-patches via
  2024-11-13 15:46   ` [bug#74344] [PATCH 7/7] gnu: Add jamesdsp Sughosha via Guix-patches via
  5 siblings, 0 replies; 9+ messages in thread
From: Sughosha via Guix-patches via @ 2024-11-13 15:46 UTC (permalink / raw)
  To: 74344; +Cc: Sughosha, Maxim Cournoyer, 宋文武

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset=y, Size: 3122 bytes --]

* gnu/packages/qt.scm (widgetanimationframework): New variable.

Change-Id: Iacf862eac61b521cf2dd8da9249a6411f2f737a1
---
 gnu/packages/qt.scm | 56 +++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 56 insertions(+)

diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index efff50a60c..1a9924b1ca 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -31,6 +31,7 @@
 ;;; Copyright © 2022, 2024 Zheng Junjie <873216071@qq.com>
 ;;; Copyright © 2023 Herman Rimm <herman@rimm.ee>
 ;;; Copyright © 2024 Foundation Devices, Inc. <hello@foundation.xyz>
+;;; Copyright © 2024 Sughosha <sughosha@disroot.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -4798,6 +4799,61 @@ (define-public qtpromise
      "This package provides Promises/A+ implementation for Qt/C++.")
     (license license:expat)))
 
+(define-public widgetanimationframework
+  (let ((commit "b07ab59cee7a21eb29d29cb67c160681f13ac5ae") ;no tags
+          (revision "0"))
+    (package
+      (name "widgetanimationframework")
+      (version (git-version "0" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri
+           (git-reference
+             (url "https://github.com/dimkanovikov/WidgetAnimationFramework")
+             (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32 "1smbdrzk05vvbf6lpjdq82k4y2kc4yv1gk5388qbslbzlb6ihls6"))
+         (modules '((guix build utils)))
+         (snippet
+          '(begin
+             (rename-file "demo/waf-demo.pro" "src/waf.pro")
+             (substitute* "src/waf.pro"
+               (("main.cpp ") "")
+               (("app") "lib")
+               (("waf-demo") "waf"))))))
+      (build-system qt-build-system)
+      (arguments
+       (list #:qtbase qtbase
+             #:tests? #f ;no tests
+             #:phases
+             #~(modify-phases %standard-phases
+                 (replace 'configure
+                   (lambda _
+                     (chdir "src")
+                     (invoke "qmake")))
+                 (replace 'install
+                   (lambda _
+                     (for-each
+                       (lambda (file)
+                         (install-file file
+                                       (string-append #$output "/lib/"
+                                                      (dirname file))))
+                       (find-files "." "\\.so"))
+                     (for-each
+                       (lambda (file)
+                         (install-file file
+                                       (string-append #$output "/include/WAF/"
+                                                      (dirname file))))
+                       (find-files "." "\\.h$")))))))
+      (home-page "https://github.com/dimkanovikov/WidgetAnimationFramework")
+      (synopsis "Extension for animating Qt widgets")
+      (description
+       "Widget Animation Framework (WAF) is an extension for animating Qt
+widgets.")
+      (license license:lgpl3))))
+
 (define-public qtcolorwidgets
   (package
     (name "qtcolorwidgets")
-- 
2.46.0





^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [bug#74344] [PATCH 7/7] gnu: Add jamesdsp.
  2024-11-13 15:46 ` [bug#74344] [PATCH 1/7] gnu: Add asyncplusplus Sughosha via Guix-patches via
                     ` (4 preceding siblings ...)
  2024-11-13 15:46   ` [bug#74344] [PATCH 6/7] gnu: Add widgetanimationframework Sughosha via Guix-patches via
@ 2024-11-13 15:46   ` Sughosha via Guix-patches via
  2024-11-26 22:52     ` [bug#74344] Review Gabriel Wicki
  5 siblings, 1 reply; 9+ messages in thread
From: Sughosha via Guix-patches via @ 2024-11-13 15:46 UTC (permalink / raw)
  To: 74344; +Cc: Sughosha, Gabriel Wicki

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset=y, Size: 7278 bytes --]

* gnu/packages/audio.scm (jamesdsp): New variable.

Change-Id: I4ddc9709c5500e7d06a519481ddd26ba9f39905e
---
 gnu/packages/audio.scm | 133 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 133 insertions(+)

diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index 467dc4a74f..541068b1ab 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -49,6 +49,7 @@
 ;;; Copyright © 2024 hapster <o.rojon@posteo.net>
 ;;; Copyright © 2024 mio <stigma@disroot.org>
 ;;; Copyright © 2024 Nikita Domnitskii <nikita@domnitskii.me>
+;;; Copyright © 2024 Sughosha <sughosha@disroot.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -158,6 +159,7 @@ (define-module (gnu packages audio)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system meson)
   #:use-module (guix build-system python)
+  #:use-module (guix build-system qt)
   #:use-module (guix build-system trivial)
   #:use-module (guix build-system waf)
   #:use-module (guix download)
@@ -755,6 +757,137 @@ (define-public qm-dsp
 purposes developed at Queen Mary, University of London.")
     (license license:gpl2+)))
 
+(define-public jamesdsp
+  (package
+    (name "jamesdsp")
+    (version "2.7.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri
+        (git-reference
+          (url "https://github.com/Audio4Linux/JDSP4Linux")
+          (commit version)
+          ;; Recurse GraqhicEQWidget, FlatTabWidget, LiquidEqualizerWidget and
+          ;; EELEditor.
+          (recursive? #t)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "17vx12kbvwxvb69vzrlb82mrgf6sl3plyk71g9f39p49ialdsnbr"))
+       (modules '((guix build utils)))
+       (snippet
+        ;; Unbundle 3rd party libraries.
+        ;; NOTE: QCodeEditor from system fails to build EELEditor. WAF from
+        ;; system fails to build FlatTabWidget. 3rd party library found in
+        ;; LiquidEqualizerWidget is unknown. Hence these libraries found in
+        ;; their respective directories are untouched.
+        '(begin
+           ;; Delete the bundled 3rd party libraries.
+           (for-each delete-file-recursively
+            (list "3rdparty"
+                  "src/subprojects/EELEditor/3rdparty/docking-system"
+                  "src/subprojects/EELEditor/src/EELEditor-Linker.pri"))
+           (with-directory-excursion "src"
+             (substitute* "src.pro"
+               ;; Do not use bundled 3rd party libraries.
+               ((".*3rdparty.*") "")
+               ;; Link required libraries from system.
+               (("-ldl")
+                (string-join '("-ldl"
+                               "-lasync++"
+                               "-lqcustomplot"
+                               "-lqtadvanceddocking"
+                               "-lqtcsv"
+                               "-lwaf")
+                               " ")))
+             ;; Fix including WAF headers.
+             (substitute* "MainWindow.cpp"
+                       (("<Animation") "<WAF/Animation"))
+             ;; Do not use resources from the bundled docking-system.
+             (substitute* '("interface/fragment/AppManagerFragment.ui")
+               ((".*location.*3rdparty.*") "")
+               ((" resource=.*>") ">"))
+             (with-directory-excursion "subprojects/EELEditor/src"
+               ;; Do not use bundled docking-system.
+               (substitute* "EELEditor.pri"
+                 ((".*docking-system.*") ""))
+               ;; Do not link to bundled docking-system.
+               (substitute* "src.pro"
+                 ((".*EELEditor-Linker.*") ""))
+               ;; Fix including headers from the system.
+               (substitute* '("eeleditor.cpp"
+                              "eeleditor.h")
+                 (("<Dock") "<QtAdvancedDocking/Dock")
+                 (("<FloatingDock") "<QtAdvancedDocking/FloatingDock"))))))))
+    (build-system qt-build-system)
+    (arguments
+     (list #:qtbase qtbase
+           #:tests? #f ;no tests
+           #:phases
+           #~(modify-phases %standard-phases
+               (replace 'configure
+                 (lambda* (#:key inputs #:allow-other-keys)
+                   (invoke "qmake" (string-append "PREFIX=" #$output))))
+               (add-after 'install 'install-icon
+                 (lambda _
+                   (let ((pixmaps (string-append #$output "/share/pixmaps")))
+                     (mkdir-p pixmaps)
+                     (copy-file "resources/icons/icon.png"
+                                (string-append pixmaps "/jamesdsp.png")))))
+               (add-after 'install-icon 'create-desktop-entry-file
+                 (lambda _
+                   (make-desktop-entry-file
+                    (string-append #$output
+                                  "/share/applications/jamesdsp.desktop")
+                    #:name "JamesDSP"
+                    #:comment "Audio effect processor"
+                    #:keywords "equalizer;audio;effect"
+                    #:categories "AudioVideo;Audio;"
+                    #:exec (string-append #$output "/bin/jamesdsp")
+                    #:icon (string-append #$output "/share/pixmaps/jamesdsp.png")
+                    #:startup-notify #f))))))
+    (native-inputs
+     (list pkg-config))
+    (inputs
+     (list asyncplusplus
+           glibmm-2.66
+           libarchive
+           pipewire
+           qcustomplot
+           qt-advanced-docking-system
+           qtcsv
+           qtpromise
+           qtsvg
+           widgetanimationframework))
+    (home-page "https://github.com/Audio4Linux/JDSP4Linux")
+    (synopsis "Audio effect processor for PipeWire and PulseAudio clients")
+    (description "JamesDSP is an audio effect processor for PipeWire and
+PulseAudio clients, featuring:
+@itemize
+@item Automatic bass boost: Frequency-detecting bass-boost
+@item Automatic dynamic range compressor: automated multiband dynamic range
+ adjusting effect
+@item Complex reverberation IIR network (Progenitor 2)
+@item Interpolated FIR equalizer with flexible bands
+@item Arbitrary response equalizer (also known as GraphicEQ from EqualizerAPO)
+@item AutoEQ database integration (requires network connection)
+@item Partitioned convolver (Auto segmenting convolution): Mono, stereo,
+ full/true stereo (LL, LR, RL, RR) impulse response
+@item Crossfeed: Realistic surround effects
+@item Soundstage wideness: A multiband stereo wideness controller
+@item ViPER-DDC: Parametric equalization on audio and creating VDC input files
+@item Analog modeling: An aliasing-free even harmonic generator
+@item Output limiter
+@item Scripting engine: Live programmable DSP using the EEL2 scripting language
+@item Scripting IDE featuring syntax highlighting, basic code completion,
+ dynamic code outline window, console output support and detailed error
+ messages with inline code highlighting
+@end itemize")
+    (license (list license:gpl3+
+                   license:gpl2      ;LiquidEqualizerWidget's 3rd party library
+                   license:gpl2+     ;GraphicEQWidget
+                   license:expat)))) ;QAnimatedSlider and QCodeEditor
+
 (define ardour-bundled-media
   (origin
     (method url-fetch)
-- 
2.46.0





^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [bug#74344] Review
  2024-11-13 15:46   ` [bug#74344] [PATCH 7/7] gnu: Add jamesdsp Sughosha via Guix-patches via
@ 2024-11-26 22:52     ` Gabriel Wicki
  0 siblings, 0 replies; 9+ messages in thread
From: Gabriel Wicki @ 2024-11-26 22:52 UTC (permalink / raw)
  To: Sughosha; +Cc: 74344

hello there!

thanks for the submission!

general remarks:  try not to duplicate the synopsis in the description,
otherwise everything looks fine!

some questions/remarks:

 - why disable building examples and demo in qt-advanced-docking-system?

 - i am not sure the (chdir "../source") is necessary in qtpromise.
   can't you (substitute* "../source/include/QtPromise" ...) directly?

 - wouldn't it be nicer to call the variable (and the package)
   widget-animation-framework instead of widgetanimationframework?
   or qt-widget-animation-framework?

 - what does the (snippet ...) do in widgetanimationframework?  you
   could comment why this is necessary


have a nice week
gabber




^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2024-11-26 22:53 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-11-13 15:37 [bug#74344] [PATCH 0/7] gnu: Add jamesdsp Sughosha via Guix-patches via
2024-11-13 15:46 ` [bug#74344] [PATCH 1/7] gnu: Add asyncplusplus Sughosha via Guix-patches via
2024-11-13 15:46   ` [bug#74344] [PATCH 2/7] gnu: Add qcodeeditor Sughosha via Guix-patches via
2024-11-13 15:46   ` [bug#74344] [PATCH 3/7] gnu: Add qt-advanced-docking-system Sughosha via Guix-patches via
2024-11-13 15:46   ` [bug#74344] [PATCH 4/7] gnu: Add qtcsv Sughosha via Guix-patches via
2024-11-13 15:46   ` [bug#74344] [PATCH 5/7] gnu: Add qtpromise Sughosha via Guix-patches via
2024-11-13 15:46   ` [bug#74344] [PATCH 6/7] gnu: Add widgetanimationframework Sughosha via Guix-patches via
2024-11-13 15:46   ` [bug#74344] [PATCH 7/7] gnu: Add jamesdsp Sughosha via Guix-patches via
2024-11-26 22:52     ` [bug#74344] Review Gabriel Wicki

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).