Many thanks for your proactivity, Giacomo!, it is always very helpful to know beforehand that a proposed change really fixes the real end user case — that's all that matters after all.
** Description changed: Impact ------ Update Manager fails to launch in the LTS releases if the 'ua security- status' command fails. It tries to parse its output to generate the list of ESM-Apps and ESM-Infra updates that would be available if the system were attached to Ubuntu Pro. However, if ua finds some problem with unrelated stuff, such as Livepatch (as evidenced by the attached ubuntu-advantage.log), the command just raises an error, crashing Update Manager. Although Update Manager could catch the error, it would result in not showing Ubuntu Pro updates, simply because the information is not there. Better would be to ditch 'ua security-status' in favor of the Ubuntu Pro API. The updates() end point[1] will provide the information Update Manager wants even if the Ubuntu Advantage daemon has issues with other services such as Livepatch (as evidenced by #10), and it does not raise exceptions. [1] https://canonical-ubuntu-pro-client.readthedocs- hosted.com/en/latest/references/api/#u-pro-packages-updates-v1 Test Plan --------- - To be determined + Attach your machine to Ubuntu Pro and make sure Livepatch is enabled in + the output of 'ua status'. Then, simulate a failing Livepatch with + + ---> + mv /snap/bin/canonical-livepatch /snap/bin/canonical-livepatch.bak + >/snap/bin/canonical-livepatch printf '%s\n' '#!/bin/sh' 'exit 1' + chmod +x /snap/bin/canonical-livepatch + <---- + + Launch update-manager, it should open and not crash. Where problems could occur -------------------------- In the Ubuntu Pro section of the updates, in form of wrong package data (e.g. package name, version number etc.) in the description pane when selecting a package. The section could not show at all, or the program could crash right away. Original bug report ------------------- Below is a run in my computer. Please send a mail on what to do fuga2:~> update-manager -c -d Unexpected error(s) occurred. For more details, see the log: /var/log/ubuntu-advantage.log To file a bug run: ubuntu-bug ubuntu-advantage-tools Traceback (most recent call last): File "/usr/lib/python3/dist-packages/UpdateManager/backend/InstallBackendAptdaemon.py", line 448, in _on_finished self._action_done(action, File "/usr/lib/python3/dist-packages/UpdateManager/backend/__init__.py", line 365, in _action_done self.window_main.start_available() File "/usr/lib/python3/dist-packages/UpdateManager/UpdateManager.py", line 241, in start_available self.refresh_cache() File "/usr/lib/python3/dist-packages/UpdateManager/UpdateManager.py", line 459, in refresh_cache self._get_ua_security_status() File "/usr/lib/python3/dist-packages/UpdateManager/UpdateManager.py", line 285, in _get_ua_security_status s = json.load(p.stdout) File "/usr/lib/python3.10/json/__init__.py", line 293, in load return loads(fp.read(), File "/usr/lib/python3.10/json/__init__.py", line 346, in loads return _default_decoder.decode(s) File "/usr/lib/python3.10/json/decoder.py", line 337, in decode obj, end = self.raw_decode(s, idx=_w(s, 0).end()) File "/usr/lib/python3.10/json/decoder.py", line 355, in raw_decode raise JSONDecodeError("Expecting value", s, err.value) from None json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0) ^CTraceback (most recent call last): File "/usr/bin/update-manager", line 125, in <module> Gtk.main() File "/usr/lib/python3/dist-packages/gi/overrides/Gtk.py", line 1687, in main with register_sigint_fallback(Gtk.main_quit): File "/usr/lib/python3.10/contextlib.py", line 142, in __exit__ next(self.gen) File "/usr/lib/python3/dist-packages/gi/_ossighelper.py", line 237, in register_sigint_fallback signal.default_int_handler(signal.SIGINT, None) KeyboardInterrupt fuga2:~> ubuntu-bug ubuntu-advantage-tools fuga2:~> update.go:85: cannot change mount namespace according to change mount (/var/lib/snapd/hostfs/usr/local/share/doc /usr/local/share/doc none bind,ro 0 0): cannot open directory "/usr/local/share": permission denied update.go:85: cannot change mount namespace according to change mount (/var/lib/snapd/hostfs/usr/share/xubuntu-docs /usr/share/xubuntu-docs none bind,ro 0 0): cannot open directory "/var/lib": permission denied Gtk-Message: 11:23:47.656: Not loading module "atk-bridge": The functionality is provided by GTK natively. Please try to not load it. fuga2:~> ProblemType: Bug DistroRelease: Ubuntu 22.04 Package: ubuntu-advantage-tools 31.2~22.04 ProcVersionSignature: Ubuntu 5.15.0-100.110-generic 5.15.143 Uname: Linux 5.15.0-100-generic x86_64 ApportVersion: 2.20.11-0ubuntu82.5 Architecture: amd64 CasperMD5CheckResult: unknown CurrentDesktop: ubuntu:GNOME Date: Sun Mar 17 11:22:30 2024 PackageArchitecture: all SourcePackage: ubuntu-advantage-tools UpgradeStatus: Upgraded to jammy on 2024-03-09 (7 days ago) apparmor_logs.txt: Mar 17 11:15:18 fuga2 kernel: audit: type=1400 audit(1710666917.933:11): apparmor="STATUS" operation="profile_load" profile="unconfined" name="ubuntu_pro_apt_news" pid=1057 comm="apparmor_parser" cloud-id.txt-error: Invalid command specified 'cloud-id'. livepatch-status.txt-error: Failed running command '/snap/bin/canonical-livepatch status' [exit(1)]. Message: error executing status: open /var/snap/canonical-livepatch/264/livepatchd.err: permission denied uaclient.conf: contract_url: https://contracts.canonical.com log_level: debug -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/2058133 Title: [SRU] update-manager crashes when ua security-status response is an error To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/ubuntu-advantage-tools/+bug/2058133/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs