Cannot install proprietary Broadcom WiFi drivers on Ubuntu Studio Jammy 22.04.2 and Kinetic

Bug #1993370 reported by Aaron Rainbolt
28
This bug affects 8 people
Affects Status Importance Assigned to Milestone
software-properties (Ubuntu)
Fix Released
High
Brian Murray
Jammy
Fix Released
Undecided
Brian Murray
Kinetic
Won't Fix
Undecided
Unassigned

Bug Description

[Impact]
software-properties-qt will crash when a user tries to install drivers for Broadcom wireless devices.

This same change has been made in the software-properties-gtk frontend (see bug 1969460) without any issues.

There are also problems in the Error Tracker for this crash:
https://errors.ubuntu.com/problem/1c41600298c08b5dfc2d86ee90ad27ef56cd4524
https://errors.ubuntu.com/problem/49f4156af6d9d2367fc480105e19064da3575269

[Test Plan]
1) Install Ubuntu Studio 22.04.3 on a system with Broadcom WiFi
2) Reboot into the installed sytem
3) Open a terminal and run 'sudo software-properties-kde'
4) Click the 'Additional Drivers' tab
5) Click "Using Broadcom 802.11 Linux STA wireless driver source from bcmwl-kernel-source (proprietary)".

With the version of the package in -updates you'll observe the following Traceback in the terminal:

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/softwareproperties/qt/SoftwarePropertiesQt.py", line 1061, in on_driver_selection_changed
    modules_package_obj = self.apt_cache[modules_package]
TypeError: Expected a string or a pair of strings

With the version of the package in -proposed you will not.

[ Where problems could occur ]
It's possible we'll hide a real error as we are catching all TypeErrors, but given we haven't heard of any issues with other stable releases and that this was fixed in software-properties-gtk in the same way I think it is safe.

Hardware: HP Elitebook 8570p, 16 GB RAM, 120 GB SSD, 3rd Gen Intel Core i5, UEFI, no secure boot, Broadcom WiFi.

OS: Ubuntu Studio Kinetic, Final ISO

Steps to reproduce:

1. Boot the Ubuntu Studio ISO on a system with Broadcom WiFi, and install the system normally. (No encryption, allow Internet access during installation using some method of connectivity other than WiFi.)
2. Reboot and log into the newly installed system.
3. Open a terminal and run "sudo software-properties-kde".
4. Click "Additional Drivers" in the window that pops up.
5. Click "Using Broadcom 802.11 Linux STA wireless driver source from bcmwl-kernel-source (proprietary)".

Expected result: The Apply Changes button should become clickable, allowing the user to install the driver.

Actual result: The button remains grayed out, and the following error message is printed in the terminal:

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/softwareproperties/qt/SoftwarePropertiesQt.py", line 1063, in on_driver_selection_changed
    modules_package_obj = self.apt_cache[modules_package]
TypeError: Expected a string or a pair of strings

ProblemType: BugDistroRelease: Ubuntu 22.10
Package: software-properties-qt 0.99.27
ProcVersionSignature: Ubuntu 5.19.0-1007.7-lowlatency 5.19.7
Uname: Linux 5.19.0-1007-lowlatency x86_64
ApportVersion: 2.23.1-0ubuntu3
Architecture: amd64
CasperMD5CheckResult: unknown
CurrentDesktop: KDE
Date: Tue Oct 18 21:33:51 2022
InstallationDate: Installed on 2022-10-19 (0 days ago)
InstallationMedia: Ubuntu-Studio 22.10 "Kinetic Kudu" - Release amd64 (20221017.1)
PackageArchitecture: allSourcePackage: software-properties
UpgradeStatus: No upgrade log present (probably fresh install)

Related branches

Revision history for this message
Aaron Rainbolt (arraybolt3) wrote :
Revision history for this message
Ubuntu QA Website (ubuntuqa) wrote :

This bug has been reported on the Ubuntu ISO testing tracker.

A list of all reports related to this bug can be found here:
https://iso.qa.ubuntu.com/qatracker/reports/bugs/1993370

tags: added: iso-testing
Changed in software-properties (Ubuntu):
assignee: nobody → Brian Murray (brian-murray)
importance: Undecided → High
status: New → In Progress
Revision history for this message
Brian Murray (brian-murray) wrote :

This is the same crash as in https://bugs.launchpad.net/ubuntu/+source/software-properties/+bug/1969460 just in the qt frontend instead of the gtk one.

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

This bug was fixed in the package software-properties - 0.99.27.1

---------------
software-properties (0.99.27.1) kinetic; urgency=medium

  * softwareproperties/qt/SoftwarePropertiesQt.py: Don't crash if the driver
    package does not have a matching modules package (LP: #1993370)

 -- Brian Murray <email address hidden> Wed, 19 Oct 2022 07:38:40 -0700

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

This bug also affects the latest Jammy daily ISO.

Changed in software-properties (Ubuntu Kinetic):
status: New → Fix Committed
summary: - Cannot install proprietary Broadcom WiFi drivers on Ubuntu Studio
- Kinetic
+ Cannot install proprietary Broadcom WiFi drivers on Ubuntu Studio Jammy
+ 22.04.2 and Kinetic
Revision history for this message
Christian Hujer (christian.hujer) wrote (last edit ):

As https://bugs.launchpad.net/ubuntu/+source/kubuntu-driver-manager/+bug/1994035 is marked a duplicate and just affected me twice in a month, last time just now, from updates being installed in the last 24 hours, I believe this to be still open. In my case, it was the VirtualBox extensions and Nvidia drivers that got trashed by an automatic system kernel update.

What happened?
• System installed updates, including a new kernel.
• After updates, on the next boot with an Nvidia eGPU (Razer Core V2 w/ Geforce GTX 1070, in case it matters), X11 didn't load, and I got an error message during boot that the VirtualBox kernel extensions couldn't be loaded.
• When booting without eGPU on Intel Graphics, and going to the Driver manager, I get the same error message from the Python script in the background as the OP.

What workaround helped?
• Disconnect eGPU
• Ctrl+F2, login from terminal
• sudo service sddm restart
Now X11 started on Intel drivers on the laptop display
• Reconnect eGPU
• uname -a to check the kernel version
• sudo apt-get install linux-headers-… matching the kernel version
• sudo service sddm restart
Now X11 is running with Nvidia drivers again

If the system has network access while in a text terminal, the following steps should be sufficient:
• Ctrl+F2, login from terminal
• uname -a to check the kernel version
• sudo apt-get install linux-headers-… matching the kernel version
• sudo service sddm restart

Here's what I think happens.
Somehow, it appears, that when updating the kernel to a newer version, the updater "forgets" that the previous kernel had headers installed as well, for additional drivers like Nvidia or VirtualBox. When the headers are missing, the recompilation of those kernel modules for the new kernel version will not run, and with the Nvidia modules missing, X11 won't start on Nvidia hardware.

Here's what I think would fix it: Ensure that when updating the kernel, if the headers for the previous kernel were installed, also install the headers for the current kernel. I don't know if the current dependency system is capable of that. And I don't know if that suggested fix has other unintended side-effects.

System information about the system on which this happened:
• Ubuntu 22.04.2 LTS
• Nvidia Drivers
• VirtualBox Drivers
• Intel GPU (Intel Core i7-8550U built-in graphics)
• eGPU (Razer Core V2 w/ Nvidia Geforce GTX 1070)
• Kernel: 6.1.0-1015-oem
• The system update was performed while _not_ connected to the eGPU (and thus the Nvidia Geforce GTX 1070 wouldn't show up).

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

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in software-properties (Ubuntu Jammy):
status: New → Confirmed
Revision history for this message
Utkarsh Gupta (utkarsh) wrote :

Ubuntu 22.10 (Kinetic Kudu) has reached end of life, so this bug will not be fixed for that specific release.

Changed in software-properties (Ubuntu Kinetic):
status: Fix Committed → Won't Fix
Revision history for this message
Brian Murray (brian-murray) wrote :

I was able to recreate this with the following installation medium:

bdmurray@bdmurray-standardpcq35ich92009:~$ cat /var/log/installer/media-info
Ubuntu-Studio 22.04.3 LTS "Jammy Jellyfish" - Release amd64 (20230807)

Changed in software-properties (Ubuntu Jammy):
status: Confirmed → In Progress
assignee: nobody → Brian Murray (brian-murray)
Changed in software-properties (Ubuntu):
status: Fix Committed → Fix Released
description: updated
description: updated
Revision history for this message
Andreas Hasenack (ahasenack) wrote : Please test proposed package

Hello Aaron, or anyone else affected,

Accepted software-properties into jammy-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/software-properties/0.99.22.8 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-jammy to verification-done-jammy. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-jammy. 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 software-properties (Ubuntu Jammy):
status: In Progress → Fix Committed
tags: added: verification-needed-jammy
Revision history for this message
Timo Aaltonen (tjaalton) wrote :

arraybolt3: This has been in proposed for nearly three months now, please verify it ASAP. It's blocking other fixes

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

Will do. You'll have to forgive me, I was on a six-month hiatus from Ubuntu development and wasn't around to verify it at that time. I have the needed hardware though.

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

Followed the test plan using the latest daily image of Ubuntu Studio Jammy. Everything worked as expected (no error in terminal when selecting "Using Broadcom 802.11 Linux STA wireless driver from bcmwl-kernel-source (proprietary)"), driver installed properly and allowed me to connect to WiFi. Driver also continued to work after a reboot. I verified that the version of software-properties on my system is the one in Proposed.

tags: added: verification-done verification-done-jammy
removed: verification-needed verification-needed-jammy verification-needed-kinetic
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package software-properties - 0.99.22.8

---------------
software-properties (0.99.22.8) jammy; urgency=medium

  * softwareproperties/qt/SoftwarePropertiesQt.py: Don't crash if the driver
    package does not have a matching modules package (LP: #1993370)

 -- Brian Murray <email address hidden> Thu, 10 Aug 2023 15:08:33 -0700

Changed in software-properties (Ubuntu Jammy):
status: Fix Committed → Fix Released
Revision history for this message
Chris Halse Rogers (raof) wrote : Update Released

The verification of the Stable Release Update for software-properties 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.

Duplicates of this bug

Other bug subscribers

Remote bug watches

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