Rebase onto master and address packaging feedback

This commit is contained in:
2026-10-20 13:39:18 -06:00
parent 0a4dd938cb
commit 6023c51ee6
12 changed files with 49 additions and 19 deletions
+11 -5
View File
@@ -5,10 +5,14 @@ Unicode Emoji 17.0. It is vendored from Debian's
`fonts-noto-color-emoji` 2.051 package, built from the corresponding
Google Noto Emoji release.
Every GTK build installs this exact file: Windows (installer and portable
build files), AppImage, Flatpak and native Meson/RPM builds. It is loaded
into a private Pango/FreeType font map as `ZoiteChat Emoji`; an older system
Noto font cannot replace it. No font is installed globally on Windows.
By default, GTK builds install this exact file, including Windows
(installer and portable builds), AppImage, Flatpak, and native Meson/RPM.
Meson packagers can set `-Dinstall-emoji-font=false` to omit the bundled
font and its installed notices and use system emoji fonts instead. An
explicit `ZOITECHAT_EMOJI_FONT` path still enables the private font map
in such builds. With the bundled font, it is registered privately as
`ZoiteChat Emoji`; an older system Noto font cannot replace it. No font
is installed globally on Windows.
Chat windows and the emoji picker share this map. Fontconfig still loads
system fonts and configuration for ordinary text, and the configured text
@@ -29,7 +33,9 @@ directory; Windows resolves it relative to the executable. AppImage sets
ZOITECHAT_EMOJI_FONT="$PWD/data/fonts/NotoColorEmoji.ttf" build/src/fe-gtk/zoitechat
```
A missing/unloadable file logs a warning and retains system-font fallback.
An unexpectedly missing or unloadable bundled font logs a warning and retains
system-font fallback. When installation is disabled deliberately, fallback is
quiet unless an explicit `ZOITECHAT_EMOJI_FONT` override is invalid.
CI verifies the installed copy and tests catalog/font coverage; AppImage and
Windows also run the interactive picker regression tests. Native themes,
DPI and different Pango/Cairo versions can still affect pixel-level output.
+11 -9
View File
@@ -1,13 +1,15 @@
emoji_font_dir = join_paths(get_option('datadir'), 'fonts', 'zoitechat')
emoji_font_doc_dir = join_paths(get_option('datadir'), 'doc', 'zoitechat', 'fonts')
install_data(
'NotoColorEmoji.ttf',
install_dir: emoji_font_dir,
)
if get_option('install-emoji-font')
install_data(
'NotoColorEmoji.ttf',
install_dir: emoji_font_dir,
)
install_data(
'OFL.txt',
'README.md',
install_dir: emoji_font_doc_dir,
)
install_data(
'OFL.txt',
'README.md',
install_dir: emoji_font_doc_dir,
)
endif