Add PyInstaller packaging for Windows and Linux

- label_app.spec: one-file build bundling fonts, emoji data, ttkbootstrap
  themes and (on Windows) fribidi.dll so Pillow can shape emoji sequences
- build-windows.ps1 helper; assets/icon.ico app icon
- Fonts resolved from assets/fonts first, then system dirs, so the app
  runs from a bundle or a checkout on any OS
- Bump Pillow pin to 12.3
This commit is contained in:
Gracious
2026-09-21 08:38:00 +01:00
parent 41b4d4ce64
commit 42221341d5
17 changed files with 902 additions and 6 deletions
+4
View File
@@ -0,0 +1,4 @@
`fribidi.dll` is GNU FriBidi 1.0.16 (LGPL 2.1, see LICENSE-fribidi.txt), taken from the
MSYS2 package `mingw-w64-x86_64-fribidi`. Pillow's Windows wheels link libraqm but load
FriBidi dynamically; without this DLL, multi-codepoint emoji (ZWJ sequences, flags, skin
tones) render as separate glyphs on Windows. The PyInstaller spec bundles it automatically.