dist-upgrade in noble fails when using TPM FDE

Bug #2060814 reported by Ken VanDine
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
foo2zjs (Ubuntu)
Fix Released
Undecided
Till Kamppeter

Bug Description

When doing a dist-upgrade of noble during the devel cycle I'm hitting this upgrade bug in the package. /lib/firmware is read-only because it's provided by the pc-kernel snap.

Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Calculating upgrade... Done
The following packages have been kept back:
  libpoppler134 poppler-utils
The following packages will be upgraded:
  printer-driver-foo2zjs
1 upgraded, 0 newly installed, 0 to remove and 2 not upgraded.
416 not fully installed or removed.
Need to get 0 B/142 kB of archives.
After this operation, 12.3 kB of additional disk space will be used.
Do you want to continue? [Y/n]
(Reading database ... 140132 files and directories currently installed.)
Preparing to unpack .../printer-driver-foo2zjs_20200505dfsg0-2ubuntu5_amd64.deb ...
Unpacking printer-driver-foo2zjs (20200505dfsg0-2ubuntu5) over (20200505dfsg0-2ubuntu3) ...
dpkg: error processing archive /var/cache/apt/archives/printer-driver-foo2zjs_20200505dfsg0-2ubuntu5_amd64.deb (--unpack)
:
 error creating directory './lib/firmware/hp': Read-only file system
dpkg: error while cleaning up:
 unable to remove newly-extracted version of '/lib/firmware/hp': Read-only file system
Errors were encountered while processing:
 /var/cache/apt/archives/printer-driver-foo2zjs_20200505dfsg0-2ubuntu5_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

ProblemType: Bug
DistroRelease: Ubuntu 24.04
Package: printer-driver-foo2zjs 20200505dfsg0-2ubuntu3
ProcVersionSignature: Ubuntu 6.8.0-11.11-generic 6.8.0-rc4
Uname: Linux 6.8.0-11-generic x86_64
NonfreeKernelModules: zfs
ApportVersion: 2.28.0-0ubuntu1
Architecture: amd64
CasperMD5CheckResult: unknown
Date: Wed Apr 10 09:39:01 2024
InstallationDate: Installed on 2024-03-08 (33 days ago)
InstallationMedia: Ubuntu 24.04 LTS "Noble Numbat" - Daily amd64 (20240306)
ProcEnviron:
 LANG=en_US.UTF-8
 PATH=(custom, no user)
 SHELL=/bin/bash
 TERM=xterm-256color
 XDG_RUNTIME_DIR=<set>
RebootRequiredPkgs: Error: path contained symlinks.
SourcePackage: foo2zjs
UpgradeStatus: No upgrade log present (probably fresh install)

Revision history for this message
Ken VanDine (ken-vandine) wrote :
Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

This means that /lib/firmware is repurposed, at least on some systems.

So no problem for me to move the firmware directory to /usr/lib or /usr/share.

Questions is now, do we have a kernel Snap on standard *.deb-based Ubuntu? If we had kernel Snaps only on Ubuntu Core (Desktop) there the printer-driver-foo2zjs package does not make sense. We work with the CUPS Snap on such systems and printer drivers work only in the new Printer Application format. For the printers supported by foo2zjs one would use the Ghostscript Printer Application.

Revision history for this message
Ken VanDine (ken-vandine) wrote :

Yes, classic deb based ubuntu utilizing TPM FDE does use a snapped kernel. In fact, it boots ubuntu-core and pivots to classic.

ken@t14:~$ df -h /lib/firmware/
Filesystem Size Used Avail Use% Mounted on
/dev/loop1 328M 328M 0 100% /snap/pc-kernel/1669

Changed in foo2zjs (Ubuntu):
assignee: nobody → Till Kamppeter (till-kamppeter)
Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

I have uploaded printer-driver-foo2zjs 20200505dfsg0-2ubuntu6 where I have moved the firmware file directory to /var/lib/foo2zjs/firmware/. Ken VanDine has tested this version and it works on Ubuntu 24.04 with TPM-based FDE, not interfering with the snapped kernel any more.

This will not break printing. /lib/firmware is only for firmware files which are managed by the kernel. Printer firmware files are solely managed by foo2zjs, totally in user space.

Changed in foo2zjs (Ubuntu):
status: New → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package foo2zjs - 20200505dfsg0-2ubuntu6

---------------
foo2zjs (20200505dfsg0-2ubuntu6) noble; urgency=low

  * Use /var/lib/foo2zjs/firmware/ as directory for firmware files.
    /lib/firmware/ is only for firmware files managed by the kernel and
    therefore on classic Ubuntu installations using a snapped kernel
    (Currently Noble with TPM-backed FDE) it is not even accessible
    for the system (LP: #2060814).

 -- Till Kamppeter <email address hidden> Wed, 10 Apr 2024 23:38:27 +0200

Changed in foo2zjs (Ubuntu):
status: Fix Committed → Fix Released
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.