Diffoscope – In-depth comparison of files, archives, and directories
diffoscope.org
diffoscope.org
For a few weeks, I simply iterated between building the firmware, using diffoscope to diff the new build against a previous build to find what files changed and where, fix buildroot packages to eliminate these file changes whereever possible, lather-rinse-repeat.
In the end I was able to reduce our OTA update sizes to a typical 20-50KB (base, compressed firmware image as 30MB).
Fun times!
What was the original size before you started this process?
Changes vary from from forgetting to update an in-source version to tagging the wrong commit to fixing file metadata (file owner in the tarball).
I have been using beyond compare for this sort of thing for longer than i can remember though.
Edit: actually, bc has different features.
https://gitlab.gnome.org/GNOME/meld/
There is a GitHub repo of it that is now deprecated, this is apparently the official repo. I’m curious how these stack up to other, similar tooling, but for now I’m starting to wonder how much work it would take to modify GNOME Sushi [1] to call one of these utilities when two items are selected in the GNOME Nautilus file manager, and go one step beyond macOS Quick Look (though we would still be missing the Quick Look powerful editing capabilities).
[1] https://www.omgubuntu.co.uk/gnome-sushi-mac-quick-for-ubuntu
https://gitlab.com/dehesselle/meld_macos/-/releases (very new, discussed in the official gitlab meld repo issue https://gitlab.gnome.org/GNOME/meld/-/issues/804)
https://gist.github.com/syneart/4a8724cd479d31f0f742f499f807... for the older but more integrated Meld for MacOS
I love meld, makes my life so much easier :3
EDIT: diffoscope got unstuck after some minutes, but I still prefer the default GUI viewer from meld.