GNU bug report logs - #54065
[PATCH 0/3] Update mumble to 1.4.230

Previous Next

Package: guix-patches;

Reported by: Liliana Marie Prikler <liliana.prikler <at> gmail.com>

Date: Sat, 19 Feb 2022 15:50:01 UTC

Severity: normal

Tags: patch

Done: Ludovic Courtès <ludo <at> gnu.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 54065 in the body.
You can then email your comments to 54065 AT debbugs.gnu.org in the normal way.

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#54065; Package guix-patches. (Sat, 19 Feb 2022 15:50:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Liliana Marie Prikler <liliana.prikler <at> gmail.com>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Sat, 19 Feb 2022 15:50:01 GMT) Full text and rfc822 format available.

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

From: Liliana Marie Prikler <liliana.prikler <at> gmail.com>
To: guix-patches <at> gnu.org
Subject: [PATCH 0/3] Update mumble to 1.4.230
Date: Sat, 19 Feb 2022 16:39:03 +0100
Salut Guix,

The following patch set updates mumble to the latest upstream version
and enables tests.  Mumble now has a new dependency I needed to package
in order to get it to build.  I didn't check this thing too closely for
potential nasty stuff, so I'd like a few eyes on it.

Bisous

Liliana Marie Prikler (3):
  gnu: Add poco.
  gnu: mumble: Update to 1.4.230.
  gnu: mumble: Enable tests.

 gnu/packages/cpp.scm       |  33 ++++++++
 gnu/packages/telephony.scm | 154 +++++++++++++++++--------------------
 2 files changed, 104 insertions(+), 83 deletions(-)

-- 
2.34.0





Information forwarded to guix-patches <at> gnu.org:
bug#54065; Package guix-patches. (Sat, 19 Feb 2022 15:56:01 GMT) Full text and rfc822 format available.

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

From: Liliana Marie Prikler <liliana.prikler <at> gmail.com>
To: 54065 <at> debbugs.gnu.org
Subject: [PATCH 1/3] gnu: Add poco.
Date: Sat, 19 Feb 2022 16:03:37 +0100
* gnu/packages/cpp.scm (poco): New variable.
---
 gnu/packages/cpp.scm | 33 +++++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)

diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm
index 86138531c0..66e5c6f257 100644
--- a/gnu/packages/cpp.scm
+++ b/gnu/packages/cpp.scm
@@ -1073,6 +1073,39 @@ (define-public folly
     (supported-systems '("aarch64-linux" "x86_64-linux"))
     (license license:asl2.0)))
 
+(define-public poco
+  (package
+    (name "poco")
+    (version "1.11.1")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/pocoproject/poco")
+                    (commit (string-append "poco-" version "-release"))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0qkf8vb4qwds6idk9fkw6wjvcdk5k8h77x3gv47l0i4jfl5hwn8b"))))
+    (build-system cmake-build-system)
+    (arguments
+     (list
+      #:configure-flags #~(list "-DENABLE_TESTS=ON")
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'unpack 'disable-problematic-tests
+            (lambda _
+              (substitute* (list "Foundation/CMakeLists.txt" ; XXX: fails.
+                                 ;; Require network access
+                                 "Net/CMakeLists.txt"
+                                 "MongoDB/CMakeLists.txt"
+                                 "Redis/CMakeLists.txt")
+                (("ENABLE_TESTS") "FALSE")))))))
+    (home-page "https://pocoproject.org/")
+    (synopsis "Portable C++ components")
+    (description "A collection of libraries intended to be useful for building
+network-based applications.")
+    (license license:boost1.0)))
+
 (define-public aws-crt-cpp
   (let* ((commit "b6d311d76b504bf8ace5134d3fca0e672c36c9c3")
          (revision "1"))
-- 
2.34.0





Information forwarded to guix-patches <at> gnu.org:
bug#54065; Package guix-patches. (Sat, 19 Feb 2022 15:56:01 GMT) Full text and rfc822 format available.

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

From: Liliana Marie Prikler <liliana.prikler <at> gmail.com>
To: 54065 <at> debbugs.gnu.org
Subject: [PATCH 2/3] gnu: mumble: Update to 1.4.230.
Date: Sat, 19 Feb 2022 16:05:34 +0100
* gnu/packages/telephony.scm (find-python-interpreter-cmake-modules):
New variable.
(mumble): Update to 1.4.230.
[source]: Adjust uri and snippet accordingly.
[arguments]: Change to a list of G-expressions.
<#:configure-flags>: New argument.
<#:phases>: Drop ‘configure’ (moved to configure-flags).
Add ‘unpack-submodules’, ‘fix-settings-crash’ and ‘hardcode-pulseaudio’.
[inputs]: Add glib and poco.
---
 gnu/packages/telephony.scm | 154 +++++++++++++++++--------------------
 1 file changed, 71 insertions(+), 83 deletions(-)

diff --git a/gnu/packages/telephony.scm b/gnu/packages/telephony.scm
index b4b2585935..59f7741579 100644
--- a/gnu/packages/telephony.scm
+++ b/gnu/packages/telephony.scm
@@ -50,6 +50,7 @@ (define-module (gnu packages telephony)
   #:use-module (gnu packages boost)
   #:use-module (gnu packages check)
   #:use-module (gnu packages compression)
+  #:use-module (gnu packages cpp)
   #:use-module (gnu packages crypto)
   #:use-module (gnu packages databases)
   #:use-module (gnu packages docbook)
@@ -91,6 +92,7 @@ (define-module (gnu packages telephony)
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix utils)
   #:use-module (guix packages)
+  #:use-module (guix gexp)
   #:use-module (guix download)
   #:use-module (guix git-download)
   #:use-module (guix build-system cmake)
@@ -536,34 +538,48 @@ (define-public seren
     (home-page "http://holdenc.altervista.org/seren/")
     (license license:gpl3+)))
 
+(define find-python-interpreter-cmake-modules
+  (let ((commit "bb4d3ea8434eebef40df35434a9b6ef410fce0b2")
+        (revision "0"))
+   (origin
+    (method git-fetch)
+    (uri (git-reference
+          (url "https://github.com/Krzmbrzl/FindPythonInterpreter")
+          (commit commit)))
+    (file-name (git-file-name "find-python-interpreter"
+                              (git-version "0" revision commit)))
+    (sha256
+     (base32
+      "1ryhda2yqgrhnwndfg52mscdsclg1ivv746hvalcay5m1wy2h5bm")))))
+
 (define-public mumble
   (package
     (name "mumble")
-    (version "1.3.4")
+    (version "1.4.230")
     (source (origin
               (method url-fetch)
               (uri
                (string-append
-                "https://github.com/mumble-voip/mumble/releases/download/"
+                "https://github.com/mumble-voip/mumble/releases/download/v"
                 version "/" name "-" version ".tar.gz"))
               (sha256
                (base32
-                "14v0rgy1a5alxmz7ly95y38bdj0hx79yysgkcd8r8p9qqfzlwpv1"))
+                "1c1lwj0cpyawr74adpdrsnxk8ra5kqrjbg65cnwk8n6cwss84zdn"))
               (modules '((guix build utils)
                          (ice-9 ftw)
                          (srfi srfi-1)))
               (snippet
                `(begin
                   (let ((keep
-                         '("arc4random-src"
+                         '("arc4random"
                            "celt-0.7.0-build"
                            "celt-0.7.0-src"
                            "celt-0.11.0-build"
                            "celt-0.11.0-src"
-                           "qqbonjour-src"
                            "rnnoise-build"
                            "rnnoise-src"
-                           "smallft-src")))
+                           "qqbonjour"
+                           "smallft")))
 	            (with-directory-excursion "3rdparty"
 	              (for-each delete-file-recursively
 			        (lset-difference string=?
@@ -572,48 +588,40 @@ (define-public mumble
                     #t)))))
     (build-system qt-build-system)
     (arguments
-     `(#:tests? #f  ; no "check" target
-       #:phases
-       (modify-phases %standard-phases
-         (replace 'configure
-           (lambda* (#:key inputs outputs #:allow-other-keys)
-             (invoke "qmake" "main.pro" "QMAKE_LRELEASE=lrelease"
-                     (string-append "MUMBLE_PYTHON="
-                                    (search-input-file inputs
-                                                       "/bin/python3"))
-                     (string-append "CONFIG+="
-                                    (string-join
-                                     ;; Options used are listed in the same order
-                                     ;; as in the "INSTALL" file
-                                     ;; (plus the final "packaged" and "release").
-                                     (list "no-bundled-speex" ; in speex
-                                           "no-bundled-opus" ; in opus
-                                           "no-g15" ; not packaged
-                                           "no-jackaudio" ; use pulse
-                                           "no-oss" ; use pulse
-                                           "no-alsa" ; use pulse
-                                           "no-update"
-                                           "no-embed-qt-translations"
-                                           "no-ice" ; not packaged
-                                           "packaged"
-                                           "release")))
-                     (string-append "DEFINES+="
-                                    "PLUGIN_PATH="
-                                    (assoc-ref outputs "out")
-                                    "/lib/mumble"))))
-         (add-before 'configure 'fix-libspeechd-include
-           (lambda _
-             (substitute* "src/mumble/TextToSpeech_unix.cpp"
-               (("libspeechd.h") "speech-dispatcher/libspeechd.h"))
-             #t))
-         ;; disable statistic gathering by default. see <https://bugs.gnu.org/25201>
-         (add-before 'configure 'fix-statistic-gathering-default
-           (lambda _
-             (substitute* "src/mumble/Settings.cpp"
-               (("bUsage = true;") "bUsage = false;"))
-             #t))
-         (add-before 'configure 'fix-mumble-overlay
-           (lambda* (#:key outputs #:allow-other-keys)
+     (list
+      #:tests? #f  ; no "check" target
+      #:configure-flags
+      #~(list "-Dbundled-speex=off"
+              "-Dbundled-opus=off"
+              ;; "-Dbundled-rnnoise=off" ; XXX: not yet in release
+              "-Dalsa=off" ; use pulse
+              "-Dcoreaudio=off" ; use pulse
+              "-Dice=off" ; not packaged
+              "-Djackaudio=off" ; use pulse
+              "-Doss=off" ; use pulse
+              "-Dpulseaudio=on"
+              "-Dportaudio=off" ; use pulse
+              "-Dpipewire=off" ; use pulse
+              "-Doverlay-xcompile=off"
+              "-Dupdate=off" ; don't phone home
+              "-Dbundle-qt-translations=off")
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'unpack 'unpack-submodules
+            (lambda _
+              (copy-recursively #$find-python-interpreter-cmake-modules
+                                "3rdparty/FindPythonInterpreter")))
+          (add-after 'unpack 'disable-murmur-ice
+            (lambda _
+              (substitute* "scripts/murmur.ini"
+                (("^ice=") ";ice="))))
+          ;; disable statistic gathering by default. see <https://bugs.gnu.org/25201>
+          (add-after 'unpack 'fix-statistic-gathering-default
+            (lambda _
+              (substitute* "src/mumble/Settings.h"
+                (("bUsage *= true;") "bUsage = false;"))))
+          (add-after 'unpack 'fix-mumble-overlay
+            (lambda* (#:key outputs #:allow-other-keys)
               (with-output-to-file "scripts/mumble-overlay"
                 (lambda ()
                   (format #t "#!~a~%" (which "bash"))
@@ -622,55 +630,35 @@ (define-public mumble
                                          "/lib/mumble/libmumble.so.1"))
                   (format #t "exec \"${@}\"")))
               #t))
-         (add-before 'install 'disable-murmur-ice
-           (lambda _
-             (substitute* "scripts/murmur.ini.system"
-               (("^ice=") ";ice="))
-             #t))
-         (replace 'install ; install phase does not exist
-           (lambda* (#:key inputs outputs #:allow-other-keys)
-             (let* ((out (assoc-ref outputs "out"))
-                    (etc (string-append out "/etc/murmur"))
-                    (dbus (string-append out "/etc/dbus-1/system.d/"))
-                    (bin (string-append out "/bin"))
-                    (services (string-append out "/share/services"))
-                    (applications (string-append out "/share/applications"))
-                    (icons (string-append out "/share/icons/hicolor/scalable/apps"))
-                    (man (string-append out "/share/man/man1"))
-                    (lib (string-append out "/lib/mumble")))
-               (install-file "release/mumble" bin)
-               (install-file "scripts/mumble-overlay" bin)
-               (install-file "scripts/mumble.protocol" services)
-               (install-file "scripts/mumble.desktop" applications)
-               (install-file "icons/mumble.svg" icons)
-               (install-file "man/mumble-overlay.1" man)
-               (install-file "man/mumble.1" man)
-               (install-file "release/murmurd" bin)
-               (install-file "scripts/murmur.ini.system" etc)
-               (rename-file (string-append etc "/murmur.ini.system")
-                            (string-append etc "/murmur.ini"))
-               (install-file "scripts/murmur.conf" dbus)
-               (install-file "man/murmurd.1" man)
-               (for-each (lambda (file) (install-file file lib))
-                         (find-files "." "\\.so\\."))
-               (for-each (lambda (file) (install-file file lib))
-                         (find-files "release/plugins" "\\.so$"))
-               #t))))))
+          (add-after 'unpack 'fix-settings-crash
+            (lambda _
+              (substitute* "src/mumble/AudioConfigDialog.cpp"
+                (("updateEchoEnableState\\(\\) \\{" all)
+                 (string-append all
+                                "if (!AudioInputRegistrar::qmNew) return;")))))
+          (add-after 'unpack 'hardcode-pulseaudio
+            (lambda* (#:key inputs #:allow-other-keys)
+              (substitute* "src/mumble/PulseAudio.cpp"
+                (("libpulse.so") (search-input-file inputs "/lib/libpulse.so"))))))))
     (inputs
      (list avahi
            boost
+           glib ; for speech-dispatcher
            libsndfile
            libxi
            mesa ; avoid bundled
            openssl
            opus ; avoid bundled
+           poco
            protobuf
            pulseaudio
            qtbase-5
            qtsvg
            speech-dispatcher
            speex ; avoid bundled
-           speexdsp)) ; avoid bundled
+           speexdsp ; avoid bundled
+           ;; xiph-rnnoise ; TODO: unbundle rnnoise
+           ))
     (native-inputs
      (list pkg-config python qttools))
     (synopsis "Low-latency, high quality voice chat software")
-- 
2.34.0





Information forwarded to guix-patches <at> gnu.org:
bug#54065; Package guix-patches. (Sat, 19 Feb 2022 15:56:02 GMT) Full text and rfc822 format available.

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

From: Liliana Marie Prikler <liliana.prikler <at> gmail.com>
To: 54065 <at> debbugs.gnu.org
Subject: [PATCH 3/3] gnu: mumble: Enable tests.
Date: Sat, 19 Feb 2022 16:37:51 +0100
* gnu/packages/telephony.scm (mumble)[#:tests?]: Drop argument.
[#:configure-flags]: Add “-Dtests=on”.
---
 gnu/packages/telephony.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gnu/packages/telephony.scm b/gnu/packages/telephony.scm
index 59f7741579..92a727683a 100644
--- a/gnu/packages/telephony.scm
+++ b/gnu/packages/telephony.scm
@@ -589,7 +589,6 @@ (define-public mumble
     (build-system qt-build-system)
     (arguments
      (list
-      #:tests? #f  ; no "check" target
       #:configure-flags
       #~(list "-Dbundled-speex=off"
               "-Dbundled-opus=off"
@@ -604,6 +603,7 @@ (define-public mumble
               "-Dpipewire=off" ; use pulse
               "-Doverlay-xcompile=off"
               "-Dupdate=off" ; don't phone home
+              "-Dtests=on"
               "-Dbundle-qt-translations=off")
       #:phases
       #~(modify-phases %standard-phases
-- 
2.34.0





Information forwarded to guix-patches <at> gnu.org:
bug#54065; Package guix-patches. (Sat, 19 Feb 2022 18:13:02 GMT) Full text and rfc822 format available.

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

From: Maxime Devos <maximedevos <at> telenet.be>
To: Liliana Marie Prikler <liliana.prikler <at> gmail.com>, 54065 <at> debbugs.gnu.org
Subject: Re: [bug#54065] [PATCH 2/3] gnu: mumble: Update to 1.4.230.
Date: Sat, 19 Feb 2022 19:12:37 +0100
[Message part 1 (text/plain, inline)]
Liliana Marie Prikler schreef op za 19-02-2022 om 16:05 [+0100]:
> +          (add-after 'unpack 'fix-settings-crash
> +            (lambda _
> +              (substitute* "src/mumble/AudioConfigDialog.cpp"
> +                (("updateEchoEnableState\\(\\) \\{" all)
> +                 (string-append all
> +                                "if (!AudioInputRegistrar::qmNew) return;")))))

At first sight, this seems a bug in the source code to me,
also relevant to other distros, so I would do this in an origin
snippet and submit it upstream.

Greetings,
Maxime.
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#54065; Package guix-patches. (Sat, 19 Feb 2022 18:19:02 GMT) Full text and rfc822 format available.

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

From: Maxime Devos <maximedevos <at> telenet.be>
To: Liliana Marie Prikler <liliana.prikler <at> gmail.com>, 54065 <at> debbugs.gnu.org
Subject: Re: [bug#54065] [PATCH 2/3] gnu: mumble: Update to 1.4.230.
Date: Sat, 19 Feb 2022 19:18:24 +0100
[Message part 1 (text/plain, inline)]
Liliana Marie Prikler schreef op za 19-02-2022 om 16:05 [+0100]:
> +      #~(list "-Dbundled-speex=off"
> +              "-Dbundled-opus=off"
> +              ;; "-Dbundled-rnnoise=off" ; XXX: not yet in release
> +              "-Dalsa=off" ; use pulse
> +              "-Dcoreaudio=off" ; use pulse
> +              "-Dice=off" ; not packaged
> +              "-Djackaudio=off" ; use pulse
> +              "-Doss=off" ; use pulse
> +              "-Dpulseaudio=on"
> +              "-Dportaudio=off" ; use pulse
> +              "-Dpipewire=off" ; use pulse
> +              "-Doverlay-xcompile=off"
> +              "-Dupdate=off" ; don't phone home
> +              "-Dbundle-qt-translations=off")

Can this patch be split in a few parts?  Unless these configure flags
are new, it seems to me that unbundling could be done separately from
updating.

Greetings,
Maxime.
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#54065; Package guix-patches. (Sat, 19 Feb 2022 18:21:02 GMT) Full text and rfc822 format available.

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

From: Maxime Devos <maximedevos <at> telenet.be>
To: Liliana Marie Prikler <liliana.prikler <at> gmail.com>, 54065 <at> debbugs.gnu.org
Subject: Re: [bug#54065] [PATCH 2/3] gnu: mumble: Update to 1.4.230.
Date: Sat, 19 Feb 2022 19:20:34 +0100
[Message part 1 (text/plain, inline)]
Liliana Marie Prikler schreef op za 19-02-2022 om 16:05 [+0100]:
> +          (add-after 'unpack 'fix-mumble-overlay
> +            (lambda* (#:key outputs #:allow-other-keys)
>                (with-output-to-file "scripts/mumble-overlay"
>                  (lambda ()
>                    (format #t "#!~a~%" (which "bash"))

This is more a bug in the original package definition, but
this use of 'which "bash"' is incorrect when cross-compiling, it needs
to be (search-input-file inputs "bin/bash") instead.

Greetings,
Maxime.
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#54065; Package guix-patches. (Sat, 19 Feb 2022 19:19:02 GMT) Full text and rfc822 format available.

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

From: Liliana Marie Prikler <liliana.prikler <at> gmail.com>
To: Maxime Devos <maximedevos <at> telenet.be>, 54065 <at> debbugs.gnu.org
Subject: Re: [bug#54065] [PATCH 2/3] gnu: mumble: Update to 1.4.230.
Date: Sat, 19 Feb 2022 20:18:09 +0100
Am Samstag, dem 19.02.2022 um 19:18 +0100 schrieb Maxime Devos:
> Liliana Marie Prikler schreef op za 19-02-2022 om 16:05 [+0100]:
> > +      #~(list "-Dbundled-speex=off"
> > +              "-Dbundled-opus=off"
> > +              ;; "-Dbundled-rnnoise=off" ; XXX: not yet in release
> > +              "-Dalsa=off" ; use pulse
> > +              "-Dcoreaudio=off" ; use pulse
> > +              "-Dice=off" ; not packaged
> > +              "-Djackaudio=off" ; use pulse
> > +              "-Doss=off" ; use pulse
> > +              "-Dpulseaudio=on"
> > +              "-Dportaudio=off" ; use pulse
> > +              "-Dpipewire=off" ; use pulse
> > +              "-Doverlay-xcompile=off"
> > +              "-Dupdate=off" ; don't phone home
> > +              "-Dbundle-qt-translations=off")
> 
> Can this patch be split in a few parts?  Unless these configure flags
> are new, it seems to me that unbundling could be done separately from
> updating.
Afaik no.  Old versions of mumble built via qmake whereas this uses
CMakeLists, which requires configure-flags.  I only added as much as
was needed for the build to run -- unbundling of rnnoise can not be
done with this release yet.

Cheers




Information forwarded to guix-patches <at> gnu.org:
bug#54065; Package guix-patches. (Sat, 19 Feb 2022 19:19:02 GMT) Full text and rfc822 format available.

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

From: Liliana Marie Prikler <liliana.prikler <at> gmail.com>
To: Maxime Devos <maximedevos <at> telenet.be>, 54065 <at> debbugs.gnu.org
Subject: Re: [bug#54065] [PATCH 2/3] gnu: mumble: Update to 1.4.230.
Date: Sat, 19 Feb 2022 20:18:33 +0100
Am Samstag, dem 19.02.2022 um 19:20 +0100 schrieb Maxime Devos:
> Liliana Marie Prikler schreef op za 19-02-2022 om 16:05 [+0100]:
> > +          (add-after 'unpack 'fix-mumble-overlay
> > +            (lambda* (#:key outputs #:allow-other-keys)
> >                (with-output-to-file "scripts/mumble-overlay"
> >                  (lambda ()
> >                    (format #t "#!~a~%" (which "bash"))
> 
> This is more a bug in the original package definition, but
> this use of 'which "bash"' is incorrect when cross-compiling, it
> needs to be (search-input-file inputs "bin/bash") instead.
Thanks for the catch, will update.




Information forwarded to guix-patches <at> gnu.org:
bug#54065; Package guix-patches. (Sat, 19 Feb 2022 19:21:02 GMT) Full text and rfc822 format available.

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

From: Liliana Marie Prikler <liliana.prikler <at> gmail.com>
To: Maxime Devos <maximedevos <at> telenet.be>, 54065 <at> debbugs.gnu.org
Subject: Re: [bug#54065] [PATCH 2/3] gnu: mumble: Update to 1.4.230.
Date: Sat, 19 Feb 2022 20:20:05 +0100
Am Samstag, dem 19.02.2022 um 19:12 +0100 schrieb Maxime Devos:
> Liliana Marie Prikler schreef op za 19-02-2022 om 16:05 [+0100]:
> > +          (add-after 'unpack 'fix-settings-crash
> > +            (lambda _
> > +              (substitute* "src/mumble/AudioConfigDialog.cpp"
> > +                (("updateEchoEnableState\\(\\) \\{" all)
> > +                 (string-append all
> > +                                "if (!AudioInputRegistrar::qmNew)
> > return;")))))
> 
> At first sight, this seems a bug in the source code to me,
> also relevant to other distros, so I would do this in an origin
> snippet and submit it upstream.
To be completely honest, I wrote this before I wrote the phase that
fixes pulseaudio, so it might be that this crash only occurs when pulse
is not running.  Need to investigate that.




Information forwarded to guix-patches <at> gnu.org:
bug#54065; Package guix-patches. (Tue, 22 Feb 2022 13:21:02 GMT) Full text and rfc822 format available.

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

From: Liliana Marie Prikler <liliana.prikler <at> gmail.com>
To: Maxime Devos <maximedevos <at> telenet.be>, 54065 <at> debbugs.gnu.org
Subject: [PATCH v2 1/3] gnu: Add poco.
Date: Sat, 19 Feb 2022 16:03:37 +0100
* gnu/packages/cpp.scm (poco): New variable.
---
 gnu/packages/cpp.scm | 33 +++++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)

diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm
index 1227e705c3..7968db2acc 100644
--- a/gnu/packages/cpp.scm
+++ b/gnu/packages/cpp.scm
@@ -1072,6 +1072,39 @@ (define-public folly
     (supported-systems '("aarch64-linux" "x86_64-linux"))
     (license license:asl2.0)))
 
+(define-public poco
+  (package
+    (name "poco")
+    (version "1.11.1")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/pocoproject/poco")
+                    (commit (string-append "poco-" version "-release"))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0qkf8vb4qwds6idk9fkw6wjvcdk5k8h77x3gv47l0i4jfl5hwn8b"))))
+    (build-system cmake-build-system)
+    (arguments
+     (list
+      #:configure-flags #~(list "-DENABLE_TESTS=ON")
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'unpack 'disable-problematic-tests
+            (lambda _
+              (substitute* (list "Foundation/CMakeLists.txt" ; XXX: fails.
+                                 ;; Require network access
+                                 "Net/CMakeLists.txt"
+                                 "MongoDB/CMakeLists.txt"
+                                 "Redis/CMakeLists.txt")
+                (("ENABLE_TESTS") "FALSE")))))))
+    (home-page "https://pocoproject.org/")
+    (synopsis "Portable C++ components")
+    (description "A collection of libraries intended to be useful for building
+network-based applications.")
+    (license license:boost1.0)))
+
 (define-public aws-crt-cpp
   (let* ((commit "b6d311d76b504bf8ace5134d3fca0e672c36c9c3")
          (revision "1"))
-- 
2.34.0





Information forwarded to guix-patches <at> gnu.org:
bug#54065; Package guix-patches. (Tue, 22 Feb 2022 13:21:02 GMT) Full text and rfc822 format available.

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

From: Liliana Marie Prikler <liliana.prikler <at> gmail.com>
To: Maxime Devos <maximedevos <at> telenet.be>, 54065 <at> debbugs.gnu.org
Subject: [PATCH v2 2/3] gnu: mumble: Update to 1.4.230.
Date: Sat, 19 Feb 2022 16:05:34 +0100
* gnu/packages/telephony.scm (find-python-interpreter-cmake-modules):
New variable.
(mumble): Update to 1.4.230.
[source]: Adjust uri and snippet accordingly.
[arguments]: Change to a list of G-expressions.
<#:configure-flags>: New argument.
<#:phases>: Drop ‘configure’ (moved to configure-flags).
Add ‘unpack-submodules’, ‘fix-settings-crash’ and ‘hardcode-pulseaudio’.
[inputs]: Add glib and poco.
---
 gnu/packages/telephony.scm | 150 ++++++++++++++++---------------------
 1 file changed, 66 insertions(+), 84 deletions(-)

diff --git a/gnu/packages/telephony.scm b/gnu/packages/telephony.scm
index b4b2585935..effe8d167f 100644
--- a/gnu/packages/telephony.scm
+++ b/gnu/packages/telephony.scm
@@ -50,6 +50,7 @@ (define-module (gnu packages telephony)
   #:use-module (gnu packages boost)
   #:use-module (gnu packages check)
   #:use-module (gnu packages compression)
+  #:use-module (gnu packages cpp)
   #:use-module (gnu packages crypto)
   #:use-module (gnu packages databases)
   #:use-module (gnu packages docbook)
@@ -91,6 +92,7 @@ (define-module (gnu packages telephony)
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix utils)
   #:use-module (guix packages)
+  #:use-module (guix gexp)
   #:use-module (guix download)
   #:use-module (guix git-download)
   #:use-module (guix build-system cmake)
@@ -536,34 +538,48 @@ (define-public seren
     (home-page "http://holdenc.altervista.org/seren/")
     (license license:gpl3+)))
 
+(define find-python-interpreter-cmake-modules
+  (let ((commit "bb4d3ea8434eebef40df35434a9b6ef410fce0b2")
+        (revision "0"))
+   (origin
+    (method git-fetch)
+    (uri (git-reference
+          (url "https://github.com/Krzmbrzl/FindPythonInterpreter")
+          (commit commit)))
+    (file-name (git-file-name "find-python-interpreter"
+                              (git-version "0" revision commit)))
+    (sha256
+     (base32
+      "1ryhda2yqgrhnwndfg52mscdsclg1ivv746hvalcay5m1wy2h5bm")))))
+
 (define-public mumble
   (package
     (name "mumble")
-    (version "1.3.4")
+    (version "1.4.230")
     (source (origin
               (method url-fetch)
               (uri
                (string-append
-                "https://github.com/mumble-voip/mumble/releases/download/"
+                "https://github.com/mumble-voip/mumble/releases/download/v"
                 version "/" name "-" version ".tar.gz"))
               (sha256
                (base32
-                "14v0rgy1a5alxmz7ly95y38bdj0hx79yysgkcd8r8p9qqfzlwpv1"))
+                "1c1lwj0cpyawr74adpdrsnxk8ra5kqrjbg65cnwk8n6cwss84zdn"))
               (modules '((guix build utils)
                          (ice-9 ftw)
                          (srfi srfi-1)))
               (snippet
                `(begin
                   (let ((keep
-                         '("arc4random-src"
+                         '("arc4random"
                            "celt-0.7.0-build"
                            "celt-0.7.0-src"
                            "celt-0.11.0-build"
                            "celt-0.11.0-src"
-                           "qqbonjour-src"
+                           "qqbonjour"
                            "rnnoise-build"
                            "rnnoise-src"
-                           "smallft-src")))
+                           "smallft")))
 	            (with-directory-excursion "3rdparty"
 	              (for-each delete-file-recursively
 			        (lset-difference string=?
@@ -572,105 +588,71 @@ (define-public mumble
                     #t)))))
     (build-system qt-build-system)
     (arguments
-     `(#:tests? #f  ; no "check" target
-       #:phases
-       (modify-phases %standard-phases
-         (replace 'configure
-           (lambda* (#:key inputs outputs #:allow-other-keys)
-             (invoke "qmake" "main.pro" "QMAKE_LRELEASE=lrelease"
-                     (string-append "MUMBLE_PYTHON="
-                                    (search-input-file inputs
-                                                       "/bin/python3"))
-                     (string-append "CONFIG+="
-                                    (string-join
-                                     ;; Options used are listed in the same order
-                                     ;; as in the "INSTALL" file
-                                     ;; (plus the final "packaged" and "release").
-                                     (list "no-bundled-speex" ; in speex
-                                           "no-bundled-opus" ; in opus
-                                           "no-g15" ; not packaged
-                                           "no-jackaudio" ; use pulse
-                                           "no-oss" ; use pulse
-                                           "no-alsa" ; use pulse
-                                           "no-update"
-                                           "no-embed-qt-translations"
-                                           "no-ice" ; not packaged
-                                           "packaged"
-                                           "release")))
-                     (string-append "DEFINES+="
-                                    "PLUGIN_PATH="
-                                    (assoc-ref outputs "out")
-                                    "/lib/mumble"))))
-         (add-before 'configure 'fix-libspeechd-include
-           (lambda _
-             (substitute* "src/mumble/TextToSpeech_unix.cpp"
-               (("libspeechd.h") "speech-dispatcher/libspeechd.h"))
-             #t))
-         ;; disable statistic gathering by default. see <https://bugs.gnu.org/25201>
-         (add-before 'configure 'fix-statistic-gathering-default
-           (lambda _
-             (substitute* "src/mumble/Settings.cpp"
-               (("bUsage = true;") "bUsage = false;"))
-             #t))
-         (add-before 'configure 'fix-mumble-overlay
-           (lambda* (#:key outputs #:allow-other-keys)
+     (list
+      #:tests? #f  ; no "check" target
+      #:configure-flags
+      #~(list "-Dbundled-speex=off"
+              "-Dbundled-opus=off"
+              ;; "-Dbundled-rnnoise=off" ; XXX: not yet in release
+              "-Dalsa=off" ; use pulse
+              "-Dcoreaudio=off" ; use pulse
+              "-Dice=off" ; not packaged
+              "-Djackaudio=off" ; use pulse
+              "-Doss=off" ; use pulse
+              "-Dpulseaudio=on"
+              "-Dportaudio=off" ; use pulse
+              "-Dpipewire=off" ; use pulse
+              "-Doverlay-xcompile=off"
+              "-Dupdate=off" ; don't phone home
+              "-Dbundle-qt-translations=off")
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'unpack 'unpack-submodules
+            (lambda _
+              (copy-recursively #$find-python-interpreter-cmake-modules
+                                "3rdparty/FindPythonInterpreter")))
+          (add-after 'unpack 'disable-murmur-ice
+            (lambda _
+              (substitute* "scripts/murmur.ini"
+                (("^ice=") ";ice="))))
+          ;; disable statistic gathering by default. see <https://bugs.gnu.org/25201>
+          (add-after 'unpack 'fix-statistic-gathering-default
+            (lambda _
+              (substitute* "src/mumble/Settings.h"
+                (("bUsage *= true;") "bUsage = false;"))))
+          (add-after 'unpack 'fix-mumble-overlay
+            (lambda* (#:key inputs outputs #:allow-other-keys)
               (with-output-to-file "scripts/mumble-overlay"
                 (lambda ()
-                  (format #t "#!~a~%" (which "bash"))
+                  (format #t "#!~a~%" (search-input-file inputs "/bin/bash"))
                   (format #t "export LD_PRELOAD=\"~a $LD_PRELOAD\"~%"
                           (string-append (assoc-ref outputs "out")
                                          "/lib/mumble/libmumble.so.1"))
                   (format #t "exec \"${@}\"")))
               #t))
-         (add-before 'install 'disable-murmur-ice
-           (lambda _
-             (substitute* "scripts/murmur.ini.system"
-               (("^ice=") ";ice="))
-             #t))
-         (replace 'install ; install phase does not exist
-           (lambda* (#:key inputs outputs #:allow-other-keys)
-             (let* ((out (assoc-ref outputs "out"))
-                    (etc (string-append out "/etc/murmur"))
-                    (dbus (string-append out "/etc/dbus-1/system.d/"))
-                    (bin (string-append out "/bin"))
-                    (services (string-append out "/share/services"))
-                    (applications (string-append out "/share/applications"))
-                    (icons (string-append out "/share/icons/hicolor/scalable/apps"))
-                    (man (string-append out "/share/man/man1"))
-                    (lib (string-append out "/lib/mumble")))
-               (install-file "release/mumble" bin)
-               (install-file "scripts/mumble-overlay" bin)
-               (install-file "scripts/mumble.protocol" services)
-               (install-file "scripts/mumble.desktop" applications)
-               (install-file "icons/mumble.svg" icons)
-               (install-file "man/mumble-overlay.1" man)
-               (install-file "man/mumble.1" man)
-               (install-file "release/murmurd" bin)
-               (install-file "scripts/murmur.ini.system" etc)
-               (rename-file (string-append etc "/murmur.ini.system")
-                            (string-append etc "/murmur.ini"))
-               (install-file "scripts/murmur.conf" dbus)
-               (install-file "man/murmurd.1" man)
-               (for-each (lambda (file) (install-file file lib))
-                         (find-files "." "\\.so\\."))
-               (for-each (lambda (file) (install-file file lib))
-                         (find-files "release/plugins" "\\.so$"))
-               #t))))))
+          (add-after 'unpack 'hardcode-pulseaudio
+            (lambda* (#:key inputs #:allow-other-keys)
+              (substitute* "src/mumble/PulseAudio.cpp"
+                (("libpulse.so") (search-input-file inputs "/lib/libpulse.so"))))))))
     (inputs
      (list avahi
            boost
+           glib ; for speech-dispatcher
            libsndfile
            libxi
            mesa ; avoid bundled
            openssl
            opus ; avoid bundled
+           poco
            protobuf
            pulseaudio
            qtbase-5
            qtsvg
            speech-dispatcher
            speex ; avoid bundled
-           speexdsp)) ; avoid bundled
+           speexdsp ; avoid bundled
+           ;; xiph-rnnoise ; TODO: unbundle rnnoise
+           ))
     (native-inputs
      (list pkg-config python qttools))
     (synopsis "Low-latency, high quality voice chat software")
-- 
2.34.0





Information forwarded to guix-patches <at> gnu.org:
bug#54065; Package guix-patches. (Tue, 22 Feb 2022 13:21:03 GMT) Full text and rfc822 format available.

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

From: Liliana Marie Prikler <liliana.prikler <at> gmail.com>
To: Maxime Devos <maximedevos <at> telenet.be>, 54065 <at> debbugs.gnu.org
Subject: [PATCH v2 3/3] gnu: mumble: Enable tests.
Date: Sat, 19 Feb 2022 16:37:51 +0100
* gnu/packages/telephony.scm (mumble)[#:tests?]: Drop argument.
[#:configure-flags]: Add “-Dtests=on”.
---
 gnu/packages/telephony.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gnu/packages/telephony.scm b/gnu/packages/telephony.scm
index effe8d167f..abc7952234 100644
--- a/gnu/packages/telephony.scm
+++ b/gnu/packages/telephony.scm
@@ -589,7 +589,6 @@ (define-public mumble
     (build-system qt-build-system)
     (arguments
      (list
-      #:tests? #f  ; no "check" target
       #:configure-flags
       #~(list "-Dbundled-speex=off"
               "-Dbundled-opus=off"
@@ -604,6 +603,7 @@ (define-public mumble
               "-Dpipewire=off" ; use pulse
               "-Doverlay-xcompile=off"
               "-Dupdate=off" ; don't phone home
+              "-Dtests=on"
               "-Dbundle-qt-translations=off")
       #:phases
       #~(modify-phases %standard-phases
-- 
2.34.0





Information forwarded to guix-patches <at> gnu.org:
bug#54065; Package guix-patches. (Tue, 05 Apr 2022 14:09:01 GMT) Full text and rfc822 format available.

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

From: Ludovic Courtès <ludo <at> gnu.org>
To: Liliana Marie Prikler <liliana.prikler <at> gmail.com>
Cc: Maxime Devos <maximedevos <at> telenet.be>, 54065 <at> debbugs.gnu.org
Subject: Re: bug#54065: [PATCH 0/3] Update mumble to 1.4.230
Date: Tue, 05 Apr 2022 16:08:11 +0200
Hi,

Liliana Marie Prikler <liliana.prikler <at> gmail.com> skribis:

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

[...]

> +    (synopsis "Portable C++ components")
> +    (description "A collection of libraries intended to be useful for building
> +network-based applications.")

Please make it a full sentence (info "(guix) Synopses and Descriptions").

> * gnu/packages/telephony.scm (find-python-interpreter-cmake-modules):
> New variable.
> (mumble): Update to 1.4.230.
> [source]: Adjust uri and snippet accordingly.
> [arguments]: Change to a list of G-expressions.
> <#:configure-flags>: New argument.
> <#:phases>: Drop ‘configure’ (moved to configure-flags).
> Add ‘unpack-submodules’, ‘fix-settings-crash’ and ‘hardcode-pulseaudio’.
> [inputs]: Add glib and poco.

[...]

> * gnu/packages/telephony.scm (mumble)[#:tests?]: Drop argument.
> [#:configure-flags]: Add “-Dtests=on”.

I believe Maxime’s comments were addressed and the rest LGTM, thanks!

Ludo’.




Information forwarded to guix-patches <at> gnu.org:
bug#54065; Package guix-patches. (Tue, 05 Apr 2022 19:10:02 GMT) Full text and rfc822 format available.

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

From: Liliana Marie Prikler <liliana.prikler <at> gmail.com>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: Maxime Devos <maximedevos <at> telenet.be>, 54065 <at> debbugs.gnu.org
Subject: Re: bug#54065: [PATCH 0/3] Update mumble to 1.4.230
Date: Tue, 05 Apr 2022 21:09:33 +0200
Am Dienstag, dem 05.04.2022 um 16:08 +0200 schrieb Ludovic Courtès:
> Hi,
> 
> Liliana Marie Prikler <liliana.prikler <at> gmail.com> skribis:
> 
> > * gnu/packages/cpp.scm (poco): New variable.
> 
> [...]
> 
> > +    (synopsis "Portable C++ components")
> > +    (description "A collection of libraries intended to be useful
> > for building
> > +network-based applications.")
> 
> Please make it a full sentence (info "(guix) Synopses and
> Descriptions").
Ahh, sorry.  I've applied a fix locally and will push it once checks
are finished.

> I believe Maxime’s comments were addressed and the rest LGTM, thanks!
Sorry, I already pushed the mumble update including the faulty
description for poco.  Will fix asap.




bug closed, send any further explanations to 54065 <at> debbugs.gnu.org and Liliana Marie Prikler <liliana.prikler <at> gmail.com> Request was from Ludovic Courtès <ludo <at> gnu.org> to control <at> debbugs.gnu.org. (Sun, 15 May 2022 20:32:02 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Mon, 13 Jun 2022 11:24:09 GMT) Full text and rfc822 format available.

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

Previous Next


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