MightyCreak / diffuse

Diffuse is a graphical tool for comparing and merging text files. It can retrieve files for comparison from Bazaar, CVS, Darcs, Git, Mercurial, Monotone, RCS, Subversion, and SVK repositories.
http://mightycreak.github.io/diffuse/
GNU General Public License v2.0
260 stars 46 forks source link

diffuse fails to start under Fedora 36 beta (gtk 42) #157

Closed zuzzurro closed 2 years ago

zuzzurro commented 2 years ago

https://bugzilla.redhat.com/show_bug.cgi?id=2068442

It seems to be linked to the latest gtk 42 release and the accompanying adwaita lib. All the information I gathered is in the bugzilla ticket.

MightyCreak commented 2 years ago

I think this is the same issue as #146, which turned out to be a GNOME issue that has been fixed with the MR https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/4562. Hopefully, Fedora 36 will upgrade the GTK packages before the official release.

Closing this issue, feel free to reopen it if the problem persists.

bongochong commented 2 years ago

Chiming in to say that I just attempted to run diffuse under a Fedora 36 VM, and this is definitely still an issue. Same thing is actually happening with a few different applications: https://bugzilla.redhat.com/buglist.cgi?bug_status=__open__&content=gtk-icon-theme-error&order=Importance&product=Fedora&query_format=specific Fedora clearly has not merged in that fix, but if you explore bug reports on GNOME's gitlab issue tracker, it appears the issue could be a little more complicated. Lingering bugs like this one are why I always wait at least a few weeks before doing a release upgrade. @MightyCreak you might want to explore the discussion about this same problem with a different GTK3 application (Pitivi): https://gitlab.gnome.org/GNOME/pitivi/-/issues/2600 as there might be a fix you can implement in the mean time.

bongochong commented 2 years ago

P.S. This appears to be how the Pitivi maintainer fixed the issue with his application: https://gitlab.gnome.org/GNOME/pitivi/-/commit/ac64d971fd47f01acedc7076416da74115348aab

P.P.S. This also seems relevant: https://gitlab.gnome.org/GNOME/gtk/-/issues/4754 Man is GTK land getting messy.

bongochong commented 2 years ago

Phew! Figured out a quick fix for now. If gnome-icon-theme and gnome-icon-theme-legacy are installed on Fedora 36 (w/GNOME), Diffuse starts without a hitch. Am adding them to the dependency/requires list of the .spec file and uploading new builds today.

MightyCreak commented 2 years ago

Thank you for all this investigation.

The issue you point out (https://gitlab.gnome.org/GNOME/gtk/-/issues/4754) has actually at least been partially fixed by the MR I referenced earlier (https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/4562), but it seems to have been done for GTK 4... I don't really understand GTK's release process...

From what I can see, GTK 3.24.33 seems to be the release having the fix: the 3.24 branch: https://gitlab.gnome.org/GNOME/gtk/-/commits/gtk-3-24, and the 3.24.33 commit that depends on the fix we need: https://gitlab.gnome.org/GNOME/gtk/-/commit/8ff9b2f83ff491cbfcbf9b30c706bd917679e7cc

From what I can see in the GTK 3.24 branch history, the MR we need is still not in an official release: https://gitlab.gnome.org/GNOME/gtk/-/commits/gtk-3-24

This commit: image

Is more recent than this commit: image

So it should be in the next release, whether it is 3.24.34 or 3.25.0.

bongochong commented 2 years ago

Thanks a bunch @MightyCreak. In the future, for new releases of Fedora, I'll always make sure to test Diffuse under GNOME. Cinnamon is my main DE, and I move between lightweight DEs like LXQt and Xfce on my other PC, which is why it was so easy for me to miss this issue at the start.