[Bug 1607535] Re: ttf-mscorefonts-installer 3.4+nmu1ubuntu2 fails to install core fonts

Nathanaël Naeri (Naël) 1607535 at bugs.launchpad.net
Tue Feb 21 14:48:05 UTC 2017


** Description changed:

  [Symptoms]
  
  When installing or updating the package ttf-mscorefonts-installer in
  Ubuntu 16.04 or 16.10, an error message appears in a GUI window,
  indicating "failure to download extra data files" (the fonts themselves)
  "after package installation" (the package itself appears to have been
  installed). This error message re-appears regularly, as a cron-job re-
  tries the failed download.
  
  If installing or updating from the command line, additional failure
  information is given in an error message prefixed by "E:", but this
  error message depends on the mirror server which is contacted for the
  download: "404 Not Found" is common, but there is also "Protocol http
  not supported or disabled in libcurl", and complains about invalid
  Content-Range headers.
  
  [Cause]
  
  The current 3.4 version of ttf-mscorefonts-installer in Ubuntu 16.04
  delegates the download of the proprietary Microsoft Core Fonts for the
  Web (Andale, Arial...) to the package update-notifier, which itself
  delegates it to the program apt-helper provided by the package apt. The
  download URL points to the host downloads.sourceforge.net, which
  redirects to a randomly-chosen mirror server
  <mirror>.dl.sourceforge.net.
  
  Unfortunately, the program apt-helper has a bug in the way it treats
  redirections. This bug makes apt-helper keep a space in the URL instead
  of encoding it to %20 before contacting the mirror. It is more
  extensively documented in bug 1655431 and bug 1651923. The mirror
  replies to this malformed request with an error message (e.g. "404 Not
  Found"), and download fails.
  
  Some mirrors appear to understand the malformed request nonetheless, and
  send the requested font file, however since there are 11 fonts to
  download, the chances of getting 11 understanding mirrors are low. Hence
  why the error message usually concerns andale32.exe or arial32.exe
  instead of webdin32.exe.
  
  [Workaround 1]
  
  Download the fonts manually and put them all in the same directory. You
  can use wget for that, because contrary to apt-helper, it handles
  redirections fine (command line formatted for readability, do not
  include line breaks and line indents):
  
    $ wget http://downloads.sourceforge.net/corefonts/
        {andale32.exe,arial32.exe,arialb32.exe,comic32.exe,courie32.exe,
        georgi32.exe,impact32.exe,times32.exe,trebuc32.exe,verdan32.exe,
        webdin32.exe}
  
  Or you can use your browser: point it to
  https://sourceforge.net/projects/corefonts/files/the%20fonts/final and
  download the same files.
  
  Make sure the package is purged and no remaining setup triggers are
  remaining, using your favorite package manager or command-line APT:
  
    $ sudo apt-get purge ttf-mscorefonts-installer
  
  Then reinstall the package, this time pointing to the previously-
  downloaded fonts in a second step:
  
    $ sudo apt-get install ttf-mscorefonts-installer
      # (this will most likely fail again)
    $ sudo dpkg-reconfigure ttf-mscorefonts-installer
  
  The second command should return a "graphical" interface in the
  terminal. Use it to point to the directory where you downloaded the
  fonts (/path/to/directory/containing/the/fonts). Make sure no .deb files
  are in this directory, they seem to be picked up too and then it fails.
  
  If a pop-up shows up for a post-install action later, just let it run,
  it shouldn't come back. It may triggered by the file /var/lib/update-
  notifier/user.d/data-downloads-failed and you may be successful in
  avoiding the regularly-reappearing message by removing this file. But
  this point is less clear.
  
  Once everything is working, you can delete the downloaded fonts in .exe
  format, they have been uncompressed and installed in
  /usr/share/fonts/truetype/msttcorefonts in .ttf format.
  
  Adapted from: Vincent Gerris (comment 17), Lesley Binks (comment 18).
  
  [Workaround 2]
  
  Remove Ubuntu's version of ttf-mscorefonts-installer and install
  Debian's version instead. Indeed, Debian's version uses wget to download
  the fonts, and contrary to apt-helper, wget handles redirections fine.
  
  Download the package from https://packages.debian.org/ttf-mscorefonts-
  installer. Version 3.6 has been tested by several users. This workaround
  should work with Debian's version 3.4+nmu1 too, but then you'd be
  prompted to update to Ubuntu's problematic version 3.4+nmu1ubuntu2 next
  time you update your packages.
  
  To download the package with wget (command line formatted for
  readability, do not include line break and line indent):
  
    $ wget http://httpredir.debian.org/debian/pool/contrib/m/
        msttcorefonts/ttf-mscorefonts-installer_3.6_all.deb
  
  Purge your currently-installed Ubuntu version of the package using your
  favorite package manager or command-line APT, and install the Debian
  version with dpkg:
  
    $ sudo apt-get purge ttf-mscorefonts-installer
    $ sudo dpkg --install /path/to/ttf-mscorefonts-installer_3.6_all.deb
  
  When this bug is fixed in Ubuntu 16.04 and 16.10, you can uninstall
  Debian's version of the package and go back to Ubuntu's version:
  
    $ sudo dpkg --purge ttf-mscorefonts-installer
    $ sudo apt-get install ttf-mscorefonts-installer
  
  Adapted from: yas (comment 19), Richard Elkins (comment 40)
  
  [Fix]
  
  The bug was fixed by Julian Klode in package apt-transport-https
  1.4~beta3ubuntu1, released 2017-01-11, for the upcoming 17.04 (zesty)
  release, see bug 1651923 comments 24 25.
  
  The fix was backported to apt-transport-https 1.3.4 and 1.2.19, released
  2017-01-26, for the previous 16.10 (yakkety) and 16.04 (xenial)
  releases, respectively, see bug 1651923 comments 57 58.
  
  If you are still affected by it, update apt-transport-https to the
  appropriate version and reinstall Ubuntu's version of ttf-mscorefonts-
- installer. You should remove Debian's version of ttf-mscorefonts-
- installer beforehand, if you installed it for workaround 2 above:
+ installer. Reinstalling is necessary or the daily error message won't go
+ away, see bug 1654573 comment 12. You should remove Debian's version of
+ ttf-mscorefonts-installer beforehand, if you installed it for workaround
+ 2 above:
  
    $ sudo dpkg --purge ttf-mscorefonts-installer
  
  If you run into Content-Range errors when reinstalling ttf-mscorefonts-
  installer, remove the downloaded fonts in /var/lib/update-notifier
  /package-data-downloads/partial/ and try again. This is a different bug,
  also fixed recently, but not backported to Xenial and Yakkety yet (bug
  1657567).
  
  This bug used to be a duplicate of bug 1651923, but it is currently de-
  duplicated to hopefully make it easier for people to find it, instead of
  reporting the issue as a new bug. Otherwise, duplicates are hidden.

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to msttcorefonts in Ubuntu.
https://bugs.launchpad.net/bugs/1607535

Title:
  ttf-mscorefonts-installer 3.4+nmu1ubuntu2 fails to install core fonts

Status in msttcorefonts package in Ubuntu:
  Fix Released

Bug description:
  [Symptoms]

  When installing or updating the package ttf-mscorefonts-installer in
  Ubuntu 16.04 or 16.10, an error message appears in a GUI window,
  indicating "failure to download extra data files" (the fonts
  themselves) "after package installation" (the package itself appears
  to have been installed). This error message re-appears regularly, as a
  cron-job re-tries the failed download.

  If installing or updating from the command line, additional failure
  information is given in an error message prefixed by "E:", but this
  error message depends on the mirror server which is contacted for the
  download: "404 Not Found" is common, but there is also "Protocol http
  not supported or disabled in libcurl", and complains about invalid
  Content-Range headers.

  [Cause]

  The current 3.4 version of ttf-mscorefonts-installer in Ubuntu 16.04
  delegates the download of the proprietary Microsoft Core Fonts for the
  Web (Andale, Arial...) to the package update-notifier, which itself
  delegates it to the program apt-helper provided by the package apt.
  The download URL points to the host downloads.sourceforge.net, which
  redirects to a randomly-chosen mirror server
  <mirror>.dl.sourceforge.net.

  Unfortunately, the program apt-helper has a bug in the way it treats
  redirections. This bug makes apt-helper keep a space in the URL
  instead of encoding it to %20 before contacting the mirror. It is more
  extensively documented in bug 1655431 and bug 1651923. The mirror
  replies to this malformed request with an error message (e.g. "404 Not
  Found"), and download fails.

  Some mirrors appear to understand the malformed request nonetheless,
  and send the requested font file, however since there are 11 fonts to
  download, the chances of getting 11 understanding mirrors are low.
  Hence why the error message usually concerns andale32.exe or
  arial32.exe instead of webdin32.exe.

  [Workaround 1]

  Download the fonts manually and put them all in the same directory.
  You can use wget for that, because contrary to apt-helper, it handles
  redirections fine (command line formatted for readability, do not
  include line breaks and line indents):

    $ wget http://downloads.sourceforge.net/corefonts/
        {andale32.exe,arial32.exe,arialb32.exe,comic32.exe,courie32.exe,
        georgi32.exe,impact32.exe,times32.exe,trebuc32.exe,verdan32.exe,
        webdin32.exe}

  Or you can use your browser: point it to
  https://sourceforge.net/projects/corefonts/files/the%20fonts/final and
  download the same files.

  Make sure the package is purged and no remaining setup triggers are
  remaining, using your favorite package manager or command-line APT:

    $ sudo apt-get purge ttf-mscorefonts-installer

  Then reinstall the package, this time pointing to the previously-
  downloaded fonts in a second step:

    $ sudo apt-get install ttf-mscorefonts-installer
      # (this will most likely fail again)
    $ sudo dpkg-reconfigure ttf-mscorefonts-installer

  The second command should return a "graphical" interface in the
  terminal. Use it to point to the directory where you downloaded the
  fonts (/path/to/directory/containing/the/fonts). Make sure no .deb
  files are in this directory, they seem to be picked up too and then it
  fails.

  If a pop-up shows up for a post-install action later, just let it run,
  it shouldn't come back. It may triggered by the file /var/lib/update-
  notifier/user.d/data-downloads-failed and you may be successful in
  avoiding the regularly-reappearing message by removing this file. But
  this point is less clear.

  Once everything is working, you can delete the downloaded fonts in
  .exe format, they have been uncompressed and installed in
  /usr/share/fonts/truetype/msttcorefonts in .ttf format.

  Adapted from: Vincent Gerris (comment 17), Lesley Binks (comment 18).

  [Workaround 2]

  Remove Ubuntu's version of ttf-mscorefonts-installer and install
  Debian's version instead. Indeed, Debian's version uses wget to
  download the fonts, and contrary to apt-helper, wget handles
  redirections fine.

  Download the package from https://packages.debian.org/ttf-mscorefonts-
  installer. Version 3.6 has been tested by several users. This
  workaround should work with Debian's version 3.4+nmu1 too, but then
  you'd be prompted to update to Ubuntu's problematic version
  3.4+nmu1ubuntu2 next time you update your packages.

  To download the package with wget (command line formatted for
  readability, do not include line break and line indent):

    $ wget http://httpredir.debian.org/debian/pool/contrib/m/
        msttcorefonts/ttf-mscorefonts-installer_3.6_all.deb

  Purge your currently-installed Ubuntu version of the package using
  your favorite package manager or command-line APT, and install the
  Debian version with dpkg:

    $ sudo apt-get purge ttf-mscorefonts-installer
    $ sudo dpkg --install /path/to/ttf-mscorefonts-installer_3.6_all.deb

  When this bug is fixed in Ubuntu 16.04 and 16.10, you can uninstall
  Debian's version of the package and go back to Ubuntu's version:

    $ sudo dpkg --purge ttf-mscorefonts-installer
    $ sudo apt-get install ttf-mscorefonts-installer

  Adapted from: yas (comment 19), Richard Elkins (comment 40)

  [Fix]

  The bug was fixed by Julian Klode in package apt-transport-https
  1.4~beta3ubuntu1, released 2017-01-11, for the upcoming 17.04 (zesty)
  release, see bug 1651923 comments 24 25.

  The fix was backported to apt-transport-https 1.3.4 and 1.2.19,
  released 2017-01-26, for the previous 16.10 (yakkety) and 16.04
  (xenial) releases, respectively, see bug 1651923 comments 57 58.

  If you are still affected by it, update apt-transport-https to the
  appropriate version and reinstall Ubuntu's version of ttf-mscorefonts-
  installer. Reinstalling is necessary or the daily error message won't
  go away, see bug 1654573 comment 12. You should remove Debian's
  version of ttf-mscorefonts-installer beforehand, if you installed it
  for workaround 2 above:

    $ sudo dpkg --purge ttf-mscorefonts-installer

  If you run into Content-Range errors when reinstalling ttf-
  mscorefonts-installer, remove the downloaded fonts in /var/lib/update-
  notifier/package-data-downloads/partial/ and try again. This is a
  different bug, also fixed recently, but not backported to Xenial and
  Yakkety yet (bug 1657567).

  This bug used to be a duplicate of bug 1651923, but it is currently
  de-duplicated to hopefully make it easier for people to find it,
  instead of reporting the issue as a new bug. Otherwise, duplicates are
  hidden.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/msttcorefonts/+bug/1607535/+subscriptions



More information about the foundations-bugs mailing list