Update gtk4 emoji chooser for Unicode 16

Bug #2096803 reported by Jeremy Bícha
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
gtk4 (Ubuntu)
Fix Released
Low
Unassigned
Noble
Fix Released
Low
Jeremy Bícha
Oracular
Fix Released
Low
Jeremy Bícha

Bug Description

Impact
------
Ubuntu has included Google's color emoji font by default for years. Annually, the Unicode Consortium releases a new Unicode standard with new emoji. Internet communication platforms quickly adopt the new emoji and it's important that those emoji also work on the latest Ubuntu release.

https://blog.emojipedia.org/whats-new-in-unicode-16-0/

This is a follow up to LP: #2083629 which updated the color emoji font to support the new emoji.

This updates the GTK4 emoji chooser that can be used in apps like gnome-text-editor

Test Case 1
---------
1. Be sure fonts-noto-color-emoji 2.042-1 is installed. On Ubuntu 24.04 LTS, this is as simple as running
sudo apt install --mark-auto fonts-noto-color-emoji=2.042-1

For Ubuntu 24.10, you can download the .deb from
https://launchpad.net/ubuntu/+source/fonts-noto-color-emoji/2.042-1/+latestbuild/amd64
and then run something like
sudo apt install --mark-auto ./fonts-noto-color-emoji_2.042-1_all.deb

2. After installing the font, restart your computer.

3. Install the updated gtk4 packages.

4. Run gnome-text-editor. Right click in the text area and choose Insert Emoji.

5. Search for fingerprint. No results should be shown.

Test Case 2
------
1. Be sure fonts-noto-color-emoji 2.047 is installed. On Ubuntu 24.10, this font version should already be installed.

By the time this GTK3 update reaches noble-proposed, fonts-noto-color-emoji 2.047 will likely be in noble-updates. If not, install it from noble-proposed instead.

2. Restart your computer.

3. Install the updated gtk4 packages.

4. Run gnome-text-editor. Right click in the text area and choose Insert Emoji.

5. Search for fingerprint. Click the blue fingerprint result. It should be inserted into your document.

What Could Go Wrong
-------------------
This is roughly a backport of the emoji chooser update from GTK 4.16.8. This was split from a full update to 4.16.8 for Oracular to simplify the SRU. Since the upstream GTK developers only supports one stable series of GTK4 at a time, this change was not included in any upstream 4.14.x release (for Ubuntu 24.04 LTS).

This SRU is limited to updating the data used to generate the GTK4 emoji chooser.

If the emoji chooser is broken, people can:
1. Use the GNOME Characters app (installed by default) to choose emoji instead and copy and paste them where needed.
2. Copy and paste emoji from the web, such as from https://emojipedia.org/

This doesn't affect gtk3 apps like gedit (which is not installed by default for Ubuntu 24.04 LTS and 24.10).

Other Info
----------
We are also updating the gtk3 emoji chooser in LP: #2096777

This change could be backported to Ubuntu 22.04 LTS but the Ubuntu Desktop team has limited capacity so we are encouraging people who care about improvements like this to upgrade to Ubuntu 24.04 LTS.

Debian customizes the build in debian/rules using a copy of the binary emojibase data in debian/missing-sources/ to build the emoji chooser data from source (gtk upstream ships the output of that command instead). (Yes, that still isn't ideal because the emojibase data is itself binary data that some day should be built from source in Debian too.)

Therefore to update the emoji chooser data, we only need to update the emojibase copy instead of updating to the new gtk3 release or cherry-picking upstream commits as patches.

Jeremy Bícha (jbicha)
Changed in gtk4 (Ubuntu Noble):
status: New → Triaged
importance: Undecided → Low
Changed in gtk4 (Ubuntu Oracular):
status: New → Triaged
importance: Undecided → Low
Jeremy Bícha (jbicha)
description: updated
Jeremy Bícha (jbicha)
Changed in gtk4 (Ubuntu Oracular):
status: Triaged → In Progress
description: updated
Jeremy Bícha (jbicha)
Changed in gtk4 (Ubuntu Noble):
status: Triaged → In Progress
assignee: nobody → Jeremy Bícha (jbicha)
Changed in gtk4 (Ubuntu Oracular):
assignee: nobody → Jeremy Bícha (jbicha)
Revision history for this message
Timo Aaltonen (tjaalton) wrote : Please test proposed package

Hello Jeremy, or anyone else affected,

Accepted gtk4 into oracular-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/gtk4/4.16.3+ds-0ubuntu2 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, what testing has been performed on the package and change the tag from verification-needed-oracular to verification-done-oracular. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-oracular. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in gtk4 (Ubuntu Oracular):
status: In Progress → Fix Committed
tags: added: verification-needed verification-needed-oracular
Changed in gtk4 (Ubuntu Noble):
status: In Progress → Fix Committed
tags: added: verification-needed-noble
Revision history for this message
Timo Aaltonen (tjaalton) wrote :

Hello Jeremy, or anyone else affected,

Accepted gtk4 into noble-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/gtk4/4.14.2+ds-1ubuntu2 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, what testing has been performed on the package and change the tag from verification-needed-noble to verification-done-noble. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-noble. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Revision history for this message
Ubuntu SRU Bot (ubuntu-sru-bot) wrote : Autopkgtest regression report (gtk4/4.16.3+ds-0ubuntu2)

All autopkgtests for the newly accepted gtk4 (4.16.3+ds-0ubuntu2) for oracular have finished running.
The following regressions have been reported in tests triggered by the package:

gtk+2.0/2.24.33-5ubuntu2 (i386)
libreoffice/4:24.8.4-0ubuntu0.24.10.2 (amd64, arm64, ppc64el, s390x)
mutter/47.0-1ubuntu4.1 (arm64)

Please visit the excuses page listed below and investigate the failures, proceeding afterwards as per the StableReleaseUpdates policy regarding autopkgtest regressions [1].

https://people.canonical.com/~ubuntu-archive/proposed-migration/oracular/update_excuses.html#gtk4

[1] https://wiki.ubuntu.com/StableReleaseUpdates#Autopkgtest_Regressions

Thank you!

Revision history for this message
Ubuntu SRU Bot (ubuntu-sru-bot) wrote : Autopkgtest regression report (gtk4/4.14.2+ds-1ubuntu2)

All autopkgtests for the newly accepted gtk4 (4.14.2+ds-1ubuntu2) for noble have finished running.
The following regressions have been reported in tests triggered by the package:

libreoffice/4:24.2.7-0ubuntu0.24.04.2 (armhf, s390x)
libreoffice/unknown (arm64, ppc64el)

Please visit the excuses page listed below and investigate the failures, proceeding afterwards as per the StableReleaseUpdates policy regarding autopkgtest regressions [1].

https://people.canonical.com/~ubuntu-archive/proposed-migration/noble/update_excuses.html#gtk4

[1] https://wiki.ubuntu.com/StableReleaseUpdates#Autopkgtest_Regressions

Thank you!

Revision history for this message
Alessandro Astone (aleasto) wrote :

On Ubuntu 24.04.2 LTS:
Installed version 4.14.2+ds-1ubuntu2 of libgtk-4-common, gir1.2-gtk-4.0, libgtk-4-1, libgtk-4-bin, libgtk-4-media-gstreamer

Installed fonts-noto-color-emoji=2.042-1 and verified Test Case 1: no fingerprint emoji is listed
Installed fonts-noto-color-emoji=2.047-0ubuntu0.24.04.1 and verified Test Case 2: fingerprint emoji is listed and can be inserted

tags: added: verification-done-noble
removed: verification-needed-noble
Revision history for this message
Alessandro Astone (aleasto) wrote :

On Ubuntu 24.10:
Installed version 4.16.3+ds-0ubuntu2 of libgtk-4-common, gir1.2-gtk-4.0, libgtk-4-1, gtk-update-icon-cache, libgtk-4-bin, libgtk-4-media-gstreamer, libgtk-4-dev, libgtk-4-doc

Installed fonts-noto-color-emoji=2.042-1 and verified Test Case 1: no fingerprint emoji is listed
Installed fonts-noto-color-emoji=2.047-1 and verified Test Case 2: fingerprint emoji is listed and can be inserted

tags: added: verification-done verification-done-oracular
removed: verification-needed verification-needed-oracular
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package gtk4 - 4.16.3+ds-0ubuntu2

---------------
gtk4 (4.16.3+ds-0ubuntu2) oracular; urgency=medium

  * missing-sources: Update emojibase to match what was done in gtk 4.16.8
    to update the emoji chooser for Unicode 16 (LP: #2096803)

 -- Jeremy Bícha <email address hidden> Mon, 27 Jan 2025 16:59:17 -0500

Changed in gtk4 (Ubuntu Oracular):
status: Fix Committed → Fix Released
Revision history for this message
Andreas Hasenack (ahasenack) wrote : Update Released

The verification of the Stable Release Update for gtk4 has completed successfully and the package is now being released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package gtk4 - 4.14.2+ds-1ubuntu2

---------------
gtk4 (4.14.2+ds-1ubuntu2) noble; urgency=medium

  [ Jeremy Bícha ]
  * missing-sources: Update emojibase to match what was done in gtk 4.16.8
    to update the emoji chooser for Unicode 16 (LP: #2096803)

 -- Jeremy Bícha <email address hidden> Wed, 29 Jan 2025 17:08:55 -0500

Changed in gtk4 (Ubuntu Noble):
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.