Your message dated Mon, 29 Dec 2025 12:48:59 +0000
with message-id <[email protected]>
and subject line Bug#1124239: fixed in freetype 2.14.1+dfsg-2
has caused the Debian Bug report #1124239,
regarding freetype: dependency loop with harfbuzz
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)
--
1124239: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1124239
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Source: freetype
Version: 2.14.1+dfsg-1
Severity: serious
Justification: prevent testing migration until consensus is reached
X-Debbugs-Cc: [email protected]
User: [email protected]
Usertags: rebootstrap
freetype added a new build-dependency on libharfbuzz-dev. On the
surface, this looks great. Unfortunately, freetype is part of the
build-closure of build-essential and therefore part of architecture
bootstrap and must be careful about dependencies being added.
The dependency poses several problems.
While freetype now Build-Depends on libharfbuzz-dev, harfbuzz already
Build-Depends on libfreetype-dev. This is a cycle. Which one is supposed
to be built first? At this point you can no longer build either of them
without the other. This breaks both native and cross bootstrap.
harfbuzz comes with a pile of dependencies on its own. In particular, it
depends on gobject-introspection. We have not yet found a way to make
that work without qemu and qemu is typically not available during early
architecture bringup. Additionally, the meson maintainer is reluctant to
support cross compilation involving gobject-introspection #1060838.
Adding harfbuzz would add the following packages to the bootstrap set:
* cairo (also depends on freetype)
* chafa (also depends on freetype)
* graphite2
* libavif
* librsvg (depends on freetype and harfbuzz, another cycle)
* tiff
* dav1d
* libwebp
* libyuv
* mesa (depends on lots, does not cross)
* jbigkit
* lerc
* giflib
This list is incomplete, but its length already hints at adding harfbuzz
being a very bad idea though that librsvg <-> harbuzz cycle needs
solving independently.
I hope we agree that there is a problem that needs solving. Therefore, I
tentatively set severity serious. That shall keep forky bootstrappable.
A quick way forward would be configuring with --without-harfbuzz for now
and take more time to come up with a better solution.
I note that the udeb is still built --without-harfbuzz, so this likely
still works. I'm not sure how harfbuzz is exposed to client
dependencies. Possibly adding a pkg.freetype.noharfbuzz build profile is
all that is needed. Then we might perform a build of freetype without
harfbuzz, build all the other pieces and then rebuilt freetype with
harfbuzz later during a bootstrap. The question arises though how other
packages can indicate that they need a freetype with harfbuzz support.
Maybe libfreetype-dev could provide a virtual package
libfreetype+harfbuzz-dev unless the profile is in effect and then other
packages could additionally depend on this when they need the harfbuzz
functionality.
I appreciate other perspectives on this issue as I quite likely do not
see the whole picture.
Helmut
--- End Message ---
--- Begin Message ---
Source: freetype
Source-Version: 2.14.1+dfsg-2
Done: Hugh McMaster <[email protected]>
We believe that the bug you reported is fixed in the latest version of
freetype, which is due to be installed in the Debian FTP archive.
A summary of the changes between this version and the previous one is
attached.
Thank you for reporting the bug, which will now be closed. If you
have further comments please address them to [email protected],
and the maintainer will reopen the bug report if appropriate.
Debian distribution maintenance software
pp.
Hugh McMaster <[email protected]> (supplier of updated freetype package)
(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [email protected])
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
Format: 1.8
Date: Mon, 29 Dec 2025 23:22:32 +1100
Source: freetype
Architecture: source
Version: 2.14.1+dfsg-2
Distribution: unstable
Urgency: medium
Maintainer: Hugh McMaster <[email protected]>
Changed-By: Hugh McMaster <[email protected]>
Closes: 1124239
Changes:
freetype (2.14.1+dfsg-2) unstable; urgency=medium
.
* debian/control: Drop HarfBuzz dependencies (Closes: #1124239).
* debian/rules: Enable dynamic loading of the HarfBuzz library.
* debian/tests/libfreetype-dev: Re-enable static autopkgtest.
Checksums-Sha1:
bb5823931764da208b8b9d6d9419917dbba1a66a 3732 freetype_2.14.1+dfsg-2.dsc
68011a479805647adcd64ac5ca18c8391ed330ee 43904
freetype_2.14.1+dfsg-2.debian.tar.xz
f09c1a1af1dca14d218a5eeaa68f056d4a43796f 5932
freetype_2.14.1+dfsg-2_source.buildinfo
Checksums-Sha256:
806c60dd48017b66791d6ef4eaede96243e1273167fc124b5bd9561e7ba84aca 3732
freetype_2.14.1+dfsg-2.dsc
a7cf2aec15d0f361280e4ab14b50775d24c4869502e80a5506c69ce57b637aa6 43904
freetype_2.14.1+dfsg-2.debian.tar.xz
5e0fbb24a69deeb75af22c42c720997f9290194496900f3ac4fec4cbe2c75edd 5932
freetype_2.14.1+dfsg-2_source.buildinfo
Files:
e811ad2a6dbfe51f7b4d11f9d308115b 3732 libs optional freetype_2.14.1+dfsg-2.dsc
3a0ffb24ca4d0faaaba0dc4bb5e39339 43904 libs optional
freetype_2.14.1+dfsg-2.debian.tar.xz
8cddb932dde5d2e5e85decba10c85c0a 5932 libs optional
freetype_2.14.1+dfsg-2_source.buildinfo
-----BEGIN PGP SIGNATURE-----
iQJDBAEBCgAtFiEEOiCBPKV5RoaMUVIRWsYQdMXoG8QFAmlScx0PHGhtY0BkZWJp
YW4ub3JnAAoJEFrGEHTF6BvEFBIQAJHebESHyDpqK6BKsIJHnJaKjcuwmvY9iHN4
EXDfoZmvR/odoQkrSJm4IrE8aBTor8tqI2yIB6SzEALZikn1XV4DlUkGeLU6hyTu
uXMwrXrsPTFPcG5IWJe5dLxRETIMjSuRJJaMLFIy29AanSo3K3XMWmVCjV57uK36
fzJ/5cEiKEs9eG0XA9C89w1bIsWGGSZ/j/wtTJKnxo4ORqp6tAQFUE0L0cQNCvbR
eicSJT4ajvAS/Y7t6SZ1C7eaVFoTmvGYpttrlMfPdxukfdYTU6cW8cLH1joXU9u1
cNKk8q+rQYGky4/BcTxDbQf/kCt3IaWixlQdgrvuZyJtzAECGPEX+HDjw6+EPH5f
8GU7EZWB62a3wwe3dZsXRE2/bSdgqosCcUTB8CgLKGw6AJb2t+pn6O6ke5PX5y1p
heg2ddb70jF+D/VITwttOAj604rrNmy/LWWrfMXIujgPo0usdOmPc5xziIfqzIuy
8rM+X1grmF+GHPR0BlR6bJ1KdBn7oyQLL8s9HKnywaE1wXx4PCeDAktZKmW8KSai
AihRMV2wxEgNbxB1vKdnIbeBd8TXXfMcbgeMV69P54PMUp/AnHGGxT+znpWy6g1K
rV9gB8dp9uNQ1rp/gj9O9qlz75CpPN2Yvrn66vxj5KpOmrns7tvvoGXvjSpffy6J
EQ1I0k2Z
=PTYZ
-----END PGP SIGNATURE-----
pgp8d6sdl_GFr.pgp
Description: PGP signature
--- End Message ---