Hacker News new | ask | show | jobs
by dhx 1955 days ago
Up-top-date Fedora Rawhide shows:

dnf repoquery --whatdepends gtk4-0:4.1.2-1.fc35.x86_64

breeze-gtk-gtk4-0:5.21.3-1.fc35.noarch fcitx5-gtk4-0:5.0.4-1.fc35.x86_64 gnome-chess-0:40~alpha-1.fc35.x86_64 gnome-extensions-app-0:40.0~rc-1.fc35.x86_64 gnome-shell-0:40.0-1.fc35.x86_64 gtk4-devel-0:4.1.2-1.fc35.x86_64 ibus-gtk4-0:1.5.24-3.fc35.x86_64

dnf repoquery --whatdepends gtk3-0:3.24.27-1.fc35.x86_64

... everything else (100's of packages)

Software/package version numbers are just a marketing name. It's the ABI version number on the library (e.g. libgtk4.so.1 vs libgtk4.so.0) that needs to be changed if functions or parameters to functions in the original ABI in the older libgtk4.so.0 library are modified or deleted. It's very common to have two libraries of the same name being used side-by-side with some applications compiled against a newer ABI, and other applications compiled against an older ABI.

The problem with Gnome development is that library ABIs are just one of many interfaces used. There are also GSettings/dconf interfaces, D-Bus interfaces, file formats, etc on top of the usual conflicts in package dependencies (e.g. two packages wanting to write two different unversioned files to disk).