mirror of
https://github.com/absadiki/whatsapp-msgstore-viewer.git
synced 2026-04-27 04:45:57 +03:00
[GH-ISSUE #24] Kivy 2.3.1 Compatibility on Fedora (Python 3.14) #18
Labels
No labels
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/whatsapp-msgstore-viewer#18
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @dksinden on GitHub (Jan 10, 2026).
Original GitHub issue: https://github.com/absadiki/whatsapp-msgstore-viewer/issues/24
In a similar fashion to Ubuntu for Fedora you will need a workaround, also patching for Python 3.14
On Fedora, you must install the following development libraries to compile Kivy and Pygame successfully:
sudo dnf install -y SDL2-devel SDL2_image-devel SDL2_mixer-devel SDL2_ttf-devel python3-devel mesa-libGL-devel
Install Python Packages
pip install Kivy==2.3.1 pygame
Python 3.14 Patch
You must patch kivy/lang/parser.py to replace the removed ast.Str class with ast.Constant.
File Location: ~/.local/lib/python3.14/site-packages/kivy/lang/parser.py (or your virtualenv path).
The Fix: Locate the get_names_from_expression method and replace the ast.Str check:
OLD (Incompatible)
if isinstance(n, ast.Str):
yield from cls.get_names_from_expression(n.s)
NEW (Recommended Fix)
if isinstance(n, ast.Constant) and isinstance(n.value, str):
yield from cls.get_names_from_expression(n.value)
@absadiki commented on GitHub (Jan 13, 2026):
Thanks @dksinden for the detailed report and workaround, much appreciated 👍
Please feel free to submit a PR that adds a reference to this issue in the README. That would make it easier for others to find.