GNU bug report logs - #57220
[PATCH] gnu: move wireplumber and qpwgraph

Previous Next

Package: guix-patches;

Reported by: Formbi <formbi <at> protonmail.com>

Date: Mon, 15 Aug 2022 00:02:01 UTC

Severity: normal

Tags: patch

To reply to this bug, email your comments to 57220 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#57220; Package guix-patches. (Mon, 15 Aug 2022 00:02:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Formbi <formbi <at> protonmail.com>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Mon, 15 Aug 2022 00:02:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Formbi <formbi <at> protonmail.com>
To: Formbi via Guix-patches <guix-patches <at> gnu.org>
Subject: [PATCH] gnu: move wireplumber and qpwgraph
Date: Mon, 15 Aug 2022 00:01:09 +0000
This patch moves wireplumber and qpwgraph to the pipewire.scm file.

From 22fcfec0b82e3a1054a9a0d8a8ba8671287d866c Mon Sep 17 00:00:00 2001
From: Formbi <formbi <at> protonmail.com>
Date: Mon, 15 Aug 2022 01:57:08 +0200
Subject: [PATCH 2/2] gnu: move wireplumber and qpwgraph

---
 0001-add-pipewire.scm-and-easyeffects.patch | 136 ++++++++++++++++++++
 gnu/packages/audio.scm                      |  29 -----
 gnu/packages/linux.scm                      |  30 -----
 gnu/packages/pipewire.scm                   |  65 ++++++++++
 4 files changed, 201 insertions(+), 59 deletions(-)
 create mode 100644 0001-add-pipewire.scm-and-easyeffects.patch

diff --git a/0001-add-pipewire.scm-and-easyeffects.patch b/0001-add-pipewire.scm-and-easyeffects.patch
new file mode 100644
index 0000000000..5be1ef5361
--- /dev/null
+++ b/0001-add-pipewire.scm-and-easyeffects.patch
@@ -0,0 +1,136 @@
+From 817c0f81a1e67b27cdea6010860b6638a6acdd08 Mon Sep 17 00:00:00 2001
+From: Formbi <formbi <at> protonmail.com>
+Date: Mon, 15 Aug 2022 01:44:41 +0200
+Subject: [PATCH] add pipewire.scm and easyeffects
+
+---
+ gnu/packages/pipewire.scm | 117 ++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 117 insertions(+)
+ create mode 100644 gnu/packages/pipewire.scm
+
+diff --git a/gnu/packages/pipewire.scm b/gnu/packages/pipewire.scm
+new file mode 100644
+index 0000000000..2b923e0d05
+--- /dev/null
++++ b/gnu/packages/pipewire.scm
+@@ -0,0 +1,117 @@
++;;; Copyright © 2022 Marcel Kupiec <formbi <at> protonmail.com>
++;;;
++;;; This file is part of GNU Guix.
++;;;
++;;; GNU Guix is free software; you can redistribute it and/or modify it
++;;; under the terms of the GNU General Public License as published by
++;;; the Free Software Foundation; either version 3 of the License, or (at
++;;; your option) any later version.
++;;;
++;;; GNU Guix is distributed in the hope that it will be useful, but
++;;; WITHOUT ANY WARRANTY; without even the implied warranty of
++;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++;;; GNU General Public License for more details.
++;;;
++;;; You should have received a copy of the GNU General Public License
++;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
++
++
++(define-module (gnu packages pipewire)
++  #:use-module ((guix licenses)
++                #:prefix license:)
++  #:use-module (guix build-system cmake)
++  #:use-module (guix build-system meson)
++  #:use-module (guix download)
++  #:use-module (guix gexp)
++  #:use-module (guix git-download)
++  #:use-module (guix packages)
++  #:use-module (gnu packages)
++  #:use-module (gnu packages algebra)
++  #:use-module (gnu packages audio)
++  #:use-module (gnu packages cmake)
++  #:use-module (gnu packages cpp)
++  #:use-module (gnu packages freedesktop)
++  #:use-module (gnu packages gettext)
++  #:use-module (gnu packages glib)
++  #:use-module (gnu packages gnome)
++  #:use-module (gnu packages gtk)
++  #:use-module (gnu packages linux)
++  #:use-module (gnu packages lua)
++  #:use-module (gnu packages music)
++  #:use-module (gnu packages pkg-config)
++  #:use-module (gnu packages pretty-print)
++  #:use-module (gnu packages pulseaudio)
++  #:use-module (gnu packages qt)
++  #:use-module (gnu packages tbb)
++  #:use-module (gnu packages xdisorg)
++  #:use-module (gnu packages xiph))
++
++(define-public easyeffects
++  (let ((toolchain (specification->package "gcc-toolchain <at> 11")))
++    ;; for std::source_location
++    (package-with-c-toolchain
++     (package
++      (name "easyeffects")
++      (version "6.2.8")
++      (source (origin
++               (method git-fetch)
++	       (uri (git-reference
++		     (url "https://github.com/wwmm/easyeffects")
++		     (commit (string-append "v" version))))
++	       (file-name (git-file-name name version))
++               (sha256
++                (base32
++                 "0ahwgcvw7krbylhk00cacikzlaical344i3jkcmq5vr6vl5c8048"))))
++      (build-system meson-build-system)
++      (arguments
++       (list #:glib-or-gtk? #t
++             #:phases #~(modify-phases %standard-phases
++				       (add-after 'unpack 'skip-gtk-update-icon-cache
++						  (lambda _
++						    (substitute* "meson_post_install.py"
++								 (("gtk4-update-icon-cache")
++								  (which "true"))))))))
++      (inputs (list gnome-autoar
++                    calf
++                    fftwf
++                    fmt
++                    gtk
++                    libadwaita
++                    libbs2b
++                    libebur128
++                    libsamplerate
++                    libsigc++
++                    libsndfile
++                    lilv
++                    lsp-plugins
++                    lv2
++                    mda-lv2
++                    pipewire-0.3
++                    rubberband
++                    speexdsp
++                    tbb
++                    xiph-rnnoise
++                    zam-plugins
++                    zita-convolver))
++      (native-inputs (list desktop-file-utils ;for update-desktop-database
++			   `(,glib "bin")
++			   appstream-glib
++			   cmake
++			   gettext-minimal
++			   itstool
++			   json-modern-cxx
++			   pkg-config))
++      (home-page
++       "https://github.com/wwmm/easyeffects")
++      (synopsis
++       "Audio effects for PipeWire applications")
++      (description
++       "EasyEffects is an advanced audio manipulation tool.
++It includes an equalizer, limiter, compressor and a reverberation tool, just to
++mention a few.  To complement this there is also a built in spectrum analyzer.
++
++Besides manipulating sound output, EasyEffects is able to apply effects to an
++input device, such as a microphone.  This is, for example, useful in audio
++recording, but it also works well during voice conversations.")
++      (license license:gpl3+))
++     `(("toolchain" ,toolchain)))))
+--
+2.37.0
+
diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index aad86bac06..803109fb70 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -5834,32 +5834,3 @@ (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.3.4")
-    (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
-                "1xqmlbqj6ny4cpclzr8xyy6d6i392h9f1vmlbasp6xfy5b0yya94"))))
-    (build-system cmake-build-system)
-    (arguments (list #:tests? #f)) ;; no tests
-    (inputs (list alsa-lib
-                  libxkbcommon
-                  pipewire-0.3
-                  qtbase
-                  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)))
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index f936dde55a..a8d6627feb 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -8788,36 +8788,6 @@ (define-public pipewire-0.3
                        vulkan-loader
                        vulkan-headers)))))

-(define-public wireplumber
-  (package
-    (name "wireplumber")
-    (version "0.4.6")
-    (source
-     (origin
-       (method git-fetch)
-       (uri (git-reference
-             (url
-              "https://gitlab.freedesktop.org/pipewire/wireplumber.git")
-             (commit version)))
-       (file-name (git-file-name name version))
-       (sha256
-        (base32 "0g7xkgkjlxrhs49hqkwrjk2hb478gq55wwydafvvbsv78vsa7qfb"))))
-    (build-system meson-build-system)
-    (arguments
-     `(#:configure-flags '("-Dsystemd=disabled"
-                           "-Dsystem-lua=true")))
-    (native-inputs
-     (list `(,glib "bin")
-           pkg-config))
-    (inputs (list dbus elogind glib lua pipewire-0.3))
-    (home-page "https://gitlab.freedesktop.org/pipewire/wireplumber")
-    (synopsis "Session / policy manager implementation for PipeWire")
-    (description "WirePlumber is a modular session / policy manager for
-PipeWire and a GObject-based high-level library that wraps PipeWire's API,
-providing convenience for writing the daemon's modules as well as external
-tools for managing PipeWire.")
-    (license license:expat)))
-
 (define-public ell
   (package
     (name "ell")
diff --git a/gnu/packages/pipewire.scm b/gnu/packages/pipewire.scm
index 2b923e0d05..9fb8ed66ab 100644
--- a/gnu/packages/pipewire.scm
+++ b/gnu/packages/pipewire.scm
@@ -1,4 +1,10 @@
+;;; Copyright © 2021 Josselin Poiret <josselin.poiret <at> protonmail.ch>
+;;; Copyright © 2022 Tobias Geerinckx-Rice <me <at> tobias.gr>
+;;; Copyright © 2021 Mathieu Othacehe <othacehe <at> gnu.org>
+;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
+;;; Copyright © 2022 Juliana Sims <jtsims <at> protonmail.com>
 ;;; Copyright © 2022 Marcel Kupiec <formbi <at> protonmail.com>
+;;; Copyright © 2022 Efraim Flashner <efraim <at> flashner.co.il>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -46,6 +52,65 @@ (define-module (gnu packages pipewire)
   #:use-module (gnu packages xdisorg)
   #:use-module (gnu packages xiph))

+(define-public wireplumber
+  (package
+   (name "wireplumber")
+   (version "0.4.6")
+   (source
+    (origin
+     (method git-fetch)
+     (uri (git-reference
+           (url
+            "https://gitlab.freedesktop.org/pipewire/wireplumber.git")
+           (commit version)))
+     (file-name (git-file-name name version))
+     (sha256
+      (base32 "0g7xkgkjlxrhs49hqkwrjk2hb478gq55wwydafvvbsv78vsa7qfb"))))
+   (build-system meson-build-system)
+   (arguments
+    `(#:configure-flags '("-Dsystemd=disabled"
+                          "-Dsystem-lua=true")))
+   (native-inputs
+    (list `(,glib "bin")
+          pkg-config))
+   (inputs (list dbus elogind glib lua pipewire-0.3))
+   (home-page "https://gitlab.freedesktop.org/pipewire/wireplumber")
+   (synopsis "Session / policy manager implementation for PipeWire")
+   (description "WirePlumber is a modular session / policy manager for
+PipeWire and a GObject-based high-level library that wraps PipeWire's API,
+providing convenience for writing the daemon's modules as well as external
+tools for managing PipeWire.")
+   (license license:expat)))
+
+(define-public qpwgraph
+  (package
+   (name "qpwgraph")
+   (version "0.3.4")
+   (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
+              "1xqmlbqj6ny4cpclzr8xyy6d6i392h9f1vmlbasp6xfy5b0yya94"))))
+   (build-system cmake-build-system)
+   (arguments (list #:tests? #f)) ;; no tests
+   (inputs (list alsa-lib
+                 libxkbcommon
+                 pipewire-0.3
+                 qtbase
+                 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)))
+
 (define-public easyeffects
   (let ((toolchain (specification->package "gcc-toolchain <at> 11")))
     ;; for std::source_location
--
2.37.0






Information forwarded to guix-patches <at> gnu.org:
bug#57220; Package guix-patches. (Mon, 15 Aug 2022 11:36:02 GMT) Full text and rfc822 format available.

Message #8 received at 57220 <at> debbugs.gnu.org (full text, mbox):

From: Formbi <formbi <at> protonmail.com>
To: 57220 <at> debbugs.gnu.org
Subject: Re: bug#57220: Acknowledgement ([PATCH] gnu: move wireplumber and
 qpwgraph)
Date: Mon, 15 Aug 2022 11:34:47 +0000
Sorry, the commit got mixed up with the previous changes, I hope it's ok now:

From e006cfc3d81cb19e64d62cee84db7a042aceae74 Mon Sep 17 00:00:00 2001
From: Formbi <formbi <at> protonmail.com>
Date: Mon, 15 Aug 2022 13:31:27 +0200
Subject: [PATCH] gnu: Move wireplumber and qpwgraph to pipewire.scm.

* gnu/packages/pipewire.scm: Move wireplumber and qpwgraph.
* gnu/packages/linux.scm: Remove wireplumber.
* gnu/packages/audio.scm: Remove qpwgraph.
---
 gnu/packages/audio.scm    | 29 -----------------
 gnu/packages/linux.scm    | 30 ------------------
 gnu/packages/pipewire.scm | 65 +++++++++++++++++++++++++++++++++++++++
 3 files changed, 65 insertions(+), 59 deletions(-)

diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index aad86bac06..803109fb70 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -5834,32 +5834,3 @@ (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.3.4")
-    (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
-                "1xqmlbqj6ny4cpclzr8xyy6d6i392h9f1vmlbasp6xfy5b0yya94"))))
-    (build-system cmake-build-system)
-    (arguments (list #:tests? #f)) ;; no tests
-    (inputs (list alsa-lib
-                  libxkbcommon
-                  pipewire-0.3
-                  qtbase
-                  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)))
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index f936dde55a..a8d6627feb 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -8788,36 +8788,6 @@ (define-public pipewire-0.3
                        vulkan-loader
                        vulkan-headers)))))

-(define-public wireplumber
-  (package
-    (name "wireplumber")
-    (version "0.4.6")
-    (source
-     (origin
-       (method git-fetch)
-       (uri (git-reference
-             (url
-              "https://gitlab.freedesktop.org/pipewire/wireplumber.git")
-             (commit version)))
-       (file-name (git-file-name name version))
-       (sha256
-        (base32 "0g7xkgkjlxrhs49hqkwrjk2hb478gq55wwydafvvbsv78vsa7qfb"))))
-    (build-system meson-build-system)
-    (arguments
-     `(#:configure-flags '("-Dsystemd=disabled"
-                           "-Dsystem-lua=true")))
-    (native-inputs
-     (list `(,glib "bin")
-           pkg-config))
-    (inputs (list dbus elogind glib lua pipewire-0.3))
-    (home-page "https://gitlab.freedesktop.org/pipewire/wireplumber")
-    (synopsis "Session / policy manager implementation for PipeWire")
-    (description "WirePlumber is a modular session / policy manager for
-PipeWire and a GObject-based high-level library that wraps PipeWire's API,
-providing convenience for writing the daemon's modules as well as external
-tools for managing PipeWire.")
-    (license license:expat)))
-
 (define-public ell
   (package
     (name "ell")
diff --git a/gnu/packages/pipewire.scm b/gnu/packages/pipewire.scm
index 2b923e0d05..9fb8ed66ab 100644
--- a/gnu/packages/pipewire.scm
+++ b/gnu/packages/pipewire.scm
@@ -1,4 +1,10 @@
+;;; Copyright © 2021 Josselin Poiret <josselin.poiret <at> protonmail.ch>
+;;; Copyright © 2022 Tobias Geerinckx-Rice <me <at> tobias.gr>
+;;; Copyright © 2021 Mathieu Othacehe <othacehe <at> gnu.org>
+;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
+;;; Copyright © 2022 Juliana Sims <jtsims <at> protonmail.com>
 ;;; Copyright © 2022 Marcel Kupiec <formbi <at> protonmail.com>
+;;; Copyright © 2022 Efraim Flashner <efraim <at> flashner.co.il>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -46,6 +52,65 @@ (define-module (gnu packages pipewire)
   #:use-module (gnu packages xdisorg)
   #:use-module (gnu packages xiph))

+(define-public wireplumber
+  (package
+   (name "wireplumber")
+   (version "0.4.6")
+   (source
+    (origin
+     (method git-fetch)
+     (uri (git-reference
+           (url
+            "https://gitlab.freedesktop.org/pipewire/wireplumber.git")
+           (commit version)))
+     (file-name (git-file-name name version))
+     (sha256
+      (base32 "0g7xkgkjlxrhs49hqkwrjk2hb478gq55wwydafvvbsv78vsa7qfb"))))
+   (build-system meson-build-system)
+   (arguments
+    `(#:configure-flags '("-Dsystemd=disabled"
+                          "-Dsystem-lua=true")))
+   (native-inputs
+    (list `(,glib "bin")
+          pkg-config))
+   (inputs (list dbus elogind glib lua pipewire-0.3))
+   (home-page "https://gitlab.freedesktop.org/pipewire/wireplumber")
+   (synopsis "Session / policy manager implementation for PipeWire")
+   (description "WirePlumber is a modular session / policy manager for
+PipeWire and a GObject-based high-level library that wraps PipeWire's API,
+providing convenience for writing the daemon's modules as well as external
+tools for managing PipeWire.")
+   (license license:expat)))
+
+(define-public qpwgraph
+  (package
+   (name "qpwgraph")
+   (version "0.3.4")
+   (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
+              "1xqmlbqj6ny4cpclzr8xyy6d6i392h9f1vmlbasp6xfy5b0yya94"))))
+   (build-system cmake-build-system)
+   (arguments (list #:tests? #f)) ;; no tests
+   (inputs (list alsa-lib
+                 libxkbcommon
+                 pipewire-0.3
+                 qtbase
+                 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)))
+
 (define-public easyeffects
   (let ((toolchain (specification->package "gcc-toolchain <at> 11")))
     ;; for std::source_location
--
2.37.0






This bug report was last modified 1 year and 226 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.