[SRU] ubuntustudio-installer not compatible with pipewire

Bug #2001577 reported by Erich Eickmeyer
12
This bug affects 1 person
Affects Status Importance Assigned to Milestone
ubuntustudio-installer (Ubuntu)
Fix Released
Undecided
Erich Eickmeyer
Kinetic
Fix Released
Undecided
Erich Eickmeyer
Lunar
Fix Released
Undecided
Erich Eickmeyer

Bug Description

[Impact]

 * ubuntustudio-installer is meant to be installable with every official flavor of Ubuntu, including Ubuntu Desktop. Unfortunately, this took a bit of a turn when Ubuntu Desktop switched to Pipewire by default.

 * ubuntustudio-installer installs studio-controls as it relies on a script studio-controls installs in order to configure audio. Unfortunately, studio-controls itself installs a small daemon that restarts pulseaudio, which overrides pipewire's pulseaudio compatibility stack.

 * In order to fix this, studio-controls could no longer be installed as a dependency, but as an optional installation installed by ubuntustudio-installer. The script snippet used by ubuntustudio-installer in studio-controls for the correct configuration of real-time permissions has been moved to a separate script for ubuntustudio-installer to use. This eliminates the studio-controls dependency.

 * The studio-controls dependency also brought-in jackd2 which has an interactive ncurses-mode configuration question. ubuntustudio-installer does not gracefully handle these, so jackd2 is installed as a recommends of ubuntustudio-installer in order to prevent this issue.

[Test Case]

 * From Ubuntu, install ubuntustudio-instaler. Upon reboot, pulseaudio will be the default sound server as opposed to pipewire.

[Where Things Could Go Wrong]

 * If a user installs studio-controls from ubuntustudio-installer, it will cause the aforementioned issue. The issue really stems from studio-controls, but it is not yet designed with pipewire compatibility in mind. This is planned for the next major release and is work-in-progress.

[Other Information]

 * The jackd2 soft dependency shouldn't cause any issues simply being installed, even if pipewire-jack is installed because the pipewire-jack package does not automatically configure itself properly without additional administrator or user intervention. This is the purpose of the ubuntustudio-pipewire-config package in lunar.

Changed in ubuntustudio-installer (Ubuntu Lunar):
status: New → Fix Released
Changed in ubuntustudio-installer (Ubuntu Kinetic):
status: New → In Progress
Changed in ubuntustudio-installer (Ubuntu Kinetic):
assignee: nobody → Erich Eickmeyer (eeickmeyer)
description: updated
Revision history for this message
Chris Halse Rogers (raof) wrote : Please test proposed package

Hello Erich, or anyone else affected,

Accepted ubuntustudio-installer into kinetic-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/ubuntustudio-installer/0.13.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, what testing has been performed on the package and change the tag from verification-needed-kinetic to verification-done-kinetic. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-kinetic. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in ubuntustudio-installer (Ubuntu Kinetic):
status: In Progress → Fix Committed
tags: added: verification-needed verification-needed-kinetic
Revision history for this message
Aaron Rainbolt (arraybolt3) wrote :

Enables -proposed, installed ubuntustudio-installer, rebooted. PipeWire was still in use according to `pactl info`. Installed everything (including studio controls, oops) and rebooted again, curiously PipeWire was still in use according to `pactl info`. Then I accidentally discarded my VM before doing sound testing.

Not marking this verification-done since things didn't quite go as I expected and I didn't test fully, but it looks hopeful. I'm going to test again and hopefully not throw away my VM on accident this time because of the tool I'm using :P

Revision history for this message
Erich Eickmeyer (eeickmeyer) wrote :

Aaron,

That wasn't the point of the test. The point was to keep studio-controls from installing when ubuntustudio-installer is installed. That was all that needed to be tested, nothing more, nothing less.

Revision history for this message
Aaron Rainbolt (arraybolt3) wrote :

Nevermind about the oddity with installing things with ubuntustudio-installer, I missed how I was supposed to test. Second test about to be done, correctly this time.

Revision history for this message
Aaron Rainbolt (arraybolt3) wrote (last edit ):

OK, did the test right this time. Installed Ubuntu Desktop, installed all the updates, made sure PipeWire was enabled with `pactl info`. Then installed ubuntustudio-installer from -proposed, rebooted, and checked `pactl info` again - PipeWire was still enabled. Audio worked, both when using "aplay" and Firefox. So PipeWire was enabled and working even after installing ubuntustudio-installer.

tags: added: verification-done verification-done-kinetic
removed: verification-needed verification-needed-kinetic
Revision history for this message
sem (semitones) wrote :

I installed ubuntustudio-installer from kinetic-proposed on a fresh install of Ubuntu 22.10, however I am not sure how to test if the bug is still present or not. (How can you tell what is set as the default sound server?)

I rebooted and used the installer to install the low-latency packages, the audio suite, and studio controls. So far studio controls seems to work normally.

Revision history for this message
Erich Eickmeyer (eeickmeyer) wrote :

sem,

The biggest purpose of this bug (really, not a bug but an SRU tracking bug) was to establish whether or not studio-controls was being installed alongside ubuntustudio-installer or not and, therefore, override pipewire. As we have determined it is not, this is resolved. That was the basic premise, and Aaron did an amazing job testing. We really need no further testing on this Stable Release Update at this time.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package ubuntustudio-installer - 0.13.1

---------------
ubuntustudio-installer (0.13.1) kinetic; urgency=medium

  * Add jackd2 to recommends
    - Prevents installation issues if installed later on
  * Remove dependency on studio-controls (LP: #2001577)
    - Now includes script from studio-controls previously used
  * Installs studio-controls optionally
    - For pipewire usesrs as studio-controls conflicts with pipewire

 -- Erich Eickmeyer <email address hidden> Wed, 21 Dec 2022 08:21:31 -0800

Changed in ubuntustudio-installer (Ubuntu Kinetic):
status: Fix Committed → Fix Released
Revision history for this message
Łukasz Zemczak (sil2100) wrote : Update Released

The verification of the Stable Release Update for ubuntustudio-installer has completed successfully and the package is now being released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.