Subject: [PATCH] gnu: qpwgraph: Add qpwgraph.
From: "J. Sims" <[email-masked]>
To: "[email-masked]" <[email-masked]>
Date: Wed, 18 May 2022 19:56:51 +0000
List-Id: <debbugs-submit.debbugs.gnu.org>

Hello,

This patch adds the qpwgraph application, which is a visual interface to
PipeWire connections. Besides managing connections and just being
neat, it can also serve to easily check that a PipeWire configuration
is setup and working (the purpose for which I packaged it). Hopefully,
others will find it useful as well.

Note that I put it in gnu/packages/audio.scm because that made the most
sense to me after a quick check of the packages files. If there's a
better one, I can redo the patch with it in that file.

Thanks,
Juli

--------------------------BEGIN-PATCH------------------------------

* gnu/packages/audio.scm (qpwgraph): Add qpwgraph.
---
 gnu/packages/audio.scm | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index 6b16269670..6d1aadaf1d 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -37,6 +37,7 @@
 ;;; Copyright \302\251 2021 jgart <[email-masked]>
 ;;; Copyright \302\251 2021 Aleksandr Vityazev <[email-masked]>
 ;;; Copyright \302\251 2022 Arjan Adriaanse <[email-masked]>
+;;; Copyright \302\251 2022 Juliana Sims <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -5762,3 +5763,32 @@ (define-public odio-sacd
 and DSD streams.")
    (home-page "https://tari.in/www/software/odio-sacd/")
    (license license:gpl3+)))
+
+(define-public qpwgraph
+  (package
+    (name "qpwgraph")
+    (version "0.2.6")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://gitlab.freedesktop.org/rncbc/qpwgraph")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "1gn4zy1b4hggk9andh7cbwkrd7l4djmnipbyyyv9srcsnvqv3wkg"))))
+    (build-system cmake-build-system)
+    (arguments
+     `(#:tests? #f))
+    (inputs (list alsa-lib
+                  pipewire-0.3
+                  ;; qtsvg is still on version 5; use qtbase-5 to match
+                  qtbase-5
+                  qtsvg))
+    (native-inputs (list pkg-config))
+    (synopsis "PipeWire graph manager")
+    (description
+     "qpwgraph is a graph manager dedicated to PipeWire, using the Qt C++ framework.
+It provides a visual interface to audio and video connections managed by PipeWire.")
+    (home-page "https://gitlab.freedesktop.org/rncbc/qpwgraph")
+    (license license:gpl2)))

base-commit: b1cfd39d0164bcbd6aa97672eb87bad234de6ca4
--
2.36.0