[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Packaging pulsectl: check phase fails starting/communicating with PulseA

From: Sergiu Ivanov
Subject: Packaging pulsectl: check phase fails starting/communicating with PulseAudio
Date: Sat, 07 Jan 2023 22:21:48 +0100
User-agent: mu4e 1.8.13; emacs 28.2


I am trying to update volctl [0]—a GTK package for showing a systray
sound icon—to the latest version.  It used to depend on pulseaudio, but
now it seems to rather rely on pulsectl [1].  So, I am trying to
package pulsectl.

I ran guix import pypi pulsectl, and then adapted the patch phase from
volctl, like this:

(define-public python-pulsectl
    (name "python-pulsectl")
    (version "22.3.2")
    (source (origin
              (method url-fetch)
              (uri (pypi-uri "pulsectl" version))
    (build-system python-build-system)
    (inputs (list pulseaudio))
       (modify-phases %standard-phases
         (add-after 'unpack 'patch-path
           (lambda* (#:key inputs #:allow-other-keys)
             (let ((pulse (assoc-ref inputs "pulseaudio")))
               (substitute* "pulsectl/"
                  (string-append pulse "/lib/")))
    (home-page "";)
     "Python bindings for mixer-like controls in PulseAudio")
     "Python high-level interface and ctypes-based bindings for
PulseAudio (libpulse), to use in simple synchronous code.  This wrapper is
mostly for mixer-like controls and introspection-related operations, as
opposed to e.g. submitting sound samples to play and player-like client.")
    (license license:expat)))

Here is the excerpt of the error output, and I also attach the full
build log:

(pulsectl.tests.test_with_dummy_instance.PulseCrashTests) ... FAIL
test_reconnect (pulsectl.tests.test_with_dummy_instance.PulseCrashTests) ... 

ERROR: setUpClass (pulsectl.tests.test_with_dummy_instance.DummyTests)
Traceback (most recent call last):
 line 231, in setUpClass
    cls.instance_info = dummy_pulse_init()
 line 85, in dummy_pulse_init
    try: _dummy_pulse_init(info)
 line 192, in _dummy_pulse_init
    raise AssertionError( 'pulseaudio process'
AssertionError: pulseaudio process failed to start or create native socket at 

It looks like the check phase fails because it tries to start a dummy
PulseAudio instance, which obviously goes beyond what is allowed in the
build environment.

What would be the canonical way to deal with such an issue?
Should I disable the check phase altogether?  Is there a proper way to
deal with the PulseAudio server in the build environment?




Attachment: vnm4n8ywh60pnifhfb1zp61w52miwn-python-pulsectl-22.3.2.drv.gz
Description: Binary data

reply via email to

[Prev in Thread] Current Thread [Next in Thread]