Ubuntu Studio upgrade, pipewire <-> pulseaudio conflict
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
ubuntu-release-upgrader (Ubuntu) |
Invalid
|
Undecided
|
Nick Rosbrook | ||
Noble |
In Progress
|
Medium
|
Nick Rosbrook | ||
ubuntustudio-meta (Ubuntu) |
Won't Fix
|
Undecided
|
Unassigned | ||
Noble |
Won't Fix
|
Undecided
|
Unassigned |
Bug Description
[Impact]
Upgrades from Ubuntu Studio 22.04 to 24.04 cannot be calculated. A quirk is required to install pipewire-audio, and remove pulseaudio during the upgrade.
[Test Plan]
1. Confirm that upgrades on Ubuntu Studio are able to be calculated, and that pipewire-audio is installed.
* Create a fresh installation of Ubuntu Studio 22.04, e.g. using the ISO here: https:/
* First confirm that an upgrade cannot be calculated without the fix:
$ do-release-upgrade
This should fail, because the quirk is not in place.
* Next, confirm that the version in -proposed fixes the problem:
$ do-release-upgrade -p
* Once the upgrade is complete, verify that pipewire-audio is installed, and pulseaudio is not:
$ apt policy pipewire-audio pulseaudio
* Finally, check the upgrade logs for the following:
$ grep "installing pipewire-audio" /var/log/
2. Confirm that on non-Studio, this quirk is just skipped
* In any non-Studio installation, e.g. a LXD container, run the upgrade:
$ do-release-upgrade -p
* Confirm that the quirk was not run during the upgrade:
$ grep "installing pipewire-audio" /var/log/
[Other information]
This fix is only required for jammy -> noble upgrades, hence it is only being fixed in noble.
[Where problems could occur]
The quirk is designed to limit this logic to upgrades from Ubuntu Studio 22.04 to 24.04 only. It would be a problem if this was executed on other flavors. The above test plan accounts for this by running an upgrade on Studio and non-Studio.
As always with these quirks, if a package name was typo'd, it would not work correctly, either.
[Original Description]
I used apt policy to see which launchpad ppas are on my system, but did not see any that were not from Ubuntu. I removed all non-Ubuntu repos that I could identify. I have tried to run the installer both from the updater prompt and from the line command with no success.
ProblemType: Bug
DistroRelease: Ubuntu 22.04
Package: ubuntu-
ProcVersionSign
Uname: Linux 5.15.0-
ApportVersion: 2.20.11-0ubuntu82.6
Architecture: amd64
CasperMD5CheckR
CrashDB: ubuntu
CrashReports:
640:1000:
600:116:
664:1000:
640:0:
CurrentDesktop: KDE
Date: Sun Sep 1 15:55:59 2024
InstallationDate: Installed on 2023-03-17 (534 days ago)
InstallationMedia: Ubuntu-Studio 22.04.1 LTS "Jammy Jellyfish" - Release amd64 (20220809)
PackageArchitec
SourcePackage: ubuntu-
UpgradeStatus: Upgraded to jammy on 2024-09-01 (0 days ago)
VarLogDistupgra
Start-Date: 2024-09-01 15:53:21
Requested-By: duke (1000)
End-Date: 2024-09-01 15:53:21
VarLogDistupgra
Log started: 2024-09-01 15:53:21
Log ended: 2024-09-01 15:53:21
VarLogDistupgra
Related branches
- Julian Andres Klode: Approve
- Erich Eickmeyer (community): Approve
-
Diff: 40320 lines (+5895/-5827)130 files modifiedDistUpgrade/DistUpgradeQuirks.py (+32/-0)
DistUpgrade/DistUpgradeVersion.py (+1/-1)
data/mirrors.cfg (+53/-30)
debian/changelog (+13/-0)
po/af.po (+46/-46)
po/am.po (+46/-46)
po/an.po (+46/-46)
po/ar.po (+46/-46)
po/ast.po (+46/-46)
po/az.po (+46/-46)
po/be.po (+46/-46)
po/bg.po (+46/-46)
po/bn.po (+46/-46)
po/bo.po (+46/-46)
po/br.po (+46/-46)
po/bs.po (+46/-46)
po/ca.po (+46/-46)
po/ca@valencia.po (+46/-46)
po/ce.po (+46/-46)
po/ceb.po (+46/-46)
po/ckb.po (+46/-46)
po/crh.po (+46/-46)
po/cs.po (+46/-46)
po/csb.po (+46/-46)
po/cv.po (+46/-46)
po/cy.po (+46/-46)
po/da.po (+46/-46)
po/de.po (+46/-46)
po/dv.po (+46/-46)
po/el.po (+46/-46)
po/en_AU.po (+46/-46)
po/en_CA.po (+46/-46)
po/en_GB.po (+46/-46)
po/eo.po (+46/-46)
po/es.po (+46/-46)
po/et.po (+46/-46)
po/eu.po (+46/-46)
po/fa.po (+46/-46)
po/fi.po (+46/-46)
po/fil.po (+46/-46)
po/fo.po (+46/-46)
po/fr.po (+46/-46)
po/fr_CA.po (+46/-46)
po/fur.po (+46/-46)
po/fy.po (+46/-46)
po/ga.po (+46/-46)
po/gd.po (+46/-46)
po/gl.po (+46/-46)
po/gu.po (+46/-46)
po/gv.po (+46/-46)
po/he.po (+46/-46)
po/hi.po (+46/-46)
po/hr.po (+46/-46)
po/hu.po (+46/-46)
po/hy.po (+46/-46)
po/ia.po (+46/-46)
po/id.po (+46/-46)
po/is.po (+46/-46)
po/it.po (+46/-46)
po/ja.po (+46/-46)
po/jv.po (+46/-46)
po/ka.po (+46/-46)
po/kk.po (+46/-46)
po/km.po (+46/-46)
po/kn.po (+46/-46)
po/ko.po (+46/-46)
po/ku.po (+46/-46)
po/ky.po (+46/-46)
po/lb.po (+46/-46)
po/ln.po (+46/-46)
po/lo.po (+46/-46)
po/lt.po (+46/-46)
po/lv.po (+46/-46)
po/mhr.po (+46/-46)
po/mjw.po (+46/-46)
po/mk.po (+46/-46)
po/ml.po (+46/-46)
po/mn.po (+46/-46)
po/mnw.po (+46/-46)
po/mr.po (+46/-46)
po/ms.po (+46/-46)
po/mus.po (+46/-46)
po/my.po (+46/-46)
po/nb.po (+46/-46)
po/nds.po (+46/-46)
po/ne.po (+46/-46)
po/nl.po (+46/-46)
po/nn.po (+46/-46)
po/oc.po (+46/-46)
po/om.po (+46/-46)
po/pa.po (+46/-46)
po/pam.po (+46/-46)
po/pl.po (+46/-46)
po/ps.po (+46/-46)
po/pt.po (+46/-46)
po/pt_BR.po (+46/-46)
po/qu.po (+46/-46)
po/ro.po (+46/-46)
po/ru.po (+46/-46)
po/rw.po (+46/-46)
po/sc.po (+46/-46)
po/sco.po (+46/-46)
po/sd.po (+46/-46)
po/se.po (+46/-46)
po/shn.po (+46/-46)
po/si.po (+46/-46)
po/sk.po (+46/-46)
po/sl.po (+46/-46)
po/sq.po (+46/-46)
po/sr.po (+46/-46)
po/sv.po (+46/-46)
po/szl.po (+46/-46)
po/ta.po (+46/-46)
po/ta_LK.po (+46/-46)
po/te.po (+46/-46)
po/tg.po (+46/-46)
po/th.po (+46/-46)
po/tl.po (+46/-46)
po/tr.po (+46/-46)
po/ubuntu-release-upgrader.pot (+46/-46)
po/ug.po (+46/-46)
po/uk.po (+46/-46)
po/ur.po (+46/-46)
po/uz.po (+46/-46)
po/vi.po (+46/-46)
po/xh.po (+46/-46)
po/zh_CN.po (+46/-46)
po/zh_HK.po (+46/-46)
po/zh_TW.po (+46/-46)
po/zu.po (+46/-46)
- Julian Andres Klode: Pending requested
-
Diff: 184557 lines (+103776/-0) (has conflicts)134 files modifiedDistUpgrade/DistUpgradeCache.py (+27/-0)
DistUpgrade/DistUpgradeController.py (+9/-0)
DistUpgrade/DistUpgradeQuirks.py (+428/-0)
DistUpgrade/DistUpgradeVersion.py (+4/-0)
DistUpgrade/deb2snap.json (+8/-0)
data/mirrors.cfg (+515/-0)
debian/changelog (+64/-0)
po/af.po (+856/-0)
po/am.po (+814/-0)
po/an.po (+794/-0)
po/ar.po (+822/-0)
po/ast.po (+843/-0)
po/az.po (+800/-0)
po/be.po (+831/-0)
po/bg.po (+823/-0)
po/bn.po (+814/-0)
po/bo.po (+800/-0)
po/br.po (+817/-0)
po/bs.po (+835/-0)
po/ca.po (+848/-0)
po/ca@valencia.po (+814/-0)
po/ce.po (+797/-0)
po/ceb.po (+783/-0)
po/ckb.po (+793/-0)
po/crh.po (+814/-0)
po/cs.po (+853/-0)
po/csb.po (+794/-0)
po/cv.po (+785/-0)
po/cy.po (+812/-0)
po/da.po (+853/-0)
po/de.po (+864/-0)
po/dv.po (+801/-0)
po/el.po (+856/-0)
po/en_AU.po (+839/-0)
po/en_CA.po (+837/-0)
po/en_GB.po (+861/-0)
po/eo.po (+828/-0)
po/es.po (+860/-0)
po/et.po (+800/-0)
po/eu.po (+834/-0)
po/fa.po (+799/-0)
po/fi.po (+846/-0)
po/fil.po (+800/-0)
po/fo.po (+799/-0)
po/fr.po (+863/-0)
po/fr_CA.po (+864/-0)
po/fur.po (+792/-0)
po/fy.po (+796/-0)
po/ga.po (+783/-0)
po/gd.po (+844/-0)
po/gl.po (+865/-0)
po/gu.po (+799/-0)
po/gv.po (+799/-0)
po/he.po (+825/-0)
po/hi.po (+794/-0)
po/hr.po (+854/-0)
po/hu.po (+834/-0)
po/hy.po (+773/-0)
po/ia.po (+849/-0)
po/id.po (+820/-0)
po/is.po (+804/-0)
po/it.po (+859/-0)
po/ja.po (+836/-0)
po/jv.po (+783/-0)
po/ka.po (+793/-0)
po/kk.po (+804/-0)
po/km.po (+828/-0)
po/kn.po (+789/-0)
po/ko.po (+822/-0)
po/ku.po (+831/-0)
po/ky.po (+783/-0)
po/lb.po (+799/-0)
po/ln.po (+783/-0)
po/lo.po (+783/-0)
po/lt.po (+816/-0)
po/lv.po (+833/-0)
po/mhr.po (+783/-0)
po/mjw.po (+783/-0)
po/mk.po (+793/-0)
po/ml.po (+791/-0)
po/mn.po (+775/-0)
po/mnw.po (+799/-0)
po/mr.po (+807/-0)
po/ms.po (+835/-0)
po/mus.po (+783/-0)
po/my.po (+801/-0)
po/nb.po (+834/-0)
po/nds.po (+794/-0)
po/ne.po (+789/-0)
po/nl.po (+854/-0)
po/nn.po (+793/-0)
po/oc.po (+843/-0)
po/om.po (+783/-0)
po/pa.po (+793/-0)
po/pam.po (+783/-0)
po/pl.po (+836/-0)
po/ps.po (+783/-0)
po/pt.po (+858/-0)
po/pt_BR.po (+841/-0)
po/qu.po (+783/-0)
po/ro.po (+846/-0)
po/ru.po (+846/-0)
po/rw.po (+783/-0)
po/sc.po (+799/-0)
po/sco.po (+796/-0)
po/sd.po (+773/-0)
po/se.po (+783/-0)
po/shn.po (+783/-0)
po/si.po (+797/-0)
po/sk.po (+834/-0)
po/sl.po (+836/-0)
po/sq.po (+845/-0)
po/sr.po (+830/-0)
po/sv.po (+841/-0)
po/szl.po (+839/-0)
po/ta.po (+797/-0)
po/ta_LK.po (+779/-0)
po/te.po (+792/-0)
po/tg.po (+813/-0)
po/th.po (+811/-0)
po/tl.po (+795/-0)
po/tr.po (+841/-0)
po/ubuntu-release-upgrader.pot (+783/-0)
po/ug.po (+839/-0)
po/uk.po (+852/-0)
po/ur.po (+773/-0)
po/uz.po (+800/-0)
po/vi.po (+813/-0)
po/xh.po (+783/-0)
po/zh_CN.po (+814/-0)
po/zh_HK.po (+803/-0)
po/zh_TW.po (+824/-0)
po/zu.po (+783/-0)
tests/test_quirks.py (+159/-0)
summary: |
- The update crashes at the same place. I have looked but cannot find any - non-Ubuntu apps that may cause a problem + Ubuntu Studio upgrade, pipewire <-> pulseaudio confict |
summary: |
- Ubuntu Studio upgrade, pipewire <-> pulseaudio confict + Ubuntu Studio upgrade, pipewire <-> pulseaudio conflict |
tags: | added: foundations-todo |
Changed in ubuntu-release-upgrader (Ubuntu): | |
assignee: | nobody → Nick Rosbrook (enr0n) |
description: | updated |
Changed in ubuntu-release-upgrader (Ubuntu): | |
status: | Confirmed → Invalid |
Changed in ubuntu-release-upgrader (Ubuntu Noble): | |
assignee: | nobody → Nick Rosbrook (enr0n) |
importance: | Undecided → Medium |
description: | updated |
Changed in ubuntustudio-meta (Ubuntu Noble): | |
status: | New → Won't Fix |
Changed in ubuntu-release-upgrader (Ubuntu Noble): | |
status: | New → In Progress |
I'm afraid this is a tough case to analyse. I'm not sure if there really is an issue or if it just is so complex it just runs into the arbitrary iteration limit of the solver.
It seems opencv stuff is quite complex, I don't know though if you can safely remove all opencv stuff from the system. Temporarily uninstalling krita and darktable might help, as could wine.
It stands to reason we could implement the correct mapping in our quirk to directly upgrade those:
libopencv-(.*)4.5d => libopencv- \g{1}406t64
But I am not 100% sure, it seems it tries to remove plasma-desktop and ubuntustudio- desktop earlier.
Broken plasma- desktop: amd64 Depends on qml-module- org-kde- pipewire: amd64 < none | 5.27.11-0ubuntu2 @un uH >
There is another chain of issues there with pulseaudio:
Broken pipewire-alsa:amd64 Conflicts on pulseaudio:amd64 < 1:15.99. 1+dfsg1- 1ubuntu2. 2 -> 1:16.1+ dfsg1-2ubuntu10 @ii umU >
Considering pulseaudio:amd64 11 as a solution to pipewire-alsa:amd64 1
MarkKeep pipewire-alsa:amd64 < none -> 1.0.5-1ubuntu1 @un uN Ib > FU=0
Holding Back pipewire-alsa:amd64 rather than change pulseaudio:amd64
Broken ubuntustudio- pipewire- config: amd64 Breaks on pulseaudio:amd64 < 1:15.99. 1+dfsg1- 1ubuntu2. 2 -> 1:16.1+ dfsg1-2ubuntu10 @ii umU > pipewire- config: amd64 2 pipewire- config: amd64 < none -> 24.04.26 @un uN Ib > FU=0 pipewire- config: amd64 rather than change pulseaudio:amd64
Considering pulseaudio:amd64 11 as a solution to ubuntustudio-
MarkKeep ubuntustudio-
Holding Back ubuntustudio-
Installing pulseaudio:amd64 as Recommends of vokoscreen-ng:amd64 module- jack:amd64 < 1:15.99. 1+dfsg1- 1ubuntu2. 2 | 1:16.1+ dfsg1-2ubuntu10 @ii umR > due to pulseaudio- module- jack:amd64 Depends on pulseaudio:amd64 < 1:15.99. 1+dfsg1- 1ubuntu2. 2 | 1:16.1+ dfsg1-2ubuntu10 @ii umR > (= 1:15.99. 1+dfsg1- 1ubuntu2. 2) 1+dfsg1- 1ubuntu2. 2 -> 1:16.1+ dfsg1-2ubuntu10 @ii umU > FU=0 module- jack:amd64 < 1:15.99. 1+dfsg1- 1ubuntu2. 2 -> 1:16.1+ dfsg1-2ubuntu10 @ii umU > FU=0
Upgrading: pulseaudio-
MarkInstall pulseaudio:amd64 < 1:15.99.
MarkInstall pulseaudio-
I believe there is something wrong somewhere with those pulseaudio dependencies and either way you'd end up failing even if we fix opencv.
It seems ubuntustudio- desktop is missing some pipewire depends to force it being installed or something.