plymouth hook in initramfs needs font but doesn't Depend on it

Bug #1592405 reported by Chad Miller on 2016-06-14
32
This bug affects 4 people
Affects Status Importance Assigned to Milestone
plymouth (Ubuntu)
High
Dimitri John Ledkov
Bionic
High
Dimitri John Ledkov

Bug Description

Processing triggers for initramfs-tools (0.122ubuntu8.1) ...
update-initramfs: Generating /boot/initrd.img-3.2.0-1412-omap4
cp: cannot stat '/usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif.ttf': No such file or directory
E: /usr/share/initramfs-tools/hooks/plymouth failed with return 1.
update-initramfs: failed for /boot/initrd.img-3.2.0-1412-omap4 with 1.
dpkg: error processing package initramfs-tools (--configure):
 subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
 initramfs-tools

cmiller@xiongmao:~$ dpkg -S /usr/share/initramfs-tools/hooks/plymouth
plymouth: /usr/share/initramfs-tools/hooks/plymouth
cmiller@xiongmao:~$ dpkg -l plymouth |cat
ii plymouth 0.9.2-3ubuntu13.1 armhf boot animation, logger and I/O multiplexer

If THEME_NAME "ubuntu-logo" is something other than the four, then
if /usr/share/fonts/truetype/dejavu/DejaVuSerif.ttf does not exist, then
copy /usr/share/fonts/truetype/dejavu/DejaVuSerif.ttf somewhere.

That file doesn't exist because it's not demanded by plymouth package.

Steve Langasek (vorlon) wrote :

The bug is that the hook merged from Debian has clobbered the logic to use the Ubuntu fonts (which are depended on) instead of DejaVu.

Launchpad Janitor (janitor) wrote :

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

Changed in plymouth (Ubuntu):
status: New → Confirmed
Steve Langasek (vorlon) on 2018-02-27
Changed in plymouth (Ubuntu):
importance: Undecided → High
status: Confirmed → Triaged
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:
http://iso.qa.ubuntu.com/qatracker/reports/bugs/1592405

tags: added: iso-testing
tags: added: rls-bb-incoming
Jb (jebsolutions) wrote :

Earlier in the install I see that it says it lists "fonts-deja" as a *suggested* (but not installed) package. fonts-deja includes fonts-dejavu-core and fonts-dejavu-extra.

Simple fix is to bump "fonts-deja" to be a dependency?

Jb (jebsolutions) wrote :

fonts-dejavu is still a "recommended" but not installed package.

from this daily bionic lubuntu alternate iso:
http://cdimage.ubuntu.com/lubuntu/daily/20180303/bionic-alternate-amd64.iso

from /var/log/syslog of the install:

Mar 3 21:28:35 main-menu[4087]: (process:18437): update-initramfs: Generating /boot/initrd.img-4.15.0-10-generic
Mar 3 21:28:35 main-menu[4087]: (process:18437): cp:
Mar 3 21:28:35 main-menu[4087]: (process:18437): cannot stat '/usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif.ttf'
Mar 3 21:28:35 main-menu[4087]: (process:18437): : No such file or directory
Mar 3 21:28:35 main-menu[4087]: (process:18437):
Mar 3 21:28:35 main-menu[4087]: (process:18437): E: /usr/share/initramfs-tools/hooks/plymouth failed with return 1.
Mar 3 21:28:35 main-menu[4087]: (process:18437): update-initramfs: failed for /boot/initrd.img-4.15.0-10-generic with 1.

work around is to manually:
apt-get install fonts-dejavu

On Sat, Mar 03, 2018 at 10:20:22PM -0000, Jb wrote:
> fonts-dejavu is still a "recommended" but not installed package.

Making it a dependency is NOT the correct solution for this bug. The
correct solution is to fix the initramfs script to use the Ubuntu fonts
instead, which is what we had prior to the Debian merge.

Jb (jebsolutions) wrote :

Steve,

I'm all for anything that fixes it.

This may be a really dumb question, but is there any way we could get the patch upstreamed to Debian? So it won't break on a future merge?

Jb (jebsolutions) wrote :

Lubuntu Bionic 20180312 still has this issue.

tags: added: id-5aaa9306e721e1651dad41f3
Jb (jebsolutions) wrote :

Lubuntu Bionic 20180317 still has this issue.

Simon Quigley (tsimonq2) on 2018-03-19
Changed in plymouth (Ubuntu Bionic):
assignee: nobody → Simon Quigley (tsimonq2)
Steve Langasek (vorlon) on 2018-03-22
tags: removed: rls-bb-incoming
Jeremy Bicha (jbicha) wrote :

Whoever works on this bug, please update the dependency to fonts-ubuntu-console instead of the transitional package.

Changed in plymouth (Ubuntu Bionic):
assignee: Simon Quigley (tsimonq2) → Dimitri John Ledkov (xnox)
milestone: none → ubuntu-18.03
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package plymouth - 0.9.3-1ubuntu3

---------------
plymouth (0.9.3-1ubuntu3) bionic; urgency=medium

  * Make the Ubuntu font the default sans-serif & mono fonts. LP: #1592405
  * Adjust title of ubuntu-text theme.
  * In the ubuntu-logo theme fallback to sans-serif font, if Ubuntu font
    is not available.

 -- Dimitri John Ledkov <email address hidden> Sun, 25 Mar 2018 22:00:14 +0100

Changed in plymouth (Ubuntu Bionic):
status: Triaged → Fix Released
Jb (jebsolutions) wrote :

I retested bionic lubuntu alternate 20180401. This iso includes "plymouth 0.9.3-1ubutu4". Note: this version of plymouth ends in ".4" and not the ".3" version mentioned in comment #11.

When I reviewed the syslog from the install there are still errors with the update-initramfs due to the missing font file.

I think .4 is an upstream merge from Debian?:
http://changelogs.ubuntu.com/changelogs/pool/main/p/plymouth/plymouth_0.9.3-1ubuntu4/changelog

Did version .4 undo the fixes in the .3 version?

Dimitri John Ledkov (xnox) wrote :

On 1 April 2018 at 22:35, Jb <email address hidden> wrote:
> I retested bionic lubuntu alternate 20180401. This iso includes
> "plymouth 0.9.3-1ubutu4". Note: this version of plymouth ends in ".4"
> and not the ".3" version mentioned in comment #11.
>
> When I reviewed the syslog from the install there are still errors with
> the update-initramfs due to the missing font file.
>

Can you please attach said syslog?

> I think .4 is an upstream merge from Debian?:
> http://changelogs.ubuntu.com/changelogs/pool/main/p/plymouth/plymouth_0.9.3-1ubuntu4/changelog
>
> Did version .4 undo the fixes in the .3 version?
>
> --
> You received this bug notification because you are a bug assignee.
> https://bugs.launchpad.net/bugs/1592405
>
> Title:
> plymouth hook in initramfs needs font but doesn't Depend on it
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/ubuntu/+source/plymouth/+bug/1592405/+subscriptions

--
Regards,

Dimitri.

Changed in plymouth (Ubuntu Bionic):
status: Fix Released → Triaged
Steve Langasek (vorlon) wrote :

$ dpkg -S /usr/share/initramfs-tools/hooks/plymouth
plymouth: /usr/share/initramfs-tools/hooks/plymouth
$ apt policy plymouth | grep Installed
  Installed: 0.9.3-1ubuntu4
$ grep -i dejavu /usr/share/initramfs-tools/hooks/plymouth
         mkdir -p "${DESTDIR}/usr/share/fonts/truetype/dejavu"
  cp -a /usr/share/fonts/truetype/dejavu/DejaVuSerif.ttf "${DESTDIR}/usr/share/fonts/truetype/dejavu"
      sed 's|\(<family>DejaVu Sans</family>\)|<family>Ubuntu</family>\1|;s|\(<family>DejaVu Sans Mono</family>\)|<family>Ubuntu Mono</family>\1|;' \
      cp -a /usr/share/fonts/truetype/dejavu/DejaVuSans.ttf "${DESTDIR}/usr/share/fonts/truetype/dejavu"
$

The hook is still trying to copy dejavu fonts into the initramfs.

Dimitri John Ledkov (xnox) wrote :

On 2 April 2018 at 02:27, Steve Langasek <email address hidden> wrote:
> $ dpkg -S /usr/share/initramfs-tools/hooks/plymouth
> plymouth: /usr/share/initramfs-tools/hooks/plymouth
> $ apt policy plymouth | grep Installed
> Installed: 0.9.3-1ubuntu4
> $ grep -i dejavu /usr/share/initramfs-tools/hooks/plymouth
> mkdir -p "${DESTDIR}/usr/share/fonts/truetype/dejavu"
> cp -a /usr/share/fonts/truetype/dejavu/DejaVuSerif.ttf "${DESTDIR}/usr/share/fonts/truetype/dejavu"
> sed 's|\(<family>DejaVu Sans</family>\)|<family>Ubuntu</family>\1|;s|\(<family>DejaVu Sans Mono</family>\)|<family>Ubuntu Mono</family>\1|;' \
> cp -a /usr/share/fonts/truetype/dejavu/DejaVuSans.ttf "${DESTDIR}/usr/share/fonts/truetype/dejavu"
> $
>
> The hook is still trying to copy dejavu fonts into the initramfs.
>

Which is correct! We still do need a serif font.... and a fallback
font for languages not covered by the ubuntu font. Are you implying
DejaVu font is not shipped by default on Lubuntu at all?

--
Regards,

Dimitri.

Steve Langasek (vorlon) wrote :

On Mon, Apr 02, 2018 at 01:47:17AM -0000, Dimitri John Ledkov wrote:
> Which is correct! We still do need a serif font....

We do?

$ grep -ri serif plymouth-0.9.3/
plymouth-0.9.3/debian/changelog: * Make the Ubuntu font the default sans-serif & mono fonts. LP: #1592405
plymouth-0.9.3/debian/changelog: * In the ubuntu-logo theme fallback to sans-serif font, if Ubuntu font
plymouth-0.9.3/debian/local/plymouth.hook: cp -a /usr/share/fonts/truetype/dejavu/DejaVuSerif.ttf "${DESTDIR}/usr/share/fonts/truetype/dejavu"
plymouth-0.9.3/debian/local/plymouth.hook: # Make Ubuntu the default sans-serif, and mono fonts
plymouth-0.9.3/debian/patches/ubuntu-logo.patch:+ubuntufont = "Ubuntu, sans-serif 11";
plymouth-0.9.3/themes/ubuntu-logo/ubuntu-logo.script:ubuntufont = "Ubuntu, sans-serif 11";
$

> and a fallback font for languages not covered by the ubuntu font.

The plymouth initramfs hook has no l10n support.

> Are you implying DejaVu font is not shipped by default on Lubuntu at all?

Probably. Even if it was, it would still be a bug for the plymouth hook to
require it without a dependency.

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package plymouth - 0.9.3-1ubuntu5

---------------
plymouth (0.9.3-1ubuntu5) bionic; urgency=medium

  * Move the Ubuntu font, dejavu font, fontconfig dependencies to
    plymouth-label package, such that any "graphical" theme based on
    plymouth label has the right fonts, e.g. the src:lubuntu-artwork
    themes. LP: #1592405

 -- Dimitri John Ledkov <email address hidden> Sun, 01 Apr 2018 23:28:23 +0100

Changed in plymouth (Ubuntu Bionic):
status: Triaged → Fix Released
Jb (jebsolutions) wrote :

Thank you! :)

lubuntu alternate bionic 20180402 has no errors.

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

Duplicates of this bug

Other bug subscribers